SELECT VT. as [ $.], VT. as [ $.],
VT. as [ $.], VT. as [ $.],
_.IDDOC as [ $],_.IDDOCDEF as _,
.parentid AS [_ $_],
SUM(VT.NachOstS) AS NachOstS,SUM(VT.NachOstK) AS NachOstK,SUM(VT.PrihodS) AS PrihodS,SUM(VT.PrihodK) AS PrihodK,SUM(VT.RashodS) AS RashodS,SUM(VT.RashodK) AS RashodK,
SUM(VT.KonOstS) AS KonOstS,SUM(VT.KonOstK) AS KonOstK
FROM
(
SELECT
IIF(ISNULL($.),$,$.) AS ,
IIF(ISNULL($.),$,$.) AS ,
IIF(ISNULL($.),$,$.) AS ,
IIF(ISNULL($.),$,$.) AS ,
$ AS IDDOC, $ AS IDDOCDEF,
SUM(00000000000000000000.00000 ) AS PrihodS, SUM(00000000000000000000.00000 ) AS PrihodK, SUM(00000000000000000000.00000 ) AS RashodS, SUM(00000000000000000000.00000 ) AS RashodK,
SUM($.) AS KonOstS, SUM($.) AS KonOstK, SUM($.) AS NachOstS, SUM($.) AS NachOstK
FROM $. AS 
LEFT JOIN $. AS  ON (.ID = $.)
WHERE
(.PERIOD = :~~)

GROUP BY
,,,
HAVING
SUM($.) <> 0 OR SUM($.) <> 0
UNION ALL
SELECT
IIF(ISNULL($.),$,$.) AS ,
IIF(ISNULL($.),$,$.) AS ,
IIF(ISNULL($.),$,$.) AS ,
IIF(ISNULL($.),$,$.) AS ,
IIF(ISNULL(.IDDOC),$,.IDDOC) AS IDDOC, IIF(ISNULL(.IDDOCDEF),$,.IDDOCDEF) AS IDDOCDEF,
SUM(IIF((.DEBKRED = 0) AND (.DATE >= :~~) AND (.DATE <= :~~),$.,00000000000000000000.00000 )) AS PrihodS,
SUM(IIF((.DEBKRED = 0) AND (.DATE >= :~~) AND (.DATE <= :~~),$.,00000000000000000000.00000 )) AS PrihodK,
SUM(IIF((.DEBKRED = 1) AND (.DATE >= :~~) AND (.DATE <= :~~),$.,00000000000000000000.00000 )) AS RashodS,
SUM(IIF((.DEBKRED = 1) AND (.DATE >= :~~) AND (.DATE <= :~~),$.,00000000000000000000.00000 )) AS RashodK,
SUM(IIF((.DATE <= :~~) AND (.DATE > :~~),IIF(.DEBKRED = 0,$.,-$.),00000000000000000000.00000 )) AS KonOstS,
SUM(IIF((.DATE <= :~~) AND (.DATE > :~~),IIF(.DEBKRED = 0,$.,-$.),00000000000000000000.00000 )) AS KonOstK,
SUM(IIF((.DATE <= :~~) AND (.DATE > :~~),IIF(.DEBKRED = 0,$.,-$.),00000000000000000000.00000 )
+ IIF((.DATE >= :~~) AND (.DATE <= :~~),IIF((.DEBKRED = 0),-$.,$.),00000000000000000000.00000 )) AS NachOstS,
SUM(IIF((.DATE <= :~~) AND (.DATE > :~~),IIF(.DEBKRED = 0,$.,-$.),00000000000000000000.00000 )
+ IIF((.DATE >= :~~) AND (.DATE <= :~~),IIF((.DEBKRED = 0),-$.,$.),00000000000000000000.00000 )) AS NachOstK
FROM $. AS 
INNER JOIN 1SJOURN AS  ON (.IDDOC = .IDDOC)
LEFT JOIN $. AS  ON (.ID = $.)
WHERE
(.DATE >= :~~) AND (.DATE <= :~~) AND (($. <> 0) OR ($. <> 0)) AND (($. <> '   4XX   ') OR ((.IDDOCDEF <> $.) AND (.IDDOCDEF <> $.))) 
GROUP BY ,,,,.IDDOC,.IDDOCDEF
HAVING
SUM(IIF((.DEBKRED = 0) AND (.DATE >= :~~) AND (.DATE <= :~~),$.,00000000000000000000.00000 )) <> 0 OR
SUM(IIF((.DEBKRED = 0) AND (.DATE >= :~~) AND (.DATE <= :~~),$.,00000000000000000000.00000 )) <> 0 OR
SUM(IIF((.DEBKRED = 1) AND (.DATE >= :~~) AND (.DATE <= :~~),$.,00000000000000000000.00000 )) <> 0 OR
SUM(IIF((.DEBKRED = 1) AND (.DATE >= :~~) AND (.DATE <= :~~),$.,00000000000000000000.00000 )) <> 0 OR
SUM(IIF((.DATE <= :~~) AND (.DATE > :~~),IIF(.DEBKRED = 0,$.,-$.),00000000000000000000.00000 )) <> 0 OR
SUM(IIF((.DATE <= :~~) AND (.DATE > :~~),IIF(.DEBKRED = 0,$.,-$.),00000000000000000000.00000 )) <> 0 OR
SUM(IIF((.DATE <= :~~) AND (.DATE > :~~),IIF(.DEBKRED = 0,$.,-$.),00000000000000000000.00000 )
+
SUM(IIF((.DATE <= :~~) AND (.DATE > :~~),IIF(.DEBKRED = 0,$.,-$.),00000000000000000000.00000 )
+
) VT
LEFT JOIN 1SJOURN AS _ ON (_.IDDOC = VT.IDDOC) AND (_.DATE >= :~~) AND (_.DATE <= :~~)
LEFT JOIN $. as  ON .id = VT.
GROUP BY ,,,,_.IDDOC,_.IDDOCDEF,parentid;