BEGIN
FOR
SELECT
A.PDocument_ID, A.PDocumentType
FROM CashPaid A
WHERE A.PDocument_ID is not null and (A.DocDate$DATE<:ADateTo$DATE) and (A.DocDate$DATE>=:ADateFrom$DATE)
GROUP BY 1, 2
UNION ALL
SELECT
A.PDocument_ID, A.PDocumentType
FROM CashReceived A
WHERE A.PDocument_ID is not null and (A.DocDate$DATE<:ADateTo$DATE) and (A.DocDate$DATE>=:ADateFrom$DATE)
GROUP BY 1, 2
UNION ALL
SELECT
A.PDocument_ID, A.PDocumentType
FROM OtherExpenses A
WHERE A.PDocument_ID is not null and (A.DocDate$DATE<:ADateTo$DATE) and (A.DocDate$DATE>=:ADateFrom$DATE)
GROUP BY 1, 2
UNION ALL
SELECT
A.PDocument_ID, A.PDocumentType
FROM OtherIncomes A
WHERE A.PDocument_ID is not null and (A.DocDate$DATE<:ADateTo$DATE) and (A.DocDate$DATE>=:ADateFrom$DATE)
GROUP BY 1, 2
UNION ALL
SELECT
A.PDocument_ID, A.PDocumentType
FROM BankStatements2 A
WHERE A.PDocument_ID is not null and (A.DocDate$DATE<:ADateTo$DATE) and (A.DocDate$DATE>=:ADateFrom$DATE) and
(A.IsMultiPaymentRow = 'N')
GROUP BY 1, 2
UNION ALL
SELECT
A.PDocument_ID, A.PDocumentType
FROM Compensations2 A
WHERE A.PDocument_ID is not null and (A.DocDate$DATE<:ADateTo$DATE) and (A.DocDate$DATE>=:ADateFrom$DATE)
GROUP BY 1, 2
UNION ALL
SELECT
A.PDocument_ID, A.PDocumentType
FROM IssuedDepositUsages A
WHERE A.PDocument_ID is not null and (A.PaymentDate$DATE<:ADateTo$DATE) and (A.PaymentDate$DATE>=:ADateFrom$DATE)
GROUP BY 1, 2
UNION ALL
SELECT
A.PDocument_ID, A.PDocumentType
FROM ReceivedDepositUsages A
WHERE A.PDocument_ID is not null and (A.PaymentDate$DATE<:ADateTo$DATE) and (A.PaymentDate$DATE>=:ADateFrom$DATE)
GROUP BY 1, 2
UNION ALL
SELECT
A.Source_ID, Cast('03' as VARCHAR(2))
FROM IssuedCreditNotes A
WHERE (A.DocDate$DATE<:ADateTo$DATE) AND (A.DocDate$DATE>=:ADateFrom$DATE)
GROUP BY 1, 2
UNION ALL
SELECT
A.Source_ID, Cast('04' as VARCHAR(2))
FROM ReceivedCreditNotes A
WHERE (A.DocDate$DATE<:ADateTo$DATE) AND (A.DocDate$DATE>=:ADateFrom$DATE)
GROUP BY 1, 2
UNION ALL
SELECT
A.Source_ID, Cast('62' as VARCHAR(2))
FROM VATIssuedDCreditNotes A
WHERE (A.DocDate$DATE<:ADateTo$DATE) AND (A.DocDate$DATE>=:ADateFrom$DATE)
GROUP BY 1, 2
UNION ALL
SELECT
A.Source_ID, Cast('64' as VARCHAR(2))
FROM VATReceivedDCreditNotes A
WHERE (A.DocDate$DATE<:ADateTo$DATE) AND (A.DocDate$DATE>=:ADateFrom$DATE)
GROUP BY 1, 2
UNION ALL
-- platby dokladu v maloobch. prodeji
SELECT
A.PDocument_ID, A.PDocumentType
FROM GetPayableHeadersPOS(:ADateFrom$DATE, :ADateTo$DATE) A
GROUP BY 1, 2
INTO
:PDocument_ID, :PDocumentType
DO BEGIN
/* Pokud se jedná o ostatní doklad s příznakem ElectronicPayment vyřadíme ho ze zpracování. */
IF (:PDocumentType = '01') THEN BEGIN
-- Elektronické platby vylučujeme z peněžního deníku.
SELECT A.ElectronicPayment
FROM OtherIncomes A
WHERE A.ID = :PDocument_ID
INTO :mElectronicPayment;
IF (mElectronicPayment = 'N') THEN
suspend;
END
ELSE
IF (:PDocumentType = '02') THEN BEGIN
-- Elektronické platby vylučujeme z peněžního deníku.
SELECT A.ElectronicPayment
FROM OtherExpenses A
WHERE A.ID = :PDocument_ID
INTO :mElectronicPayment;
IF (mElectronicPayment = 'N') THEN
suspend;
END
ELSE
BEGIN
suspend;
END
END
END