BEGIN
VIESKind = '';
/* radky PP */
FOR
SELECT
A.VATIndex_ID, B.DocQueue_ID, B.OrdNumber, B.Period_ID, A.ESLDate$Date,
A.TAmountWithoutVAT, A.LocalTAmountWithoutVAT, A.TAmount, A.LocalTAmount,
A.Text, B.Description, B.Firm_ID, A.Division_ID, A.BusOrder_ID, A.BusTransaction_ID, A.BusProject_ID,
A.PosIndex, A.RowType, A.Quantity, VI.Income, A.ESLIndicator_ID, B.ID
FROM
CashReceived2 A
join CashReceived B ON A.Parent_ID = B.ID
left join VatIndexes VI on VI.ID = A.VatIndex_ID
WHERE
(A.RowType in (1,2,3,4)) and (A.ToESL = 'A') and (B.TradeType = 2) and
B.VATDocument = 'A' and B.VATCountry_ID=:VATCountry_ID and
A.VATIndex_ID IS NOT NULL and
A.ESLDate$Date >= :AESLDateFrom and A.ESLDate$Date < :AESLDateTo and
( (:AFirmSel_ID = '') OR
(B.Firm_ID in (select OBJ_ID from SELDAT where SEL_ID = :AFirmSel_ID)) OR
(B.Firm_ID in (SELECT ID FROM Firms WHERE Firm_ID in (select OBJ_ID from SELDAT where SEL_ID = :AFirmSel_ID))) )
INTO
:VATIndex_ID, :DocQueue_ID, :OrdNumber, :Period_ID, :ESLDate$Date,
:TAmountWithoutVAT, :LocalTAmountWithoutVAT, :TAmount, :LocalTAmount,
:Text, :Description, :Firm_ID, :Division_ID, :BusOrder_ID, :BusTransaction_ID, :BusProject_ID,
:PosIndex, :mRowType, :mQuantity, :mIncome, :ESLIndicator_ID, :Document_ID
DO BEGIN
EXECUTE PROCEDURE CheckDivisionAndBusX
:Division_ID, :ADivisionSel_ID, :ADivisionsWithChildren,
:BusOrder_ID, :ABusOrderSel_ID, :ABusOrdersWithChildren,
:BusTransaction_ID, :ABusTransactionSel_ID, :ABusTransactionsWithChildren,
:BusProject_ID, :ABusProjectSel_ID, :ABusProjectsWithChildren
RETURNING_VALUES
:mSuspend;
IF (mSuspend > 0) THEN BEGIN
IF (mRowType = 4) THEN
Text = '';
IF ((mRowType = 3) AND (mQuantity < 0)) THEN BEGIN
IF (mIncome = 'A') THEN BEGIN --ERR-2721/2009
TAmountWithoutVAT = (-1) * TAmountWithoutVAT;
LocalTAmountWithoutVAT = (-1) * LocalTAmountWithoutVAT;
TAmount = (-1) * TAmount;
LocalTAmount = (-1) * LocalTAmount;
END
END
SUSPEND;
END
END
/* radky VP */
FOR
SELECT
A.VATIndex_ID, B.DocQueue_ID, B.OrdNumber, B.Period_ID, A.ESLDate$Date,
(-1*A.TAmountWithoutVAT), (-1*A.LocalTAmountWithoutVAT), (-1*A.TAmount), (-1*A.LocalTAmount),
A.Text, B.Description, B.Firm_ID, A.Division_ID, A.BusOrder_ID, A.BusTransaction_ID, A.BusProject_ID,
A.PosIndex, A.RowType, A.ESLIndicator_ID, B.ID
FROM
RefundedCashReceived2 A
join RefundedCashReceived B ON A.Parent_ID = B.ID
WHERE
(A.RowType in (1,2,3,4)) and (A.ToESL = 'A') and (B.TradeType = 2) and
B.VATDocument = 'A' and B.VATCountry_ID=:VATCountry_ID and
A.VATIndex_ID IS NOT NULL and
A.ESLDate$Date >= :AESLDateFrom and A.ESLDate$Date < :AESLDateTo and
( (:AFirmSel_ID = '') OR
(B.Firm_ID in (select OBJ_ID from SELDAT where SEL_ID = :AFirmSel_ID)) OR
(B.Firm_ID in (SELECT ID FROM Firms WHERE Firm_ID in (select OBJ_ID from SELDAT where SEL_ID = :AFirmSel_ID))) )
INTO
:VATIndex_ID, :DocQueue_ID, :OrdNumber, :Period_ID, :ESLDate$Date,
:TAmountWithoutVAT, :LocalTAmountWithoutVAT, :TAmount, :LocalTAmount,
:Text, :Description, :Firm_ID, :Division_ID, :BusOrder_ID, :BusTransaction_ID, :BusProject_ID,
:PosIndex, :mRowType, :ESLIndicator_ID, :Document_ID
DO BEGIN
EXECUTE PROCEDURE CheckDivisionAndBusX
:Division_ID, :ADivisionSel_ID, :ADivisionsWithChildren,
:BusOrder_ID, :ABusOrderSel_ID, :ABusOrdersWithChildren,
:BusTransaction_ID, :ABusTransactionSel_ID, :ABusTransactionsWithChildren,
:BusProject_ID, :ABusProjectSel_ID, :ABusProjectsWithChildren
RETURNING_VALUES
:mSuspend;
IF (mSuspend > 0) THEN BEGIN
IF (mRowType = 4) THEN Text = '';
SUSPEND;
END
END
END;