project QadFinancials > class BBudget > method CalculateBudgetVersion

Description

This submethod of Method Calculate is to fill some calculated field in the BudgetVersionFigures based on the link to the BudgetWBS.


Parameters


oiReturnStatusoutputintegerReturn status of the method.


Internal usage


QadFinancials
method BBudget.Calculate


program code (program1/bbudget.p)

/* ============================================ */
    /* Fill the formatted time in the BudgetVersion */
    /* ============================================ */
    for each tBudgetVersion where 
             tBudgetVersion.tc_Status <> "D":U and 
             (tBudgetVersion.tcBudgetVersionCreateTimeForm = "":U or
              tBudgetVersion.tcBudgetVersionCreateTimeForm = ?) :
        /* ============================================================== */
        /* Skip the inactive versions in case we are not interested in it */
        /* ============================================================== */
        if vlActiveVersionOnly                  = true and
           tBudgetVersion.BudgetVersionIsActive = false
        then next.
        /* ====================================== */
        /* State the readable format for the time */
        /* ====================================== */
        assign tBudgetVersion.tcBudgetVersionCreateTimeForm = 
            string(trunc(tBudgetVersion.BudgetVersionCreateTime / 3600,0),"99":U)  + ":":U + 
            string(trunc((tBudgetVersion.BudgetVersionCreateTime - trunc(tBudgetVersion.BudgetVersionCreateTime / 3600,0) * 3600) / 60,0),"99":U) + ":":U + 
            string(tBudgetVersion.BudgetVersionCreateTime - trunc(tBudgetVersion.BudgetVersionCreateTime / 60,0) * 60,"99":U) no-error.
        /* ========================================================================================= */
        /* Fill some calculated field in the BudgetVersionFigures based on the link to the BudgetWBS */
        /* ========================================================================================= */
        for each tBudgetVersionFig where 
                 tBudgetVersionFig.tc_ParentRowid  = tBudgetVersion.tc_Rowid and 
                 tBudgetVersionFig.BudgetWBS_ID   <> ?                       and 
                 tBudgetVersionFig.BudgetWBS_ID   <> 0 :
            find tBudgetWBS where 
                 tBudgetWBS.BudgetWBS_ID = tBudgetVersionFig.BudgetWBS_ID
                 no-lock no-error.
            if available tBudgetWBS 
            then assign tBudgetVersionFig.tcBudgetWBSSeq       = tBudgetWBS.tcBudgetWBSSeqStr
                        tBudgetVersionFig.tcBudgetWBSCode      = tBudgetWBS.BudgetWBSCode
                        tBudgetVersionFig.tiBudgetFDSSeq       = tBudgetWBS.BudgetFDSSeq
                        tBudgetVersionFig.tcBudgetFDSType      = tBudgetWBS.BudgetFDSType
                        tBudgetVersionFig.tiParentBudgetWBS_ID = tBudgetWBS.ParentBudgetWBS_ID.
        end. /* for each */
        for each tBudgetVersionGLFig where 
                 tBudgetVersionGLFig.tc_ParentRowid  = tBudgetVersion.tc_Rowid and
                 tBudgetVersionGLFig.BudgetWBS_ID   <> ?                       and 
                 tBudgetVersionGLFig.BudgetWBS_ID   <> 0 :
            find tBudgetWBS where 
                 tBudgetWBS.BudgetWBS_ID = tBudgetVersionGLFig.BudgetWBS_ID
                 no-lock no-error.
            if available tBudgetWBS
            then assign tBudgetVersionGLFig.tcBudgetWBSSeq         = tBudgetWBS.tcBudgetWBSSeqStr
                        tBudgetVersionGLFig.tcBudgetWBSCode        = tBudgetWBS.BudgetWBSCode
                        tBudgetVersionGLFig.tiBudgetWBSLineNumber  = tBudgetWBS.BudgetWBSLineNumber
                        tBudgetVersionGLFig.tiBudgetFDSSeq         = tBudgetWBS.BudgetFDSSeq
                        tBudgetVersionGLFig.tcBudgetFDSType        = tBudgetWBS.BudgetFDSType
                        tBudgetVersionGLFig.tiParentBudgetWBS_ID   = tBudgetWBS.ParentBudgetWBS_ID
                        tBudgetVersionGLFig.tcBudgetWBSFDSLink          = tBudgetWBS.BudgetWBSFDSLink
                        tBudgetVersionGLFig.tcBudgetWBSTopicDescription = tBudgetWBS.BudgetWBSTopicDescription
                        tBudgetVersionGLFig.tlBudgetWBSIsPrintDesc      = tBudgetWBS.BudgetWBSIsPrintDesc
                        tBudgetVersionGLFig.tcBudgetGroupCode           = tBudgetWBS.tcBudgetGroupCode
                        tBudgetVersionGLFig.tcAltCOAGroupCode           = tBudgetWBS.tcAltCOAGroupCode
                        tBudgetVersionGLFig.tcBudgetWBSCategory         = if tBudgetWBS.BudgetWBSCategory = "" or tBudgetWBS.BudgetWBSCategory = ?
                                                                          then {&BUDGETWBSCATEGORY-ASSET}
                                                                          else tBudgetWBS.BudgetWBSCategory.
        end. /* for each */
   end. /* for each */