project QadFinancials > class BProjectReport > method ProjectMastercard

report procedure


Parameters


icLanguageCodeinputcharacter
tFilterinputtemp-table
dcrProjectMastercardoutputdataset
oiReturnStatusoutputintegerReturn status of the method.


Internal usage


unused


program code (program7/bprojectreport.p)

empty temp-table tqProjectMastercard.
define buffer bqProjectMastercard for tqProjectMastercard.

<M-1 run GetReportLabels (input  'ProjectMastercard':U (icReportName), 
                          input  icLanguageCode (icLanguageCode), 
                          input  tFilter (tFilter), 
                          output tqHeader (tqHeader), 
                          output tqFilter (tqFilter), 
                          output tqText (tqText), 
                          output oiReturnStatus (oiReturnStatus)) in BProjectReport>
                          
if oiReturnStatus <> 0
then return.       

<M-2 run SetDataItemsBasedOnFilterTT (output viFcReturnSuper (oiReturnStatus)) in BProjectReport>

/* Precache data */
<Q-12 run ProjectStatusPrim (all) (Read) (NoCache)
          (input ?, (ProjectStatusID)
           input ?, (ProjectStatusCode)
           output dataset tqProjectStatusPrim) in BProjectStatus >

<Q-6 run PaymentConditionPrim (all) (Read) (NoCache)
   (input ?, (PaymentConditionId)
    input ?, (PaymentConditionCode)
    output dataset tqPaymentConditionPrim) in BPaymentCondition>

<Q-7 run CurrencyById (all) (Read) (NoCache)
          (input ?, (CurrencyId)
           output dataset tqCurrencyById) in BCurrency >

<Q-8 run RegionPrim (all) (Read) (NoCache)
          (input ?, (RegionId)
           input ?, (RegionCode)
           input ?, (CountryCode)
           output dataset tqRegionPrim) in BRegion >

<Q-9 run CountryPrim (all) (Read) (NoCache)
          (input ?, (CountryId)
           input ?, (CountryCode)
           output dataset tqCountryPrim) in BCountry >

/* Run main query, group by project code */
/* For each project run subquery where gather budget data */
<Q-10 run BaseProjectMastercard (all) (Read) (NoCache)
          (input viCompanyId, (CompanyId)
           input vcFromProjectFilter, (FromProject)
           input vcToProjectFilter, (ToProject)
           input vcCandoProjectFilter, (CandoProject)
           input vcFromProjectManagerFilter, (FromProjectManager)
           input vcToProjectManagerFilter, (ToProjectManager)
           input vcCandoProjectManagerFilter, (CandoProjectManager)
           input vcFromAccountManagerFilter, (FromAccountManager)
           input vcToAccountManagerFilter, (ToAccountManager)
           input vcCandoAccountManagerFilter, (CandoAccountManager)
           input vcFromAdminManagerFilter, (FromAdminManager)
           input vcToAdminManagerFilter, (ToAdminManager)
           input vcCandoAdminManagerFilter, (CandoAdminManager)
           input vcFromController, (FromController)
           input vcToController, (ToController)
           input vcCandoController, (CandoController)
           input vcFromBRFilter, (FromBR)
           input vcToBRFilter, (ToBR)
           input vcCandoBRFilter, (CandoBR)
           input vcFromDebtorFilter, (FromDebtor)
           input vcToDebtorFilter, (ToDebtor)
           input vcCandoDebtorFilter, (CandoDebtor)
           input vcFromPenholderCompany, (FromPenholderComp)
           input vcToPenholderCompany, (ToPenholderComp)
           input vcCandoPenholderCompany, (CandoPenholderComp)
           input vcFromDivisionFilter, (FromDivision)
           input vcToDivisionFilter, (ToDivision)
           input vcCandoDivisionFilter, (CandoDivision)
           input vcFromProjectGroupFilter, (FromProjectGroup)
           input vcToProjectGroupFilter, (ToProjectGroup)
           input vcCandoProjectGroupFilter, (CandoProjectGroup)
           input vcFromMainProjectFilter, (FromMainProject)
           input vcToMainProjectFilter, (ToMainProject)
           input vcCandoMainProjectFilter, (CandoMainProject)
           input vcProjectStatusCodeFilter, (StatusCode)
           input vcProjectTypeFilter, (ProjectType)
           input vtProjectStartDateFilter, (StartDate)
           input vtProjectEndDateFilter, (EndDate)
           output dataset tqBaseProjectMastercard) in BProjectReport >

