project QadFinancials > class BCInvoice > method VerifyBankPaymentDataSet


Parameters


tqApiSelectCInvoiceByPayRefinputtemp-table
oiReturnStatusoutputintegerReturn status of the method.


Internal usage


QadFinancials
method BCInvoice.UpdateCInvoicesPaymentReference


program code (program1/bcinvoice.p)

    assign oiReturnStatus = 0.

    for each tqApiSelectCInvoiceByPayRef no-lock:
    
         if ( tqApiSelectCInvoiceByPayRef.tcPaymentConditionPaymentTyp = {&PAYMENTCONDITIONPAYMENTTYPE-NORMAL} )
         then do:
        
            if tqApiSelectCInvoiceByPayRef.tcCInvoiceTSMNumber = '' or  tqApiSelectCInvoiceByPayRef.tcCInvoiceTSMNumber = ? 
            then do:
                        
                assign vcMessage = trim(substitute(#T-77'Bank Payment Reference cannot be empty for Invoice &1':255(861388345)T-77#,  string(tqApiSelectCInvoiceByPayRef.tiCInvoicePostingYear,'9999':U) + '/':U +  string(tqApiSelectCInvoiceByPayRef.tiCInvoiceVoucher,'999999999':U))) .
                  <M-54 run SetMessage
                     (input  vcMessage (icMessage), 
                      input  '':U (icArguments), 
                      input  '':U (icFieldName), 
                      input  tcCInvoiceTSMNumber (icFieldValue), 
                      input  'E':U (icType), 
                      input  3 (iiSeverity), 
                      input  '':U (icRowid), 
                      input  'qadfin-300706':U (icFcMsgNumber), 
                      input  '':U (icFcExplanation), 
                      input  '':U (icFcIdentification), 
                      input  '':U (icFcContext), 
                      output oiReturnStatus (oiReturnStatus)) in BCInvoice>
                              
                      assign 
                                    oiReturnStatus = -1.
            end.
            else if tqApiSelectCInvoiceByPayRef.tiCInvoice_ID = ? or tqApiSelectCInvoiceByPayRef.tiCInvoice_ID = 0 
            then do:
                 <M-10 run SetMessage
                    (input  #T-73'CInvoive ID is null or empty':255(670434720)T-73# (icMessage), 
                     input  '':U (icArguments), 
                     input  'tiCInvoice_ID' (icFieldName), 
                     input  '':U (icFieldValue), 
                     input  'E':U (icType), 
                     input  3 (iiSeverity), 
                     input  '':U (icRowid), 
                     input  'qadfin-250920':U (icFcMsgNumber), 
                     input  #T-12'CInvoive ID is null or empty, and this must exists to update the correct db row in CInvoice':255(4662379)T-12# (icFcExplanation), 
                     input  'BCInvoice':U (icFcIdentification), 
                     input  '':U (icFcContext), 
                     output oiReturnStatus (oiReturnStatus)) in BCInvoice>
                     
                     assign 
                                    oiReturnStatus = -1.
                     
            end. /* end else if */   
        end. /* end if  */
        else do:       
            if tqApiSelectCInvoiceByPayRef.tcCInvoiceStageTSMNumber = '' or  tqApiSelectCInvoiceByPayRef.tcCInvoiceStageTSMNumber = ?
            then do:
            
                assign vcMessage = trim(substitute(  #T-3'Bank Payment Reference cannot be empty for Staged Invoice &1':255(356147044)T-3#,  string(tqApiSelectCInvoiceByPayRef.tiCInvoicePostingYear,'9999':U) + '/':U +  string(tqApiSelectCInvoiceByPayRef.tiCInvoiceVoucher,'999999999':U))) .
            
                  <M-58 run SetMessage
                     (input  #T-75'Bank Reference Code can not be empty for the stage on the supplier invoice':255(27985204)T-75# (icMessage), 
                      input  '':U (icArguments), 
                      input  'tcCInvoiceStageTSMnumber':U (icFieldName), 
                      input  '':U (icFieldValue), 
                      input  'E':U (icType), 
                      input  3 (iiSeverity), 
                      input  '':U (icRowid), 
                      input  'qadfin-814021':U (icFcMsgNumber), 
                      input  '':U (icFcExplanation), 
                      input  '':U (icFcIdentification), 
                      input  '':U (icFcContext), 
                      output oiReturnStatus (oiReturnStatus)) in BCInvoice>

                      assign 
                                    oiReturnStatus = -1.
                      
            end.
            else if tqApiSelectCInvoiceByPayRef.tiCInvoiceStage_ID = ? or tqApiSelectCInvoiceByPayRef.tiCInvoiceStage_ID = 0 
            then do:
                     <M-62 run SetMessage
                        (input  #T-80'CInvoiveStage_ID is null or empty':255(904253671)T-80# (icMessage), 
                         input  '':U (icArguments), 
                         input  'tiCInvoiceStage_ID':U (icFieldName), 
                         input  '':U (icFieldValue), 
                         input  'E':U (icType), 
                         input  3 (iiSeverity), 
                         input  '':U (icRowid), 
                         input  'qadfin-624292':U (icFcMsgNumber), 
                         input  #T-69'CInvoiveStage_ID is null or empty, and this must exists to update the correct db row in CInvoiceStage':255(579898716)T-69# (icFcExplanation), 
                         input  '':U (icFcIdentification), 
                         input  '':U (icFcContext), 
                         output oiReturnStatus (oiReturnStatus)) in BCInvoice>
                         
                         assign 
                                    oiReturnStatus = -1.
                         
            end. /* end else if */
        end. /* end else do */
    end. /* end for each */