SELECT SUM(EvaluationScore), COUNT(*) FROM
(
SELECT DISTINCT SD.ID AS ID, SDE.EvaluationScore AS EvaluationScore
FROM StoreDocuments SD
JOIN StoreDocumentEvaluations SDE ON SDE.Parent_ID = SD.ID
LEFT JOIN StoreDocuments2 SD2 ON SD.ID = SD2.Parent_ID
LEFT JOIN StoreCards SC ON SD2.StoreCard_ID = SC.ID
WHERE
SD.DocumentType = '20' AND
SDE.EvaluationCriterion_ID = :EvaluationCriterion_ID AND
SDE.EvaluationScore >= 0 AND
(SD.Firm_ID IN (SELECT ID FROM Firms WHERE ID=:Firm_ID OR Firm_ID=:Firm_ID)) AND
(
(COALESCE(:FirmOffice_ID1, '0000000000') = '0000000000') OR
SD.FirmOffice_ID IN (SELECT ID FROM FirmOffices WHERE ID = :FirmOffice_ID2 OR OfficeUnique_ID IN (SELECT OfficeUnique_ID FROM FirmOffices WHERE ID = :FirmOffice_ID3))
) AND
SD.DocDate$DATE >= :DateFrom AND SD.DocDate$DATE <= :DateTo AND
(
(COALESCE(:SelStoreCards_ID1, '0000000000') = '0000000000') OR
( (SD2.ID IS NOT NULL) AND SD2.StoreCard_ID IN (SELECT OBJ_ID FROM SelDat WHERE SEL_ID = :SelStoreCards_ID2) )
) AND
(
(COALESCE(:SelStoreMenus_ID1, '0000000000') = '0000000000') OR
( (SD2.ID IS NOT NULL) AND SC.StoreMenuItem_ID IN (SELECT OBJ_ID FROM SelDat WHERE SEL_ID = :SelStoreMenus_ID2) )
)
) AGenerated by ABRA Software a.s. 27.10.2021 16:34:10