Procedura-PayDestinationsByAmountPos
- Popis:
- Procedura se bude přepisovat v jiných projektech (Pos), ale volá se v tomto projektu.
Parametry:
Návratové hodnoty:
Tělo:
BEGIN
/* kreditni platby dle lokalni castky*/
IF ((:ACredit = 'A') AND (:ACurrency_ID is NULL)) THEN BEGIN
/* výdeje z pokladního místa */
DocumentType = 'CP' ;
FOR
SELECT
ID
FROM
POSCashPaid
WHERE
(
((:AAmountType = 0) AND (LocalAmount = :AAmount) ) /* kdyz je zadanä cástka shodna s cástku na dokladu */
OR
((:AAmountType = 1) AND ((LocalAmount - LocalPaidAmount) = :AAmount) ) /* kdyz je zadanä cástka shodna s nesplaceno */
OR
((:AAmountType = 2) AND (LocalAmount >= :AAmount) ) /* kdyz je zadanä cástka shodna s cástku na dokladu */
OR
((:AAmountType = 3) AND ((LocalAmount - LocalPaidAmount) >= :AAmount) ) /* kdyz je zadanä cástka shodna s nesplaceno */
)
AND
(
(:AFirm_ID = '0000000000')
OR
(Firm_ID = :AFirm_ID)
)
INTO
:ID
DO
SUSPEND;
END
/* debetni platby dle lokalni castky */
IF ((:ACredit = 'N') and (:ACurrency_ID is NULL)) THEN BEGIN
/* vkladu do pokladního místa */
DocumentType = 'CR' ;
FOR
SELECT
ID
FROM
POSCashReceived
WHERE
(
((:AAmountType = 0) AND (LocalAmount = :AAmount))
OR
((:AAmountType = 1) AND ( (LocalAmount - LocalPaidAmount) = :AAmount))
OR
((:AAmountType = 0) AND (LocalAmount >= :AAmount))
OR
((:AAmountType = 1) AND ( (LocalAmount - LocalPaidAmount) >= :AAmount))
)
AND
(
(:AFirm_ID = '0000000000')
OR
(Firm_ID = :AFirm_ID)
)
INTO
:ID
DO
SUSPEND;
END
/* kreditni platby dle castky a meny */
IF ((:ACredit = 'A') and (:ACurrency_ID is Not NULL)) THEN BEGIN
/* výdeje z pokladního místa */
DocumentType = 'CP' ;
FOR
SELECT
ID
FROM
POSCashPaid
WHERE
(
( (:AAmountType = 0) AND (Amount = :AAmount) )
OR
( (:AAmountType = 1) AND ( (Amount - PaidAmount) = :AAmount) )
OR
( (:AAmountType = 2) AND (Amount >= :AAmount) )
OR
( (:AAmountType = 3) AND ( (Amount - PaidAmount) >= :AAmount) )
)
AND
(Currency_ID = :ACurrency_ID)
AND
((:AFirm_ID = '0000000000')
OR
(Firm_ID = :AFirm_ID))
INTO
:ID
DO
SUSPEND;
END
/* debetni platby dle castky a meny */
IF ((:ACredit = 'N') and (:ACurrency_ID is Not NULL)) THEN BEGIN
/* vkladu do pokladního místa */
DocumentType = 'CR' ;
FOR
SELECT
ID
FROM
POSCashReceived
WHERE
(
( (:AAmountType = 0) AND (Amount = :AAmount) )
OR
( (:AAmountType = 1) AND ( (Amount - PaidAmount) = :AAmount) )
OR
( (:AAmountType = 2) AND (Amount >= :AAmount) )
OR
( (:AAmountType = 3) AND ( (Amount - PaidAmount) >= :AAmount) )
)
AND
(Currency_ID = :ACurrency_ID)
AND
((:AFirm_ID = '0000000000')
OR
(Firm_ID = :AFirm_ID))
INTO
:ID
DO
SUSPEND;
END
END;
Generated by ABRA Software a.s. 27.10.2021 16:34:31