project QadFinancials > class BCInvoice > method ValidateComponentPreCI
Description
ValidateComponentPreCI: This method includes validations that are done before the ancestor code of ValidateComponent.
Parameters
oiReturnStatus | output | integer | Return status of the method. |
Internal usage
QadFinancials
program code (program5/bcinvoice.p)
/* Calling method makes sure we already have a t_sCInvoice and a t_iCInvoice available */
if available (t_sCInvoice) and
available (t_iCInvoice) and
t_sCInvoice.tc_Status = "C":U and
t_iCInvoice.CInvoiceVoucher <> 0 and /* started from a non-initial invoice */
(t_sCInvoice.CInvoiceVoucher <> t_iCInvoice.CInvoiceVoucher or
t_sCInvoice.tcJournalCode <> t_iCInvoice.tcJournalCode or
t_sCInvoice.CInvoicePostingYear <> t_iCInvoice.CInvoicePostingYear or
t_sCInvoice.CInvoicePostingPeriod <> t_iCInvoice.CInvoicePostingPeriod or
t_sCInvoice.CInvoicePostingDate <> t_iCInvoice.CInvoicePostingDate or
t_sCInvoice.CInvoiceTaxPointDate <> t_iCInvoice.CInvoiceTaxPointDate or
t_sCInvoice.CInvoiceDate <> t_iCInvoice.CInvoiceDate or
t_sCInvoice.CInvoiceCurrency_ID <> t_iCInvoice.CInvoiceCurrency_ID or
t_sCInvoice.CInvoiceCreationDate <> t_iCInvoice.CInvoiceCreationDate or
t_sCInvoice.CInvoiceOriginalCreditTC <> t_iCInvoice.CInvoiceOriginalCreditTC or
t_sCInvoice.CInvoiceOriginalDebitTC <> t_iCInvoice.CInvoiceOriginalDebitTC or
t_sCInvoice.CInvoiceOriginalCreditLC <> t_iCInvoice.CInvoiceOriginalCreditLC or
t_sCInvoice.CInvoiceOriginalDebitLC <> t_iCInvoice.CInvoiceOriginalDebitLC or
t_sCInvoice.CInvoiceOriginalCreditCC <> t_iCInvoice.CInvoiceOriginalCreditCC or
t_sCInvoice.CInvoiceOriginalDebitCC <> t_iCInvoice.CInvoiceOriginalDebitCC)
then do:
assign vcMessage = trim(substitute(#T-3'Changing these fields on this non-initial invoice (&1) is not allowed: &2.':255(73461622)T-3#,
string(t_sCInvoice.CInvoicePostingYear) + chr(2) + t_sCInvoice.tcJournalCode + chr(2) + string(t_sCInvoice.CInvoiceVoucher),
trim(#T-4'Year, Period, Daybook, Voucher, Date, Posting-date, Tax-point-date, Currency, Creation-date and Invoice-amount':255(591277023)T-4#))).
<M-5 run SetMessage
(input vcMessage (icMessage),
input '':U (icArguments),
input '':U (icFieldName),
input '':U (icFieldValue),
input 'E':U (icType),
input 3 (iiSeverity),
input t_sCInvoice.tc_Rowid (icRowid),
input 'QadFin-9503':U (icFcMsgNumber),
input '':U (icFcExplanation),
input '':U (icFcIdentification),
input '':U (icFcContext),
output viFcReturnSuper (oiReturnStatus)) in BCInvoice>
assign oiReturnStatus = -1.
Return.
end. /* if */