Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- /* Запрос № 1 25.09.2023 17:02:42 Алиас Sov */
- CREATE TABLE #FltDoc(
- Code INT NULL,
- KeyGroup INT NULL,
- IsBill TINYINT NULL ,
- numreg CHAR (10) NULL ,
- datereg SMALLDATETIME NULL ,
- sumdoc MONEY NULL ,
- CodePay INT NULL ,
- SprPay TINYINT NULL ,
- CodeType INT NULL ,
- FlgDir TINYINT NULL
- )
- /* Запрос № 2 25.09.2023 17:02:42 Алиас Sov */
- CREATE TABLE #TypeDoc(
- CodeType INT NULL ,
- Shifr VARCHAR(8) NULL ,
- fldname VARCHAR(70) NULL ,
- fldlabel VARCHAR(70) NULL ,
- FlgDir TINYINT NULL
- )
- /* Запрос № 3 25.09.2023 17:02:42 Алиас Sov */
- INSERT #FltDoc(
- Code,KeyGroup,IsBill,numreg,datereg,sumdoc,
- CodeType,FlgDir,CodePay,SprPay
- ) SELECT
- keybill,0,
- 1,numreg,datereg,
- ISNULL(ROUND(SumPrc,2),0),
- CodeType,
- ISNULL(FlgDir,0),
- CodePay=CASE FlgDir WHEN 0 THEN CodePay ELSE coderec END,
- SprPay=CASE FlgDir WHEN 0 THEN SprPay ELSE sprrec END
- FROM bill Bil
- WHERE datereg>='09/01/2015'
- AND datereg<='09/30/2023'
- AND Bil.FlgDir=0
- /* Запрос № 4 25.09.2023 17:02:42 Алиас Sov */
- INSERT #FltDoc(
- Code,KeyGroup,IsBill,numreg,datereg,sumdoc,
- CodeType,FlgDir,CodePay,SprPay
- ) SELECT
- keypay,KeyGroup,
- 0,numreg,datereg,
- ISNULL(ROUND(SumPrc,2),0),
- CodeType,
- 1-ISNULL(FlgDir,0),
- CodePay=CASE FlgDir WHEN 0 THEN CodePay ELSE coderec END,
- SprPay=CASE FlgDir WHEN 0 THEN SprPay ELSE sprrec END
- FROM Pay Pay
- WHERE datereg>='09/01/2015'
- AND datereg<='09/30/2023'
- AND Pay.FlgDir=0
- /* Запрос № 5 25.09.2023 17:02:42 Алиас Sov */
- INSERT #TypeDoc(
- CodeType,
- FlgDir
- ) SELECT DISTINCT
- CodeType,
- FlgDir
- FROM #FltDoc
- /* Запрос № 6 25.09.2023 17:02:42 Алиас Sov */
- UPDATE #TypeDoc SET
- Shifr=Ref.Shifr
- FROM #TypeDoc Tmp,reference Ref
- WHERE Ref.Code=Tmp.CodeType
- /* Запрос № 7 25.09.2023 17:02:42 Алиас Sov */
- UPDATE #TypeDoc SET
- fldname =(CASE FlgDir
- WHEN 0 THEN 'Db'+CONVERT(VARCHAR(27),ISNULL(CodeType,0))
- ELSE 'Cr'+CONVERT(VARCHAR(27),ISNULL(CodeType,0)) END)
- ,fldlabel =(CASE FlgDir
- WHEN 0 THEN 'Дб '+RTRIM(ISNULL(Shifr,''))+''
- ELSE 'Кр '+RTRIM(ISNULL(Shifr,''))+'' END)
- /* Запрос № 8 25.09.2023 17:02:42 Алиас Sov */
- SELECT fldname
- FROM #TypeDoc
- WHERE FlgDir=0
- ORDER BY Shifr
- /* Запрос № 9 25.09.2023 17:02:42 Алиас Sov */
- SELECT fldname
- FROM #TypeDoc
- WHERE FlgDir=1
- ORDER BY Shifr
- /* Запрос № 10 25.09.2023 17:02:42 Алиас Sov */
- CREATE TABLE #report(
- no INT NULL,
- CodePay INT NULL ,
- SprPay TINYINT NULL,
- DbBeg MONEY NULL,
- CrBeg MONEY NULL,
- Db178 MONEY NULL ,
- DbObor MONEY NULL ,
- Cr1245 MONEY NULL ,
- Cr662 MONEY NULL ,
- CrObor MONEY NULL ,
- DbEnd MONEY NULL,
- CrEnd MONEY NULL
- )
- /* Запрос № 11 25.09.2023 17:02:42 Алиас Sov */
- INSERT #report(no,
- CodePay,SprPay
- ) SELECT DISTINCT
- 1,CodePay,SprPay
- FROM #FltDoc
- /* Запрос № 12 25.09.2023 17:02:42 Алиас Sov */
- CREATE TABLE #saldo(
- dbsum MONEY NULL ,
- crsum MONEY NULL ,
- CodePay INT NULL ,
- SprPay TINYINT NULL ,
- typesaldo TINYINT NULL
- )
- /* Запрос № 13 25.09.2023 17:02:42 Алиас Sov */
- INSERT #saldo(
- typesaldo,SprPay,CodePay,dbsum
- ) SELECT 1,
- SprPay,CodePay,SUM(ROUND(SumPrc,2))
- FROM bill Bil
- WHERE datereg<'09/01/2015'
- AND Bil.FlgDir=0
- GROUP BY SprPay,CodePay
- /* Запрос № 14 25.09.2023 17:02:44 Алиас Sov */
- INSERT #saldo(
- typesaldo,SprPay,CodePay,dbsum
- ) SELECT 1,
- SprPay,CodePay,-SUM(ROUND(SumPrc,2))
- FROM Pay Pay
- WHERE datereg<'09/01/2015'
- AND Pay.FlgDir=0
- GROUP BY SprPay,CodePay
- /* Запрос № 15 25.09.2023 17:02:44 Алиас Sov */
- INSERT #saldo(
- typesaldo,SprPay,CodePay,dbsum
- ) SELECT
- 2,SprPay,CodePay,SUM(dbsum)
- FROM #saldo
- GROUP BY SprPay,CodePay
- /* Запрос № 16 25.09.2023 17:02:44 Алиас Sov */
- DELETE #saldo
- WHERE typesaldo<>2
- /* Запрос № 17 25.09.2023 17:02:45 Алиас Sov */
- UPDATE #saldo SET
- dbsum=CASE WHEN ISNULL(dbsum,0)>=0 THEN dbsum ELSE NULL END,
- crsum=CASE WHEN ISNULL(dbsum,0)<0 THEN -dbsum ELSE NULL END
- /* Запрос № 18 25.09.2023 17:02:45 Алиас Sov */
- UPDATE #report SET
- DbBeg=dbsum,
- CrBeg=crsum
- FROM #saldo
- WHERE #report.SprPay=#saldo.SprPay
- AND #report.CodePay=#saldo.CodePay
- /* Запрос № 19 25.09.2023 17:02:45 Алиас Sov */
- DELETE #saldo
- FROM #report
- WHERE #report.SprPay=#saldo.SprPay
- AND #report.CodePay=#saldo.CodePay
- /* Запрос № 20 25.09.2023 17:02:45 Алиас Sov */
- INSERT #report(
- DbBeg,CrBeg,no,SprPay,CodePay
- ) SELECT
- dbsum,crsum,1,SprPay,CodePay
- FROM #saldo
- /* Запрос № 21 25.09.2023 17:02:45 Алиас Sov */
- DROP TABLE #saldo
- /* Запрос № 22 25.09.2023 17:02:45 Алиас Sov */
- INSERT #report(no) VALUES(2)
- /* Запрос № 23 25.09.2023 17:02:45 Алиас Sov */
- UPDATE Dst SET
- DbBeg=(SELECT SUM(Rep.DbBeg) FROM #report Rep
- WHERE Rep.no<>2)
- FROM #report Dst
- WHERE Dst.no=2
- /* Запрос № 24 25.09.2023 17:02:45 Алиас Sov */
- UPDATE Dst SET
- CrBeg=(SELECT SUM(Rep.CrBeg) FROM #report Rep
- WHERE Rep.no<>2)
- FROM #report Dst
- WHERE Dst.no=2
- /* Запрос № 25 25.09.2023 17:02:45 Алиас Sov */
- SELECT
- CodeType,fldname
- FROM #TypeDoc
- WHERE FlgDir=0
- /* Запрос № 26 25.09.2023 17:02:45 Алиас Sov */
- UPDATE #report SET
- Db178=
- (SELECT SUM(sumdoc)
- FROM #FltDoc
- WHERE #FltDoc.FlgDir=0
- AND #FltDoc.CodePay=#report.CodePay
- AND #FltDoc.SprPay=#report.SprPay
- AND #FltDoc.CodeType=178
- AND no<>2)
- /* Запрос № 27 25.09.2023 17:02:45 Алиас Sov */
- UPDATE Dst SET
- Db178=(SELECT SUM(Rep.Db178) FROM #report Rep
- WHERE Rep.no<>2)
- FROM #report Dst
- WHERE Dst.no=2
- /* Запрос № 28 25.09.2023 17:02:45 Алиас Sov */
- UPDATE #report
- SET DbObor=
- (SELECT SUM(sumdoc) FROM #FltDoc
- WHERE #FltDoc.FlgDir=0
- AND #FltDoc.CodePay=#report.CodePay
- AND #FltDoc.SprPay=#report.SprPay
- AND no<>2)
- /* Запрос № 29 25.09.2023 17:02:45 Алиас Sov */
- SELECT
- CodeType,fldname
- FROM #TypeDoc
- WHERE FlgDir=1
- /* Запрос № 30 25.09.2023 17:02:45 Алиас Sov */
- UPDATE #report SET
- Cr662=
- (SELECT SUM(sumdoc)
- FROM #FltDoc
- WHERE #FltDoc.FlgDir=1
- AND #FltDoc.CodePay=#report.CodePay
- AND #FltDoc.SprPay=#report.SprPay
- AND #FltDoc.CodeType=662
- AND no<>2)
- /* Запрос № 31 25.09.2023 17:02:46 Алиас Sov */
- UPDATE Dst SET
- Cr662=(SELECT SUM(Rep.Cr662) FROM #report Rep
- WHERE Rep.no<>2)
- FROM #report Dst
- WHERE Dst.no=2
- /* Запрос № 32 25.09.2023 17:02:46 Алиас Sov */
- UPDATE #report SET
- Cr1245=
- (SELECT SUM(sumdoc)
- FROM #FltDoc
- WHERE #FltDoc.FlgDir=1
- AND #FltDoc.CodePay=#report.CodePay
- AND #FltDoc.SprPay=#report.SprPay
- AND #FltDoc.CodeType=1245
- AND no<>2)
- /* Запрос № 33 25.09.2023 17:02:46 Алиас Sov */
- UPDATE Dst SET
- Cr1245=(SELECT SUM(Rep.Cr1245) FROM #report Rep
- WHERE Rep.no<>2)
- FROM #report Dst
- WHERE Dst.no=2
- /* Запрос № 34 25.09.2023 17:02:46 Алиас Sov */
- UPDATE #report
- SET CrObor=
- (SELECT SUM(sumdoc) FROM #FltDoc
- WHERE #FltDoc.FlgDir=1
- AND #FltDoc.CodePay=#report.CodePay
- AND #FltDoc.SprPay=#report.SprPay
- AND no<>2)
- /* Запрос № 35 25.09.2023 17:02:46 Алиас Sov */
- UPDATE Dst SET
- DbObor=(SELECT SUM(Rep.DbObor) FROM #report Rep
- WHERE Rep.no<>2)
- FROM #report Dst
- WHERE Dst.no=2
- /* Запрос № 36 25.09.2023 17:02:46 Алиас Sov */
- UPDATE Dst SET
- CrObor=(SELECT SUM(Rep.CrObor) FROM #report Rep
- WHERE Rep.no<>2)
- FROM #report Dst
- WHERE Dst.no=2
- /* Запрос № 37 25.09.2023 17:02:46 Алиас Sov */
- UPDATE #report SET
- DbEnd=
- ISNULL(DbBeg,0)-ISNULL(CrBeg,0)+
- ISNULL(DbObor,0)-ISNULL(CrObor,0)
- WHERE no<>2
- /* Запрос № 38 25.09.2023 17:02:46 Алиас Sov */
- UPDATE #report SET
- DbEnd=CASE WHEN DbEnd>0 THEN DbEnd ELSE NULL END,
- CrEnd=CASE WHEN DbEnd<0 THEN -DbEnd ELSE NULL END
- WHERE no<>2
- /* Запрос № 39 25.09.2023 17:02:46 Алиас Sov */
- UPDATE Dst SET
- DbEnd=(SELECT SUM(Rep.DbEnd) FROM #report Rep
- WHERE Rep.no<>2)
- FROM #report Dst
- WHERE Dst.no=2
- /* Запрос № 40 25.09.2023 17:02:46 Алиас Sov */
- UPDATE Dst SET
- CrEnd=(SELECT SUM(Rep.CrEnd) FROM #report Rep
- WHERE Rep.no<>2)
- FROM #report Dst
- WHERE Dst.no=2
- /* Запрос № 41 25.09.2023 17:02:46 Алиас Sov */
- DELETE #report
- WHERE no=1
- AND ROUND(ISNULL(DbObor,0),2)=0
- AND ROUND(ISNULL(CrObor,0),2)=0
- AND ROUND(ISNULL(DbBeg,0),2)=0
- AND ROUND(ISNULL(CrBeg,0),2)=0
- AND ROUND(ISNULL(DbEnd,0),2)=0
- AND ROUND(ISNULL(CrEnd,0),2)=0
- /* Запрос № 42 25.09.2023 17:02:46 Алиас Sov */
- SELECT
- Kor.Shifr,Kor.Name Korr,Tmp.*
- FROM #report Tmp
- LEFT OUTER JOIN AllRef Kor ON Tmp.SprPay=Kor.CodeSpr AND Tmp.CodePay=Kor.Code
- ORDER BY no,Kor.Shifr,Korr
- /* Запрос № 43 25.09.2023 17:02:47 Алиас Sov */
- SELECT fldlabel FROM #TypeDoc
- WHERE fldname='Shifr'
- /* Запрос № 44 25.09.2023 17:02:47 Алиас Sov */
- SELECT fldlabel FROM #TypeDoc
- WHERE fldname='Korr'
- /* Запрос № 45 25.09.2023 17:02:47 Алиас Sov */
- SELECT fldlabel FROM #TypeDoc
- WHERE fldname='no'
- /* Запрос № 46 25.09.2023 17:02:47 Алиас Sov */
- SELECT fldlabel FROM #TypeDoc
- WHERE fldname='CodePay'
- /* Запрос № 47 25.09.2023 17:02:47 Алиас Sov */
- SELECT fldlabel FROM #TypeDoc
- WHERE fldname='SprPay'
- /* Запрос № 48 25.09.2023 17:02:47 Алиас Sov */
- SELECT fldlabel FROM #TypeDoc
- WHERE fldname='DbBeg'
- /* Запрос № 49 25.09.2023 17:02:47 Алиас Sov */
- SELECT fldlabel FROM #TypeDoc
- WHERE fldname='CrBeg'
- /* Запрос № 50 25.09.2023 17:02:47 Алиас Sov */
- SELECT fldlabel FROM #TypeDoc
- WHERE fldname='Db178'
- /* Запрос № 51 25.09.2023 17:02:47 Алиас Sov */
- SELECT fldlabel FROM #TypeDoc
- WHERE fldname='DbObor'
- /* Запрос № 52 25.09.2023 17:02:47 Алиас Sov */
- SELECT fldlabel FROM #TypeDoc
- WHERE fldname='Cr1245'
- /* Запрос № 53 25.09.2023 17:02:47 Алиас Sov */
- SELECT fldlabel FROM #TypeDoc
- WHERE fldname='Cr662'
- /* Запрос № 54 25.09.2023 17:02:47 Алиас Sov */
- SELECT fldlabel FROM #TypeDoc
- WHERE fldname='CrObor'
- /* Запрос № 55 25.09.2023 17:02:47 Алиас Sov */
- SELECT fldlabel FROM #TypeDoc
- WHERE fldname='DbEnd'
- /* Запрос № 56 25.09.2023 17:02:47 Алиас Sov */
- SELECT fldlabel FROM #TypeDoc
- WHERE fldname='CrEnd'
- /* Запрос № 57 25.09.2023 17:02:47 Алиас Sov */
- DROP TABLE #report
- /* Запрос № 58 25.09.2023 17:02:47 Алиас Sov */
- DROP TABLE #TypeDoc
- /* Запрос № 59 25.09.2023 17:02:47 Алиас Sov */
- DROP TABLE #FltDoc
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement