project QadFinancials > class BDInvoice > method CreateDInvoiceMovementsCrossCyVal
Description
Implement some extra validations to ensure, cross company deamon will not fail during processing.
Parameters
iiPostingLine_ID | input | integer | |
oiReturnStatus | output | integer | Return status of the method. |
Internal usage
QadFinancials
program code (program3/bdinvoice.p)
assign oiReturnStatus = -98
viLocalReturn = 0.
MAIN_BLOCK:
do on error undo, leave:
/* Get posting details */
<M-37 run GetPostingInfoByPostingLineID
(input iiPostingLine_ID (iiPostingLineID),
output vtPostingDate (otPostingDate),
output viDummy (oiPeriodID),
output viDummy (oiPostingYearPeriod),
output vcDummy (ocJournalCode),
output vcDummy (ocJournalTypeCode),
output vcDummy (ocLayerTypeCode),
output viFcReturnSuper (oiReturnStatus)) in BJournalEntry>
if viFcReturnSuper < 0 or viFcReturnSuper > 0 and viLocalReturn = 0 then assign viLocalReturn = viFcReturnSuper.
if viFcReturnSuper < 0 then leave MAIN_BLOCK.
if vtPostingDate < tqDInvoiceForPaymentExt.ttDInvoicePostingDate
then do:
vcDatetemp = <M-75 DisplayDate (input tqDInvoiceForPaymentExt.ttDInvoicePostingDate (itDate)) in BDInvoice>.
<M-27 run SetMessage
(input #T-80'Date of an AR Movement can not be earlier then the Customer Invoice Posting Date.':255(73426690)T-80# (icMessage),
input '':U (icArguments),
input 'tDInvoice.DInvoicePostingDate' (icFieldName),
input vcDatetemp (icFieldValue),
input 'E':U (icType),
input 3 (iiSeverity),
input '':U (icRowid),
input 'qadfin-144874':U (icFcMsgNumber),
input '':U (icFcExplanation),
input '':U (icFcIdentification),
input '':U (icFcContext),
output viFcReturnSuper (oiReturnStatus)) in BDInvoice>
assign viLocalReturn = -1.
end. /* if can-find(first tPostingPostingLineInfoDIJE where */
end. /* of MAIN_BLOCK */
assign oiReturnStatus = viLocalReturn.