IF EXISTS (SELECT * FROM sys.objects WHERE object_id = OBJECT_ID(N'[dbo].[STPGridList_CheckIn_behesabByDate]') AND type in (N'P', N'PC')) DROP PROCEDURE [dbo].[STPGridList_CheckIn_behesabByDate] GO set ANSI_NULLS ON set QUOTED_IDENTIFIER ON GO create PROCEDURE [dbo].[STPGridList_CheckIn_behesabByDate] @Startdate char(8), @Enddate char(8), @BankCode int AS SELECT CheckInTBL.SerialNo, CheckInTBL.Comment AS CheckComment, CheckInTBL.ACCNo, CheckInTBL.CheckDate, CheckInTBL.BankName, CASE WHEN [VW_LinkTo_Account&Title].linkto IS NULL THEN codemngdwntbl.Title ELSE NULL END AS BankToName, FunDocumentDetail_ByAcc_Archive_1.DetailCode, FunDocumentDetail_ByAcc_Archive_1.AmmountIn, FunDocumentDetail_ByAcc_Archive_1.UserRowNo, FunDocumentDetail_ByAcc_Archive_1.DocDate, FunDocumentDetail_ByAcc_Archive_1.Comment, FunDocumentDetail_ByAcc_Archive_1.ArchiveName, FunDocumentDetail_ByAcc_Archive_1.SysDate, CodeMNGDWNTbl_1.Title AS Snd_Title, [VW_LinkTo_Account&Title].LinkToTitle, Users.UName, CodeMNGUPTbl.Title AS UpTitle, CodeMNGDWNTbl_2.Title AS Belongto, FunDocumentDetail_ByAcc_Archive_1.Cur2Amount, FunDocumentDetail_ByAcc_Archive_1.Cur1Amount, FunDocumentDetail_ByAcc_Archive_1.Cur3Amount, dbo.FunMiladiDate(FunDocumentDetail_ByAcc_Archive_1.DocDate) AS DocMiladiDate, dbo.FunMiladiDate(CheckInTBL.CheckDate) AS CheckMiladiDate, CheckInTBL.BeHesabDate FROM CodeMNGDWNTbl AS CodeMNGDWNTbl_1 RIGHT OUTER JOIN CodeMNGDWNTbl AS CodeMNGDWNTbl_2 RIGHT OUTER JOIN CodeMNGUPTbl RIGHT OUTER JOIN dbo.FunDocumentDetail_ByAcc_Archive_FromDate(3, NULL, '') AS FunDocumentDetail_ByAcc_Archive_1 INNER JOIN CheckInTBL ON FunDocumentDetail_ByAcc_Archive_1.DetailCode = CheckInTBL.FK_DocSysCode LEFT OUTER JOIN [VW_LinkTo_Account&Title] ON CheckInTBL.FK_DocSysCode = [VW_LinkTo_Account&Title].LinkFrom ON CodeMNGUPTbl.AccountSysCode0 = [VW_LinkTo_Account&Title].FK_AccountSysCode0 ON CodeMNGDWNTbl_2.AccountSysCode = CheckInTBL.Belongto LEFT OUTER JOIN DocTbl INNER JOIN Users ON DocTbl.UserIDNO = Users.UID ON FunDocumentDetail_ByAcc_Archive_1.DocCode = DocTbl.SysCode LEFT OUTER JOIN CodeMNGDWNTbl AS CodeMNGDWNTbl ON CheckInTBL.BankAccountCode = CodeMNGDWNTbl.AccountSysCode ON CodeMNGDWNTbl_1.AccountSysCode = FunDocumentDetail_ByAcc_Archive_1.SndFk_AccountSyscode WHERE (NOT (CASE WHEN [VW_LinkTo_Account&Title].linkto IS NULL THEN codemngdwntbl.Title ELSE NULL END IS NULL)) AND (CheckInTBL.BeHesabDate >= @Startdate) AND (CheckInTBL.BeHesabDate <= @Enddate) AND (CheckInTBL.BankAccountCode = @BankCode) ORDER BY CheckInTBL.CheckDate -------------------------------------------------------------------------------------------------------------- GO ALTER PROCEDURE [dbo].[STPCheckInToBank] @docDetailCode int, @BankAccountCode Int, @IgnorDuplicate int AS /* find out if has bankto befor ------------------- */ if @IgnorDuplicate=0 begin if exists (SELECT FK_DocSysCode FROM CheckInTBL WHERE (FK_DocSysCode = @DocDetailCode) AND (BankAccountCode IS NOT NULL) and(BankAccountCode <> @BankAccountCode)) begin raiserror(50501,16,1) --pass throw chack has another bank return 1 end end --If check used before if exists(SELECT DocDetailTbl.Syscode, DocLinkTBL.FK_SndDocDetail FROM DocLinkTBL INNER JOIN DocDetailTbl ON DocLinkTBL.FK_FstDocDetail = DocDetailTbl.Syscode WHERE (NOT (DocLinkTBL.FK_SndDocDetail IS NULL)) AND (DocDetailTbl.Syscode = @docDetailCode)) begin raiserror(50502,16,1) --Check Is Used Before return 1 end UPDATE CheckInTBL SET BankAccountCode = @BankAccountCode,BeHesabDate=[dbo].[FunSunDate](GETDATE()) WHERE (FK_DocSysCode = @DocDetailCode) RETURN ---------------------------------------------------------------------------- GO IF EXISTS (SELECT * FROM sys.objects WHERE object_id = OBJECT_ID(N'[dbo].[STPAddCheckInForPrint]') AND type in (N'P', N'PC')) DROP PROCEDURE [dbo].[STPAddCheckInForPrint] GO set ANSI_NULLS ON set QUOTED_IDENTIFIER ON GO create PROCEDURE [dbo].[STPAddCheckInForPrint] @SerialNo bigint, @BankName nvarchar(1000)='', @CheckDate nvarchar(1000)='' , @ACCNo nvarchar(1000)='', @Amount Money, @Radif int AS if @Radif=1 Delete From CheckInsForPrintTBL INSERT INTO CheckInsForPrintTBL (SerialNo, ACCNo, CheckDate, BankName,Amount,Radif) VALUES (@SerialNo,@ACCNo,@CheckDate,@BankName,@Amount,@Radif)