project QadFinancials > class BBudget > method ValidateComponentBudgetWBSRange

Description

This submethod of ValidateComponentBudgetWBS because it could not contain all the code.


Parameters


iiBudgetCompanyIDinputintegeriiBudgetCompanyID
icBudgetWBSTcRowidinputcharacterBudgetWBSTcRowid
icBudgetWBSCodeinputcharactericBudgetWBSCode
icBudgetWBSFDSTypeinputcharactericBudgetWBSFDSType
icBudgetWBSFDSFromCodeinputcharacterBudgetWBSFDSFromCode
icBudgetWBSFDSToCodeinputcharacterBudgetWBSFDSToCode
icSafConceptCodeinputcharacterSAF Concept Code
oiReturnStatusoutputintegerReturn status of the method.


Internal usage


QadFinancials
method BBudget.ValidateComponentBudgetWBS


program code (program5/bbudget.p)

/* ================================ */
/* Check the FDS-From/To values     */
/* ================================ */
if icBudgetWBSFDSFromCode <> "":U and 
   icBudgetWBSFDSToCode   <> "":U
then do :
    CASE icBudgetWBSFDSType :
    when {&BUDGETFDSTYPE-GL} 
    then do :
        <Q-1 assign vlFcQueryRecordsAvailable = GLPrim (NoCache)
          (input iiBudgetCompanyID, (CompanyId)
           input icBudgetWBSFDSFromCode, (GLCode)
           input ?, (GLId)) in BGL >
        if vlFcQueryRecordsAvailable = false
        then do :
            assign oiReturnStatus = -1
                   vcMessage      = trim(substitute(#T-21'WBS node &1. The entry &2 (type: &3) in the From COA field is not defined in the system or is invalid.':255(607)t-21#,icBudgetWBSCode,icBudgetWBSFDSFromCode,icBudgetWBSFDSType)).
            <M-2 run SetMessage (input  vcMessage (icMessage),
                     input  '':U (icArguments),
                     input  'tBudgetWBS.BudgetWBSFDSFromCode':U (icFieldName),
                     input  icBudgetWBSFDSFromCode (icFieldValue),
                     input  'E':U (icType),
                     input  3 (iiSeverity),
                     input  icBudgetWBSTcRowid (icRowid),
                     input  'QADFIN-540':U (icFcMsgNumber),
                     input  '' (icFcExplanation),
                     input  '' (icFcIdentification),
                     input  '' (icFcContext),
                     output viFcReturnSuper (oiReturnStatus)) in BBudget>
            Return.
        end. /* if vlFcQueryRecordsAvailable = false */
        <Q-3 assign vlFcQueryRecordsAvailable = GLPrim (NoCache)
          (input iiBudgetCompanyID, (CompanyId)
           input icBudgetWBSFDSToCode, (GLCode)
           input ?, (GLId)) in BGL >
        if vlFcQueryRecordsAvailable = false
        then do :
            assign oiReturnStatus = -1
                   vcMessage      = trim(substitute(#T-22'WBS node &1. The entry &2 (type: &3) in the To COA field is not defined in the system or is invalid.':255(608)t-22#,icBudgetWBSCode,icBudgetWBSFDSToCode,icBudgetWBSFDSType)).
            <M-4 run SetMessage (input  vcMessage (icMessage),
                     input  '':U (icArguments),
                     input  'tBudgetWBS.BudgetWBSFDSToCode':U (icFieldName),
                     input  icBudgetWBSFDSToCode (icFieldValue),
                     input  'E':U (icType),
                     input  3 (iiSeverity),
                     input  icBudgetWBSTcRowid (icRowid),
                     input  'QADFIN-542':U (icFcMsgNumber),
                     input  '' (icFcExplanation),
                     input  '' (icFcIdentification),
                     input  '' (icFcContext),
                     output viFcReturnSuper (oiReturnStatus)) in BBudget>
            Return.
        end. /* if vlFcQueryRecordsAvailable = false */
    end. /* GL */
    when {&BUDGETFDSTYPE-DIVISION}
    then do :
        <Q-5 assign vlFcQueryRecordsAvailable = DivisionPrim (NoCache)
          (input iiBudgetCompanyID, (CompanyId)
           input ?, (DivisionID)
           input icBudgetWBSFDSFromCode, (DivisionCode)) in BDivision >
        if vlFcQueryRecordsAvailable = false
        then do :
            assign oiReturnStatus = -1
                   vcMessage      = trim(substitute(#T-23'WBS node &1. The entry &2 (type: &3) in the To COA field is not defined in the system or is invalid.':255(608)t-23#,icBudgetWBSCode,icBudgetWBSFDSToCode,icBudgetWBSFDSType)).
            <M-6 run SetMessage (input  vcMessage (icMessage),
                     input  '':U (icArguments),
                     input  'tBudgetWBS.BudgetWBSFDSFromCode':U (icFieldName),
                     input  icBudgetWBSFDSFromCode (icFieldValue),
                     input  'E':U (icType),
                     input  3 (iiSeverity),
                     input  icBudgetWBSTcRowid (icRowid),
                     input  'QADFIN-543':U (icFcMsgNumber),
                     input  '' (icFcExplanation),
                     input  '' (icFcIdentification),
                     input  '' (icFcContext),
                     output viFcReturnSuper (oiReturnStatus)) in BBudget>
            Return.
        end. /* if vlFcQueryRecordsAvailable = false */
        <Q-7 assign vlFcQueryRecordsAvailable = DivisionPrim (NoCache)
          (input iiBudgetCompanyID, (CompanyId)
           input ?, (DivisionID)
           input icBudgetWBSFDSToCode, (DivisionCode)) in BDivision >
        if vlFcQueryRecordsAvailable = false
        then do :
            assign oiReturnStatus = -1
                   vcMessage      = trim(substitute(#T-24'WBS node &1. The entry &2 (type: &3) in the To COA field is not defined in the system or is invalid.':255(608)t-24#,icBudgetWBSCode,icBudgetWBSFDSToCode,icBudgetWBSFDSType)).
            <M-8 run SetMessage (input  vcMessage (icMessage),
                     input  '':U (icArguments),
                     input  'tBudgetWBS.BudgetWBSFDSToCode':U (icFieldName),
                     input  icBudgetWBSFDSToCode (icFieldValue),
                     input  'E':U (icType),
                     input  3 (iiSeverity),
                     input  icBudgetWBSTcRowid (icRowid),
                     input  'QADFIN-544':U (icFcMsgNumber),
                     input  '' (icFcExplanation),
                     input  '' (icFcIdentification),
                     input  '' (icFcContext),
                     output viFcReturnSuper (oiReturnStatus)) in BBudget>
            Return.
        end. /* if vlFcQueryRecordsAvailable = false */
    end. /* Div */
    when {&BUDGETFDSTYPE-PROJECT}
    then do :
        <Q-9 assign vlFcQueryRecordsAvailable = ProjectPrim (NoCache)
          (input iiBudgetCompanyID, (CompanyId)
           input ?, (ProjectID)
           input icBudgetWBSFDSFromCode, (ProjectCode)) in BProject >
        if vlFcQueryRecordsAvailable = false
        then do :
            assign oiReturnStatus = -1
                   vcMessage      = trim(substitute(#T-25'WBS node &1. The entry &2 (type: &3) in the To COA field is not defined in the system or is invalid.':255(608)t-25#,icBudgetWBSCode,icBudgetWBSFDSToCode,icBudgetWBSFDSType)).
            <M-10 run SetMessage (input  vcMessage (icMessage),
                     input  '':U (icArguments),
                     input  'tBudgetWBS.BudgetWBSFDSFromCode':U (icFieldName),
                     input  icBudgetWBSFDSFromCode (icFieldValue),
                     input  'E':U (icType),
                     input  3 (iiSeverity),
                     input  icBudgetWBSTcRowid (icRowid),
                     input  'QADFIN-535':U (icFcMsgNumber),
                     input  '' (icFcExplanation),
                     input  '' (icFcIdentification),
                     input  '' (icFcContext),
                     output viFcReturnSuper (oiReturnStatus)) in BBudget>
            Return.
        end. /* if vlFcQueryRecordsAvailable = false */
        <Q-11 assign vlFcQueryRecordsAvailable = ProjectPrim (NoCache)
          (input iiBudgetCompanyID, (CompanyId)
           input ?, (ProjectID)
           input icBudgetWBSFDSToCode, (ProjectCode)) in BProject >
        if vlFcQueryRecordsAvailable = false
        then do :
            assign oiReturnStatus = -1
                   vcMessage      = trim(substitute(#T-26'WBS node &1. The entry &2 (type: &3) in the To COA field is not defined in the system or is invalid.':255(608)t-26#,icBudgetWBSCode,icBudgetWBSFDSToCode,icBudgetWBSFDSType)).
            <M-12 run SetMessage (input  vcMessage (icMessage),
                     input  '':U (icArguments),
                     input  'tBudgetWBS.BudgetWBSFDSToCode':U (icFieldName),
                     input  icBudgetWBSFDSToCode (icFieldValue),
                     input  'E':U (icType),
                     input  3 (iiSeverity),
                     input  icBudgetWBSTcRowid (icRowid),
                     input  'QADFIN-536':U (icFcMsgNumber),
                     input  '' (icFcExplanation),
                     input  '' (icFcIdentification),
                     input  '' (icFcContext),
                     output viFcReturnSuper (oiReturnStatus)) in BBudget>
            Return.
        end. /* if vlFcQueryRecordsAvailable = false */
    end. /* Prj */
    when {&BUDGETFDSTYPE-COSTCENTRE}
    then do :
        <Q-13 assign vlFcQueryRecordsAvailable = CostCentrePrim (NoCache)
          (input iiBudgetCompanyID, (CompanyId)
           input ?, (CostCentreID)
           input icBudgetWBSFDSFromCode, (CostCentreCode)) in BCostCentre >
        if vlFcQueryRecordsAvailable = false
        then do :
            assign oiReturnStatus = -1
                   vcMessage      = trim(substitute(#T-27'WBS node &1. The entry &2 (type: &3) in the To COA field is not defined in the system or is invalid.':255(608)t-27#,icBudgetWBSCode,icBudgetWBSFDSToCode,icBudgetWBSFDSType)).
            <M-14 run SetMessage (input  vcMessage (icMessage),
                     input  '':U (icArguments),
                     input  'tBudgetWBS.BudgetWBSFDSFromCode':U (icFieldName),
                     input  icBudgetWBSFDSFromCode (icFieldValue),
                     input  'E':U (icType),
                     input  3 (iiSeverity),
                     input  icBudgetWBSTcRowid (icRowid),
                     input  'QADFIN-537':U (icFcMsgNumber),
                     input  '' (icFcExplanation),
                     input  '' (icFcIdentification),
                     input  '' (icFcContext),
                     output viFcReturnSuper (oiReturnStatus)) in BBudget>
            Return.
        end. /* if vlFcQueryRecordsAvailable = false */
        <Q-15 assign vlFcQueryRecordsAvailable = CostCentrePrim (NoCache)
          (input iiBudgetCompanyID, (CompanyId)
           input ?, (CostCentreID)
           input icBudgetWBSFDSToCode, (CostCentreCode)) in BCostCentre >
        if vlFcQueryRecordsAvailable = false
        then do :
            assign oiReturnStatus = -1
                   vcMessage      = trim(substitute(#T-28'WBS node &1. The entry &2 (type: &3) in the To COA field is not defined in the system or is invalid.':255(608)t-28#,icBudgetWBSCode,icBudgetWBSFDSToCode,icBudgetWBSFDSType)).
            <M-16 run SetMessage (input  vcMessage (icMessage),
                     input  '':U (icArguments),
                     input  'tBudgetWBS.BudgetWBSFDSToCode':U (icFieldName),
                     input  icBudgetWBSFDSToCode (icFieldValue),
                     input  'E':U (icType),
                     input  3 (iiSeverity),
                     input  icBudgetWBSTcRowid (icRowid),
                     input  'QADFIN-538':U (icFcMsgNumber),
                     input  '' (icFcExplanation),
                     input  '' (icFcIdentification),
                     input  '' (icFcContext),
                     output viFcReturnSuper (oiReturnStatus)) in BBudget>
            Return.
        end. /* if vlFcQueryRecordsAvailable = false */
    end. /* CC */
    when {&BUDGETFDSTYPE-SAF}
    then do :
        <Q-17 assign vlFcQueryRecordsAvailable = SafByCodeIDActiveConcept (NoCache)
          (input icBudgetWBSFDSFromCode, (SafCode)
           input icSafConceptCode, (SafConceptCode)
           input ?, (SafID)
           input ?, (SafIsActive)
           input ?, (SafConceptID)
           input ?, (BudgetGroupID)
           input ?, (BudgetGroupCode)) in BSaf >
        if vlFcQueryRecordsAvailable = false
        then do :
            assign oiReturnStatus = -1
                   vcMessage      = trim(substitute(#T-29'WBS node &1. The entry &2 (type: &3) in the To COA field is not defined in the system or is invalid.':255(608)t-29#,icBudgetWBSCode,icBudgetWBSFDSToCode,icBudgetWBSFDSType)).
            <M-18 run SetMessage (input  vcMessage (icMessage),
                     input  '':U (icArguments),
                     input  'tBudgetWBS.BudgetWBSFDSFromCode':U (icFieldName),
                     input  icBudgetWBSFDSFromCode (icFieldValue),
                     input  'E':U (icType),
                     input  3 (iiSeverity),
                     input  icBudgetWBSTcRowid (icRowid),
                     input  'QADFIN-539':U (icFcMsgNumber),
                     input  '' (icFcExplanation),
                     input  '' (icFcIdentification),
                     input  '' (icFcContext),
                     output viFcReturnSuper (oiReturnStatus)) in BBudget>
            Return.
        end. /* if vlFcQueryRecordsAvailable = false */
        <Q-19 assign vlFcQueryRecordsAvailable = SafByCodeIDActiveConcept (NoCache)
          (input icBudgetWBSFDSToCode, (SafCode)
           input icSafConceptCode, (SafConceptCode)
           input ?, (SafID)
           input ?, (SafIsActive)
           input ?, (SafConceptID)
           input ?, (BudgetGroupID)
           input ?, (BudgetGroupCode)) in BSaf >
        if vlFcQueryRecordsAvailable = false
        then do :
            assign oiReturnStatus = -1
                   vcMessage      = trim(substitute(#T-30'WBS node &1. The entry &2 (type: &3) in the To COA field is not defined in the system or is invalid.':255(608)t-30#,icBudgetWBSCode,icBudgetWBSFDSToCode,icBudgetWBSFDSType)).
            <M-20 run SetMessage (input  vcMessage (icMessage),
                     input  '':U (icArguments),
                     input  'tBudgetWBS.BudgetWBSFDSToCode':U (icFieldName),
                     input  icBudgetWBSFDSToCode (icFieldValue),
                     input  'E':U (icType),
                     input  3 (iiSeverity),
                     input  icBudgetWBSTcRowid (icRowid),
                     input  'QADFIN-541':U (icFcMsgNumber),
                     input  '' (icFcExplanation),
                     input  '' (icFcIdentification),
                     input  '' (icFcContext),
                     output viFcReturnSuper (oiReturnStatus)) in BBudget>
            Return.
        end. /* if vlFcQueryRecordsAvailable = false */
    end. /* Saf */ 
END CASE.
end. /* if icBudgetWBSFDSFromCode <> "":U and */