project QadFinancials > class BCInvoice > method AdditionalUpdates

Description

This empty method allows to do additional updates on class temp-tables after records were received (and validated) from outside, using method SetPublicTables.
You can start instances of other business classes to do those updates.


Parameters


oiReturnStatusoutputinteger


Internal usage


QadFinancials
method BCInvoice.ApiCreateCreditorInvoices
method BCInvoice.ApiStdMaintainTTWithExtPost
method BCInvoice.ApiStdMaintainTTWithIntPost
method BCInvoice.ApiUpdateCInvoiceFromAPM
method BCInvoice.ValidateBCAndAdditionalUpdates


program code (program/bcinvoice.p)

/* =============================================================================================================== */
    /* Call a submethod thatd holds all program-code and all calls to the major submethods of method AdditionalUpdates */
    /* =============================================================================================================== */
    <M-76 run AdditionalUpdatesAll (output viFcReturnSuper (oiReturnStatus)) in BCInvoice>
    if viFcReturnSuper <> 0
    then assign oiReturnStatus = viFcReturnSuper.
    if viFcReturnSuper < 0
    then do :
        /* Stop external instances */
        <M-78 run StopExternalInstances
           (output viFcReturnSuper (oiReturnStatus)) in BCInvoice>
        Return.
    end. /* if */
    
    /* ============================================================================================ */
    /* Hold the current value of vlWorkFlowActive in a method data-item; this is to avoid that the  */
    /* ancestor-code will start the communication towards BWorkObject                               */
    /* The real value of vlWorkFlowActive is set to the correct value again after the acnestor-code */
    /* ============================================================================================ */
    assign vlOldWorkFlowIsActive = ?.
    find first tCInvoice no-lock no-error.
    if available tCInvoice
    then do :
        find next tCInvoice no-lock no-error.
        if not available tCInvoice
        then do :
            find first tCInvoice no-lock no-error.
            if available tCInvoice and 
               tCInvoice.CInvoiceIsInvoiceApproved <> true
            then assign vlOldWorkFlowIsActive = vlWorkFlowActive
                        vlWorkFlowActive      = false.
        end. /* if not available tCInvoice */
    end. /* if available tCInvoice */


<ANCESTOR-CODE>

    if oiReturnStatus < 0
    then return.
    
    /* ====================================================================================================== */
    /* Reset the value of vlWorkFlowActive to its original value as this was changed before the acnestor-code */
    /* ============================================================================================ */
    if vlOldWorkFlowIsActive <> ?
    then assign vlWorkFlowActive = vlOldWorkFlowIsActive.