for each tqBaseProjectMastercard:
    /* Create new line and copy all fields */
    create tqProjectMastercard.
    buffer-copy tqBaseProjectMastercard to tqProjectMastercard.

    /* Assign remianing values */
    find first tqProjectStatusPrim where tqProjectStatusPrim.tiProjectStatus_ID = tqBaseProjectMastercard.tiProjectStatus_ID no-error.
    if available tqProjectStatusPrim
    then assign tqProjectMastercard.tcProjectStatusCode = tqProjectStatusPrim.tcProjectStatusCode.

    find first tqPaymentConditionPrim where tqPaymentConditionPrim.tiPaymentCondition_ID = tqBaseProjectMastercard.tiPaymentCondition_ID no-error.
    if available tqPaymentConditionPrim
    then assign tqProjectMastercard.tcPaymentConditionCode = tqPaymentConditionPrim.tcPaymentConditionCode.

    find first tqCurrencyById where tqCurrencyById.tiCurrency_ID = tqBaseProjectMastercard.tiCurrency_ID no-error.
    if available tqCurrencyById
    then assign tqProjectMastercard.tcCurrencyCode = tqCurrencyById.tcCurrencyCode
                tqProjectMastercard.tiCurrencyNumberOfDecimals = tqCurrencyById.tiCurrencyNumberOfDecimals.

    find first tqRegionPrim where tqRegionPrim.tiRegion_ID = tqBaseProjectMastercard.tiRegion_ID no-error.
    if available tqRegionPrim
    then assign tqProjectMastercard.tcRegionCode = tqRegionPrim.tcRegionCode.

    find first tqCountryPrim where tqCountryPrim.tiCountry_ID = tqBaseProjectMastercard.tiSiteCountry_ID no-error.
    if available tqCountryPrim
    then assign tqProjectMastercard.tcSiteAddressCountry = tqCountryPrim.tcCountryCode.

    find first tqCountryPrim where tqCountryPrim.tiCountry_ID = tqBaseProjectMastercard.tiInvoiceCountry_ID no-error.
    if available tqCountryPrim
    then assign tqProjectMastercard.tcAddressCountry = tqCountryPrim.tcCountryCode.

    <Q-13 run ProjectBudgetByProjectID (all) (Read) (NoCache)
          (input viCompanyId, (CompanyId)
           input tqBaseProjectMastercard.tiProject_ID, (Project_ID)
           input vlBudgetVersionFilter, (ActiveBudget)
           output dataset tqProjectBudgetByProjectID) in BProjectReport >
    for each tqProjectBudgetByProjectID break by tqProjectBudgetByProjectID.tiProject_ID by tqProjectBudgetByProjectID.tiBudgetVersionFig_ID:   
        /* Assign values */
        if first-of (tqProjectBudgetByProjectID.tiBudgetVersionFig_ID)
        then do:

            assign vdBudgetVersionFigureEacQTY = 0
                   vdBudgetVersionFigureEacTC = 0
                   vdBudgetVersionFigureFinQTY = 0
                   vdBudgetVersionFigureFinTC = 0
                   vdBudgetVersionFigureQTY = 0
                   vdBudgetVersionFigureSEacTC = 0
                   vdBudgetVersionFigureSFinTC = 0
                   vdBudgetVersionFigureSTC = 0
                   vdBudgetVersionFigureTC = 0.

            assign vdBudgetVersionFigureTC = tqProjectBudgetByProjectID.tdBudgetVersionFig01TC + 
                  tqProjectBudgetByProjectID.tdBudgetVersionFig02TC +
                  tqProjectBudgetByProjectID.tdBudgetVersionFig03TC +
                  tqProjectBudgetByProjectID.tdBudgetVersionFig04TC +
                  tqProjectBudgetByProjectID.tdBudgetVersionFig05TC +
                  tqProjectBudgetByProjectID.tdBudgetVersionFig06TC +
                  tqProjectBudgetByProjectID.tdBudgetVersionFig07TC +
                  tqProjectBudgetByProjectID.tdBudgetVersionFig08TC +
                  tqProjectBudgetByProjectID.tdBudgetVersionFig09TC +
                  tqProjectBudgetByProjectID.tdBudgetVersionFig10TC +
                  tqProjectBudgetByProjectID.tdBudgetVersionFig11TC +
                  tqProjectBudgetByProjectID.tdBudgetVersionFig12TC +
                  tqProjectBudgetByProjectID.tdBudgetVersionFig13TC +
                  tqProjectBudgetByProjectID.tdBudgetVersionFig14TC +
                  tqProjectBudgetByProjectID.tdBudgetVersionFig15TC +
                  tqProjectBudgetByProjectID.tdBudgetVersionFig16TC +
                  tqProjectBudgetByProjectID.tdBudgetVersionFig17TC +
                  tqProjectBudgetByProjectID.tdBudgetVersionFig18TC +
                  tqProjectBudgetByProjectID.tdBudgetVersionFig19TC +
                  tqProjectBudgetByProjectID.tdBudgetVersionFig20TC +
                  tqProjectBudgetByProjectID.tdBudgetVersionFig21TC +
                  tqProjectBudgetByProjectID.tdBudgetVersionFig22TC +
                  tqProjectBudgetByProjectID.tdBudgetVersionFig23TC +
                  tqProjectBudgetByProjectID.tdBudgetVersionFig24TC
        vdBudgetVersionFigureQTY = tqProjectBudgetByProjectID.tdBudgetVersionFig01QTY +
           tqProjectBudgetByProjectID.tdBudgetVersionFig02QTY +
           tqProjectBudgetByProjectID.tdBudgetVersionFig03QTY +
           tqProjectBudgetByProjectID.tdBudgetVersionFig04QTY +
           tqProjectBudgetByProjectID.tdBudgetVersionFig05QTY +
           tqProjectBudgetByProjectID.tdBudgetVersionFig06QTY +
           tqProjectBudgetByProjectID.tdBudgetVersionFig07QTY +
           tqProjectBudgetByProjectID.tdBudgetVersionFig08QTY +
           tqProjectBudgetByProjectID.tdBudgetVersionFig09QTY +
           tqProjectBudgetByProjectID.tdBudgetVersionFig10QTY +
           tqProjectBudgetByProjectID.tdBudgetVersionFig11QTY +
           tqProjectBudgetByProjectID.tdBudgetVersionFig12QTY +
           tqProjectBudgetByProjectID.tdBudgetVersionFig13QTY +
           tqProjectBudgetByProjectID.tdBudgetVersionFig14QTY +
           tqProjectBudgetByProjectID.tdBudgetVersionFig15QTY +
           tqProjectBudgetByProjectID.tdBudgetVersionFig16QTY +
           tqProjectBudgetByProjectID.tdBudgetVersionFig17QTY +
           tqProjectBudgetByProjectID.tdBudgetVersionFig18QTY +
           tqProjectBudgetByProjectID.tdBudgetVersionFig19QTY +
           tqProjectBudgetByProjectID.tdBudgetVersionFig20QTY +
           tqProjectBudgetByProjectID.tdBudgetVersionFig21QTY +
           tqProjectBudgetByProjectID.tdBudgetVersionFig22QTY +
           tqProjectBudgetByProjectID.tdBudgetVersionFig23QTY +
           tqProjectBudgetByProjectID.tdBudgetVersionFig24QTY                                            
        vdBudgetVersionFigureEacTC = tqProjectBudgetByProjectID.tdBudgetVersionFig01EacTC +
             tqProjectBudgetByProjectID.tdBudgetVersionFig02EacTC +
             tqProjectBudgetByProjectID.tdBudgetVersionFig03EacTC +
             tqProjectBudgetByProjectID.tdBudgetVersionFig04EacTC +
             tqProjectBudgetByProjectID.tdBudgetVersionFig05EacTC +
             tqProjectBudgetByProjectID.tdBudgetVersionFig06EacTC +
             tqProjectBudgetByProjectID.tdBudgetVersionFig07EacTC +
             tqProjectBudgetByProjectID.tdBudgetVersionFig08EacTC +
             tqProjectBudgetByProjectID.tdBudgetVersionFig09EacTC +
             tqProjectBudgetByProjectID.tdBudgetVersionFig10EacTC +
             tqProjectBudgetByProjectID.tdBudgetVersionFig11EacTC +
             tqProjectBudgetByProjectID.tdBudgetVersionFig12EacTC +
             tqProjectBudgetByProjectID.tdBudgetVersionFig13EacTC +
             tqProjectBudgetByProjectID.tdBudgetVersionFig14EacTC +
             tqProjectBudgetByProjectID.tdBudgetVersionFig15EacTC +
             tqProjectBudgetByProjectID.tdBudgetVersionFig16EacTC +
             tqProjectBudgetByProjectID.tdBudgetVersionFig17EacTC +
             tqProjectBudgetByProjectID.tdBudgetVersionFig18EacTC +
             tqProjectBudgetByProjectID.tdBudgetVersionFig19EacTC +
             tqProjectBudgetByProjectID.tdBudgetVersionFig20EacTC +
             tqProjectBudgetByProjectID.tdBudgetVersionFig21EacTC +
             tqProjectBudgetByProjectID.tdBudgetVersionFig22EacTC +
             tqProjectBudgetByProjectID.tdBudgetVersionFig23EacTC +
             tqProjectBudgetByProjectID.tdBudgetVersionFig24EacTC 
        vdBudgetVersionFigureEacQTY = tqProjectBudgetByProjectID.tdBudgetVersionFig01EacQTY + 
              tqProjectBudgetByProjectID.tdBudgetVersionFig02EacQTY +
              tqProjectBudgetByProjectID.tdBudgetVersionFig03EacQTY +
              tqProjectBudgetByProjectID.tdBudgetVersionFig04EacQTY +
              tqProjectBudgetByProjectID.tdBudgetVersionFig05EacQTY +
              tqProjectBudgetByProjectID.tdBudgetVersionFig06EacQTY +
              tqProjectBudgetByProjectID.tdBudgetVersionFig07EacQTY +
              tqProjectBudgetByProjectID.tdBudgetVersionFig08EacQTY +
              tqProjectBudgetByProjectID.tdBudgetVersionFig09EacQTY +
              tqProjectBudgetByProjectID.tdBudgetVersionFig10EacQTY +
              tqProjectBudgetByProjectID.tdBudgetVersionFig11EacQTY +
              tqProjectBudgetByProjectID.tdBudgetVersionFig12EacQTY +
              tqProjectBudgetByProjectID.tdBudgetVersionFig13EacQTY +
              tqProjectBudgetByProjectID.tdBudgetVersionFig14EacQTY +
              tqProjectBudgetByProjectID.tdBudgetVersionFig15EacQTY +
              tqProjectBudgetByProjectID.tdBudgetVersionFig16EacQTY +
              tqProjectBudgetByProjectID.tdBudgetVersionFig17EacQTY +
              tqProjectBudgetByProjectID.tdBudgetVersionFig18EacQTY +
              tqProjectBudgetByProjectID.tdBudgetVersionFig19EacQTY +
              tqProjectBudgetByProjectID.tdBudgetVersionFig20EacQTY +
              tqProjectBudgetByProjectID.tdBudgetVersionFig21EacQTY +
              tqProjectBudgetByProjectID.tdBudgetVersionFig22EacQTY +
              tqProjectBudgetByProjectID.tdBudgetVersionFig23EacQTY +
              tqProjectBudgetByProjectID.tdBudgetVersionFig24EacQTY    
        vdBudgetVersionFigureFinTC = tqProjectBudgetByProjectID.tdBudgetVersionFig01FinTC + 
             tqProjectBudgetByProjectID.tdBudgetVersionFig02FinTC +
             tqProjectBudgetByProjectID.tdBudgetVersionFig03FinTC +
             tqProjectBudgetByProjectID.tdBudgetVersionFig04FinTC +
             tqProjectBudgetByProjectID.tdBudgetVersionFig05FinTC +
             tqProjectBudgetByProjectID.tdBudgetVersionFig06FinTC +
             tqProjectBudgetByProjectID.tdBudgetVersionFig07FinTC +
             tqProjectBudgetByProjectID.tdBudgetVersionFig08FinTC +
             tqProjectBudgetByProjectID.tdBudgetVersionFig09FinTC +
             tqProjectBudgetByProjectID.tdBudgetVersionFig10FinTC +
             tqProjectBudgetByProjectID.tdBudgetVersionFig11FinTC +
             tqProjectBudgetByProjectID.tdBudgetVersionFig12FinTC +
             tqProjectBudgetByProjectID.tdBudgetVersionFig13FinTC +
             tqProjectBudgetByProjectID.tdBudgetVersionFig14FinTC +
             tqProjectBudgetByProjectID.tdBudgetVersionFig15FinTC +
             tqProjectBudgetByProjectID.tdBudgetVersionFig16FinTC +
             tqProjectBudgetByProjectID.tdBudgetVersionFig17FinTC +
             tqProjectBudgetByProjectID.tdBudgetVersionFig18FinTC +
             tqProjectBudgetByProjectID.tdBudgetVersionFig19FinTC +
             tqProjectBudgetByProjectID.tdBudgetVersionFig20FinTC +
             tqProjectBudgetByProjectID.tdBudgetVersionFig21FinTC +
             tqProjectBudgetByProjectID.tdBudgetVersionFig22FinTC +
             tqProjectBudgetByProjectID.tdBudgetVersionFig23FinTC +
             tqProjectBudgetByProjectID.tdBudgetVersionFig24FinTC
        vdBudgetVersionFigureFinQTY = tqProjectBudgetByProjectID.tdBudgetVersionFig01FinQTY + 
              tqProjectBudgetByProjectID.tdBudgetVersionFig02FinQTY +
              tqProjectBudgetByProjectID.tdBudgetVersionFig03FinQTY +
              tqProjectBudgetByProjectID.tdBudgetVersionFig04FinQTY +
              tqProjectBudgetByProjectID.tdBudgetVersionFig05FinQTY +
              tqProjectBudgetByProjectID.tdBudgetVersionFig06FinQTY +
              tqProjectBudgetByProjectID.tdBudgetVersionFig07FinQTY +
              tqProjectBudgetByProjectID.tdBudgetVersionFig08FinQTY +
              tqProjectBudgetByProjectID.tdBudgetVersionFig09FinQTY +
              tqProjectBudgetByProjectID.tdBudgetVersionFig10FinQTY +
              tqProjectBudgetByProjectID.tdBudgetVersionFig11FinQTY +
              tqProjectBudgetByProjectID.tdBudgetVersionFig12FinQTY +
              tqProjectBudgetByProjectID.tdBudgetVersionFig13FinQTY +
              tqProjectBudgetByProjectID.tdBudgetVersionFig14FinQTY +
              tqProjectBudgetByProjectID.tdBudgetVersionFig15FinQTY +
              tqProjectBudgetByProjectID.tdBudgetVersionFig16FinQTY +
              tqProjectBudgetByProjectID.tdBudgetVersionFig17FinQTY +
              tqProjectBudgetByProjectID.tdBudgetVersionFig18FinQTY +
              tqProjectBudgetByProjectID.tdBudgetVersionFig19FinQTY +
              tqProjectBudgetByProjectID.tdBudgetVersionFig20FinQTY +
              tqProjectBudgetByProjectID.tdBudgetVersionFig21FinQTY +
              tqProjectBudgetByProjectID.tdBudgetVersionFig22FinQTY +
              tqProjectBudgetByProjectID.tdBudgetVersionFig23FinQTY +
              tqProjectBudgetByProjectID.tdBudgetVersionFig24FinQTY
            vdBudgetVersionFigureSTC = tqProjectBudgetByProjectID.tdBudgetVersionFig01STC +
               tqProjectBudgetByProjectID.tdBudgetVersionFig02STC +
               tqProjectBudgetByProjectID.tdBudgetVersionFig03STC +
               tqProjectBudgetByProjectID.tdBudgetVersionFig04STC +
               tqProjectBudgetByProjectID.tdBudgetVersionFig05STC +
               tqProjectBudgetByProjectID.tdBudgetVersionFig06STC +
               tqProjectBudgetByProjectID.tdBudgetVersionFig07STC +
               tqProjectBudgetByProjectID.tdBudgetVersionFig08STC +
               tqProjectBudgetByProjectID.tdBudgetVersionFig09STC +
               tqProjectBudgetByProjectID.tdBudgetVersionFig10STC +
               tqProjectBudgetByProjectID.tdBudgetVersionFig11STC +
               tqProjectBudgetByProjectID.tdBudgetVersionFig12STC +
               tqProjectBudgetByProjectID.tdBudgetVersionFig13STC +
               tqProjectBudgetByProjectID.tdBudgetVersionFig14STC +
               tqProjectBudgetByProjectID.tdBudgetVersionFig15STC +
               tqProjectBudgetByProjectID.tdBudgetVersionFig16STC +
               tqProjectBudgetByProjectID.tdBudgetVersionFig17STC +
               tqProjectBudgetByProjectID.tdBudgetVersionFig18STC +
               tqProjectBudgetByProjectID.tdBudgetVersionFig19STC +
               tqProjectBudgetByProjectID.tdBudgetVersionFig20STC +
               tqProjectBudgetByProjectID.tdBudgetVersionFig21STC +
               tqProjectBudgetByProjectID.tdBudgetVersionFig22STC +
               tqProjectBudgetByProjectID.tdBudgetVersionFig23STC +
               tqProjectBudgetByProjectID.tdBudgetVersionFig24STC 
        vdBudgetVersionFigureSFinTC = tqProjectBudgetByProjectID.tdBudgetVersionFig01SFinTC + 
                  tqProjectBudgetByProjectID.tdBudgetVersionFig02SFinTC +
                  tqProjectBudgetByProjectID.tdBudgetVersionFig03SFinTC +
                  tqProjectBudgetByProjectID.tdBudgetVersionFig04SFinTC +
                  tqProjectBudgetByProjectID.tdBudgetVersionFig05SFinTC +
                  tqProjectBudgetByProjectID.tdBudgetVersionFig06SFinTC +
                  tqProjectBudgetByProjectID.tdBudgetVersionFig07SFinTC +
                  tqProjectBudgetByProjectID.tdBudgetVersionFig08SFinTC +
                  tqProjectBudgetByProjectID.tdBudgetVersionFig09SFinTC +
                  tqProjectBudgetByProjectID.tdBudgetVersionFig10SFinTC +
                  tqProjectBudgetByProjectID.tdBudgetVersionFig11SFinTC +
                  tqProjectBudgetByProjectID.tdBudgetVersionFig12SFinTC +
                  tqProjectBudgetByProjectID.tdBudgetVersionFig13SFinTC +
                  tqProjectBudgetByProjectID.tdBudgetVersionFig14SFinTC +
                  tqProjectBudgetByProjectID.tdBudgetVersionFig15SFinTC +
                  tqProjectBudgetByProjectID.tdBudgetVersionFig16SFinTC +
                  tqProjectBudgetByProjectID.tdBudgetVersionFig17SFinTC +
                  tqProjectBudgetByProjectID.tdBudgetVersionFig18SFinTC +
                  tqProjectBudgetByProjectID.tdBudgetVersionFig19SFinTC +
                  tqProjectBudgetByProjectID.tdBudgetVersionFig20SFinTC +
                  tqProjectBudgetByProjectID.tdBudgetVersionFig21SFinTC +
                  tqProjectBudgetByProjectID.tdBudgetVersionFig22SFinTC +
                  tqProjectBudgetByProjectID.tdBudgetVersionFig23SFinTC +
                  tqProjectBudgetByProjectID.tdBudgetVersionFig24SFinTC
        vdBudgetVersionFigureSEacTC = tqProjectBudgetByProjectID.tdBudgetVersionFig01SEacTC + 
                  tqProjectBudgetByProjectID.tdBudgetVersionFig02SEacTC +
                  tqProjectBudgetByProjectID.tdBudgetVersionFig03SEacTC +
                  tqProjectBudgetByProjectID.tdBudgetVersionFig04SEacTC +
                  tqProjectBudgetByProjectID.tdBudgetVersionFig05SEacTC +
                  tqProjectBudgetByProjectID.tdBudgetVersionFig06SEacTC +
                  tqProjectBudgetByProjectID.tdBudgetVersionFig07SEacTC +
                  tqProjectBudgetByProjectID.tdBudgetVersionFig08SEacTC +
                  tqProjectBudgetByProjectID.tdBudgetVersionFig09SEacTC +
                  tqProjectBudgetByProjectID.tdBudgetVersionFig10SEacTC +
                  tqProjectBudgetByProjectID.tdBudgetVersionFig11SEacTC +
                  tqProjectBudgetByProjectID.tdBudgetVersionFig12SEacTC +
                  tqProjectBudgetByProjectID.tdBudgetVersionFig13SEacTC +
                  tqProjectBudgetByProjectID.tdBudgetVersionFig14SEacTC +
                  tqProjectBudgetByProjectID.tdBudgetVersionFig15SEacTC +
                  tqProjectBudgetByProjectID.tdBudgetVersionFig16SEacTC +
                  tqProjectBudgetByProjectID.tdBudgetVersionFig17SEacTC +
                  tqProjectBudgetByProjectID.tdBudgetVersionFig18SEacTC +
                  tqProjectBudgetByProjectID.tdBudgetVersionFig19SEacTC +
                  tqProjectBudgetByProjectID.tdBudgetVersionFig20SEacTC +
                  tqProjectBudgetByProjectID.tdBudgetVersionFig21SEacTC +
                  tqProjectBudgetByProjectID.tdBudgetVersionFig22SEacTC +
                  tqProjectBudgetByProjectID.tdBudgetVersionFig23SEacTC +
                  tqProjectBudgetByProjectID.tdBudgetVersionFig24SEacTC.
        end. /* first of budgetversionfigure_ID */
        
        if first-of(tqProjectBudgetByProjectID.tiProject_ID)
        then do:
            buffer-copy tqProjectBudgetByProjectID to tqProjectMastercard
            assign tqProjectMastercard.tdBudgetVersionFigureEacQTY = vdBudgetVersionFigureEacQTY
                   tqProjectMastercard.tdBudgetVersionFigureEacTC  = vdBudgetVersionFigureEacTC
                   tqProjectMastercard.tdBudgetVersionFigureFinQTY = vdBudgetVersionFigureFinQTY
                   tqProjectMastercard.tdBudgetVersionFigureFinTC  = vdBudgetVersionFigureFinTC
                   tqProjectMastercard.tdBudgetVersionFigureQTY    = vdBudgetVersionFigureQTY
                   tqProjectMastercard.tdBudgetVersionFigureSEacTC = vdBudgetVersionFigureSEacTC
                   tqProjectMastercard.tdBudgetVersionFigureSFinTC = vdBudgetVersionFigureSFinTC
                   tqProjectMastercard.tdBudgetVersionFigureSTC    = vdBudgetVersionFigureSTC
                   tqProjectMastercard.tdBudgetVersionFigureTC     = vdBudgetVersionFigureTC. 
        end.
        else do:
            create bqProjectMastercard.
            buffer-copy tqProjectMastercard to bqProjectMastercard.
            buffer-copy tqProjectBudgetByProjectID to bqProjectMastercard.
            assign bqProjectMastercard.tdBudgetVersionFigureEacQTY = vdBudgetVersionFigureEacQTY
                   bqProjectMastercard.tdBudgetVersionFigureEacTC  = vdBudgetVersionFigureEacTC
                   bqProjectMastercard.tdBudgetVersionFigureFinQTY = vdBudgetVersionFigureFinQTY
                   bqProjectMastercard.tdBudgetVersionFigureFinTC  = vdBudgetVersionFigureFinTC
                   bqProjectMastercard.tdBudgetVersionFigureQTY    = vdBudgetVersionFigureQTY
                   bqProjectMastercard.tdBudgetVersionFigureSEacTC = vdBudgetVersionFigureSEacTC
                   bqProjectMastercard.tdBudgetVersionFigureSFinTC = vdBudgetVersionFigureSFinTC
                   bqProjectMastercard.tdBudgetVersionFigureSTC    = vdBudgetVersionFigureSTC
                   bqProjectMastercard.tdBudgetVersionFigureTC     = vdBudgetVersionFigureTC. 
        end.
    end.
end.