project QadFinancials > class BBudget > method BudgetVersionRollUpAmountsFigFin

Description

This method is the submethod of BudgetVersionRollUpAmountsFig because it could not hold all the code.


Parameters


icBudgetVersionTcRowidinputcharacterBudgetVersionTcRowid
oiReturnStatusoutputintegerReturn status of the method.


Internal usage


QadFinancials
method BBudget.BudgetVersionRollUpAmountsFig


program code (program6/bbudget.p)

/* rollup the FIN figures */
for each tNewBudgetVersionFigure where 
         tNewBudgetVersionFigure.tc_ParentRowid  = icBudgetVersionTcRowid      and 
         tNewBudgetVersionFigure.tiBudgetFDSSeq  = tBudget.BudgetInputLevelFin and
         tNewBudgetVersionFigure.tc_rowid       <> "D":U:
    
    /* Go though all parents of the node depend on the "budgetinputlevel" and update the figures of these nodes */
    assign viParentBudgetWBSID = tNewBudgetVersionFigure.tiParentBudgetWBS_ID.
    REPEAT :
    
        find btNewBVFigure where  
             btNewBVFigure.tc_ParentRowid  = icBudgetVersionTcRowid and 
             btNewBVFigure.tc_rowid       <> "D":U and
             btNewBVFigure.BudgetWBS_ID = viParentBudgetWBSID
             no-error.
        if not available btNewBVFigure
        then leave.
        assign  viParentBudgetWBSID                       = btNewBVFigure.tiParentBudgetWBS_ID.
                if tNewBudgetVersionFigure.BudgetVersionFig01FinTC = ? then assign tNewBudgetVersionFigure.BudgetVersionFig01FinTC = 0.
					else assign btNewBVFigure.BudgetVersionFig01FinTC  = btNewBVFigure.BudgetVersionFig01FinTC + tNewBudgetVersionFigure.BudgetVersionFig01FinTC.
				if tNewBudgetVersionFigure.BudgetVersionFig01FinQTY = ? then assign tNewBudgetVersionFigure.BudgetVersionFig01FinQTY = 0.
					else assign btNewBVFigure.BudgetVersionFig01FinQTY = btNewBVFigure.BudgetVersionFig01FinQTY + tNewBudgetVersionFigure.BudgetVersionFig01FinQTY.
                if tNewBudgetVersionFigure.BudgetVersionFig01SFinTC = ? then assign tNewBudgetVersionFigure.BudgetVersionFig01SFinTC = 0.
					else assign btNewBVFigure.BudgetVersionFig01SFinTC = btNewBVFigure.BudgetVersionFig01SFinTC + tNewBudgetVersionFigure.BudgetVersionFig01SFinTC.
                if tNewBudgetVersionFigure.BudgetVersionFig01FinETC = ? then assign tNewBudgetVersionFigure.BudgetVersionFig01FinETC = 0.
					else assign btNewBVFigure.BudgetVersionFig01FinETC = btNewBVFigure.BudgetVersionFig01FinETC + tNewBudgetVersionFigure.BudgetVersionFig01FinETC.
                if tNewBudgetVersionFigure.BudgetVersionFig02FinTC = ? then assign tNewBudgetVersionFigure.BudgetVersionFig02FinTC = 0.
					else assign btNewBVFigure.BudgetVersionFig02FinTC  = btNewBVFigure.BudgetVersionFig02FinTC + tNewBudgetVersionFigure.BudgetVersionFig02FinTC.
				if tNewBudgetVersionFigure.BudgetVersionFig02FinQTY = ? then assign tNewBudgetVersionFigure.BudgetVersionFig02FinQTY = 0.
					else assign btNewBVFigure.BudgetVersionFig02FinQTY = btNewBVFigure.BudgetVersionFig02FinQTY + tNewBudgetVersionFigure.BudgetVersionFig02FinQTY.
                if tNewBudgetVersionFigure.BudgetVersionFig02SFinTC = ? then assign tNewBudgetVersionFigure.BudgetVersionFig02SFinTC = 0.
					else assign btNewBVFigure.BudgetVersionFig02SFinTC = btNewBVFigure.BudgetVersionFig02SFinTC + tNewBudgetVersionFigure.BudgetVersionFig02SFinTC.
                if tNewBudgetVersionFigure.BudgetVersionFig03FinTC = ? then assign tNewBudgetVersionFigure.BudgetVersionFig03FinTC = 0.
					else assign btNewBVFigure.BudgetVersionFig03FinTC  = btNewBVFigure.BudgetVersionFig03FinTC + tNewBudgetVersionFigure.BudgetVersionFig03FinTC.
				if tNewBudgetVersionFigure.BudgetVersionFig03FinQTY = ? then assign tNewBudgetVersionFigure.BudgetVersionFig03FinQTY = 0.
					else assign btNewBVFigure.BudgetVersionFig03FinQTY = btNewBVFigure.BudgetVersionFig03FinQTY + tNewBudgetVersionFigure.BudgetVersionFig03FinQTY.
                if tNewBudgetVersionFigure.BudgetVersionFig03SFinTC = ? then assign tNewBudgetVersionFigure.BudgetVersionFig03SFinTC = 0.
					else assign btNewBVFigure.BudgetVersionFig03SFinTC = btNewBVFigure.BudgetVersionFig03SFinTC + tNewBudgetVersionFigure.BudgetVersionFig03SFinTC.
                if tNewBudgetVersionFigure.BudgetVersionFig04FinTC = ? then assign tNewBudgetVersionFigure.BudgetVersionFig04FinTC = 0.
					else assign btNewBVFigure.BudgetVersionFig04FinTC  = btNewBVFigure.BudgetVersionFig04FinTC + tNewBudgetVersionFigure.BudgetVersionFig04FinTC.
				if tNewBudgetVersionFigure.BudgetVersionFig04FinQTY = ? then assign tNewBudgetVersionFigure.BudgetVersionFig04FinQTY = 0.
					else assign btNewBVFigure.BudgetVersionFig04FinQTY = btNewBVFigure.BudgetVersionFig04FinQTY + tNewBudgetVersionFigure.BudgetVersionFig04FinQTY.
                if tNewBudgetVersionFigure.BudgetVersionFig04SFinTC = ? then assign tNewBudgetVersionFigure.BudgetVersionFig04SFinTC = 0.
					else assign btNewBVFigure.BudgetVersionFig04SFinTC = btNewBVFigure.BudgetVersionFig04SFinTC + tNewBudgetVersionFigure.BudgetVersionFig04SFinTC.
                if tNewBudgetVersionFigure.BudgetVersionFig05FinTC = ? then assign tNewBudgetVersionFigure.BudgetVersionFig05FinTC = 0.
					else assign btNewBVFigure.BudgetVersionFig05FinTC  = btNewBVFigure.BudgetVersionFig05FinTC + tNewBudgetVersionFigure.BudgetVersionFig05FinTC.
				if tNewBudgetVersionFigure.BudgetVersionFig05FinQTY = ? then assign tNewBudgetVersionFigure.BudgetVersionFig05FinQTY = 0.
					else assign btNewBVFigure.BudgetVersionFig05FinQTY = btNewBVFigure.BudgetVersionFig05FinQTY + tNewBudgetVersionFigure.BudgetVersionFig05FinQTY.
                if tNewBudgetVersionFigure.BudgetVersionFig05SFinTC = ? then assign tNewBudgetVersionFigure.BudgetVersionFig05SFinTC = 0.
					else assign btNewBVFigure.BudgetVersionFig05SFinTC = btNewBVFigure.BudgetVersionFig05SFinTC + tNewBudgetVersionFigure.BudgetVersionFig05SFinTC.
                if tNewBudgetVersionFigure.BudgetVersionFig06FinTC = ? then assign tNewBudgetVersionFigure.BudgetVersionFig06FinTC = 0.
					else assign btNewBVFigure.BudgetVersionFig06FinTC  = btNewBVFigure.BudgetVersionFig06FinTC + tNewBudgetVersionFigure.BudgetVersionFig06FinTC.
				if tNewBudgetVersionFigure.BudgetVersionFig06FinQTY = ? then assign tNewBudgetVersionFigure.BudgetVersionFig06FinQTY = 0.
					else assign btNewBVFigure.BudgetVersionFig06FinQTY = btNewBVFigure.BudgetVersionFig06FinQTY + tNewBudgetVersionFigure.BudgetVersionFig06FinQTY.
                if tNewBudgetVersionFigure.BudgetVersionFig06SFinTC = ? then assign tNewBudgetVersionFigure.BudgetVersionFig06SFinTC = 0.
					else assign btNewBVFigure.BudgetVersionFig06SFinTC = btNewBVFigure.BudgetVersionFig06SFinTC + tNewBudgetVersionFigure.BudgetVersionFig06SFinTC.
                if tNewBudgetVersionFigure.BudgetVersionFig07FinTC = ? then assign tNewBudgetVersionFigure.BudgetVersionFig07FinTC = 0.
					else assign btNewBVFigure.BudgetVersionFig07FinTC  = btNewBVFigure.BudgetVersionFig07FinTC + tNewBudgetVersionFigure.BudgetVersionFig07FinTC.
				if tNewBudgetVersionFigure.BudgetVersionFig07FinQTY = ? then assign tNewBudgetVersionFigure.BudgetVersionFig07FinQTY = 0.
					else assign btNewBVFigure.BudgetVersionFig07FinQTY = btNewBVFigure.BudgetVersionFig07FinQTY + tNewBudgetVersionFigure.BudgetVersionFig07FinQTY.
                if tNewBudgetVersionFigure.BudgetVersionFig07SFinTC = ? then assign tNewBudgetVersionFigure.BudgetVersionFig07SFinTC = 0.
					else assign btNewBVFigure.BudgetVersionFig07SFinTC = btNewBVFigure.BudgetVersionFig07SFinTC + tNewBudgetVersionFigure.BudgetVersionFig07SFinTC.
                if tNewBudgetVersionFigure.BudgetVersionFig08FinTC = ? then assign tNewBudgetVersionFigure.BudgetVersionFig08FinTC = 0.
					else assign btNewBVFigure.BudgetVersionFig08FinTC  = btNewBVFigure.BudgetVersionFig08FinTC + tNewBudgetVersionFigure.BudgetVersionFig08FinTC.
				if tNewBudgetVersionFigure.BudgetVersionFig08FinQTY = ? then assign tNewBudgetVersionFigure.BudgetVersionFig08FinQTY = 0.
					else assign btNewBVFigure.BudgetVersionFig08FinQTY = btNewBVFigure.BudgetVersionFig08FinQTY + tNewBudgetVersionFigure.BudgetVersionFig08FinQTY.
                if tNewBudgetVersionFigure.BudgetVersionFig08SFinTC = ? then assign tNewBudgetVersionFigure.BudgetVersionFig08SFinTC = 0.
					else assign btNewBVFigure.BudgetVersionFig08SFinTC = btNewBVFigure.BudgetVersionFig08SFinTC + tNewBudgetVersionFigure.BudgetVersionFig08SFinTC.
                if tNewBudgetVersionFigure.BudgetVersionFig09FinTC = ? then assign tNewBudgetVersionFigure.BudgetVersionFig09FinTC = 0.
					else assign btNewBVFigure.BudgetVersionFig09FinTC  = btNewBVFigure.BudgetVersionFig09FinTC + tNewBudgetVersionFigure.BudgetVersionFig09FinTC.
				if tNewBudgetVersionFigure.BudgetVersionFig09FinQTY = ? then assign tNewBudgetVersionFigure.BudgetVersionFig09FinQTY = 0.
					else assign btNewBVFigure.BudgetVersionFig09FinQTY = btNewBVFigure.BudgetVersionFig09FinQTY + tNewBudgetVersionFigure.BudgetVersionFig09FinQTY.
                if tNewBudgetVersionFigure.BudgetVersionFig09SFinTC = ? then assign tNewBudgetVersionFigure.BudgetVersionFig09SFinTC = 0.
					else assign btNewBVFigure.BudgetVersionFig09SFinTC = btNewBVFigure.BudgetVersionFig09SFinTC + tNewBudgetVersionFigure.BudgetVersionFig09SFinTC.
                if tNewBudgetVersionFigure.BudgetVersionFig10FinTC = ? then assign tNewBudgetVersionFigure.BudgetVersionFig10FinTC = 0.
					else assign btNewBVFigure.BudgetVersionFig10FinTC  = btNewBVFigure.BudgetVersionFig10FinTC + tNewBudgetVersionFigure.BudgetVersionFig10FinTC.
				if tNewBudgetVersionFigure.BudgetVersionFig10FinQTY = ? then assign tNewBudgetVersionFigure.BudgetVersionFig10FinQTY = 0.
					else assign btNewBVFigure.BudgetVersionFig10FinQTY = btNewBVFigure.BudgetVersionFig10FinQTY + tNewBudgetVersionFigure.BudgetVersionFig10FinQTY.
                if tNewBudgetVersionFigure.BudgetVersionFig10SFinTC = ? then assign tNewBudgetVersionFigure.BudgetVersionFig10SFinTC = 0.
					else assign btNewBVFigure.BudgetVersionFig10SFinTC = btNewBVFigure.BudgetVersionFig10SFinTC + tNewBudgetVersionFigure.BudgetVersionFig10SFinTC.
                if tNewBudgetVersionFigure.BudgetVersionFig11FinTC = ? then assign tNewBudgetVersionFigure.BudgetVersionFig11FinTC = 0.
					else assign btNewBVFigure.BudgetVersionFig11FinTC  = btNewBVFigure.BudgetVersionFig11FinTC + tNewBudgetVersionFigure.BudgetVersionFig11FinTC.
				if tNewBudgetVersionFigure.BudgetVersionFig11FinQTY = ? then assign tNewBudgetVersionFigure.BudgetVersionFig11FinQTY = 0.
					else assign btNewBVFigure.BudgetVersionFig11FinQTY = btNewBVFigure.BudgetVersionFig11FinQTY + tNewBudgetVersionFigure.BudgetVersionFig11FinQTY.
                if tNewBudgetVersionFigure.BudgetVersionFig11SFinTC = ? then assign tNewBudgetVersionFigure.BudgetVersionFig11SFinTC = 0.
					else assign btNewBVFigure.BudgetVersionFig11SFinTC = btNewBVFigure.BudgetVersionFig11SFinTC + tNewBudgetVersionFigure.BudgetVersionFig11SFinTC.
                if tNewBudgetVersionFigure.BudgetVersionFig12FinTC = ? then assign tNewBudgetVersionFigure.BudgetVersionFig12FinTC = 0.
					else assign btNewBVFigure.BudgetVersionFig12FinTC  = btNewBVFigure.BudgetVersionFig12FinTC + tNewBudgetVersionFigure.BudgetVersionFig12FinTC.
				if tNewBudgetVersionFigure.BudgetVersionFig12FinQTY = ? then assign tNewBudgetVersionFigure.BudgetVersionFig12FinQTY = 0.
					else assign btNewBVFigure.BudgetVersionFig12FinQTY = btNewBVFigure.BudgetVersionFig12FinQTY + tNewBudgetVersionFigure.BudgetVersionFig12FinQTY.
                if tNewBudgetVersionFigure.BudgetVersionFig12SFinTC = ? then assign tNewBudgetVersionFigure.BudgetVersionFig12SFinTC = 0.
					else assign btNewBVFigure.BudgetVersionFig12SFinTC = btNewBVFigure.BudgetVersionFig12SFinTC + tNewBudgetVersionFigure.BudgetVersionFig12SFinTC.
                if tNewBudgetVersionFigure.BudgetVersionFig13FinTC = ? then assign tNewBudgetVersionFigure.BudgetVersionFig13FinTC = 0.
					else assign btNewBVFigure.BudgetVersionFig13FinTC  = btNewBVFigure.BudgetVersionFig13FinTC + tNewBudgetVersionFigure.BudgetVersionFig13FinTC.
				if tNewBudgetVersionFigure.BudgetVersionFig13FinQTY = ? then assign tNewBudgetVersionFigure.BudgetVersionFig13FinQTY = 0.
					else assign btNewBVFigure.BudgetVersionFig13FinQTY = btNewBVFigure.BudgetVersionFig13FinQTY + tNewBudgetVersionFigure.BudgetVersionFig13FinQTY.
                if tNewBudgetVersionFigure.BudgetVersionFig13SFinTC = ? then assign tNewBudgetVersionFigure.BudgetVersionFig13SFinTC = 0.
					else assign btNewBVFigure.BudgetVersionFig13SFinTC = btNewBVFigure.BudgetVersionFig13SFinTC + tNewBudgetVersionFigure.BudgetVersionFig13SFinTC.
                if tNewBudgetVersionFigure.BudgetVersionFig14FinTC = ? then assign tNewBudgetVersionFigure.BudgetVersionFig14FinTC = 0.
					else assign btNewBVFigure.BudgetVersionFig14FinTC  = btNewBVFigure.BudgetVersionFig14FinTC + tNewBudgetVersionFigure.BudgetVersionFig14FinTC.
				if tNewBudgetVersionFigure.BudgetVersionFig14FinQTY = ? then assign tNewBudgetVersionFigure.BudgetVersionFig14FinQTY = 0.
					else assign btNewBVFigure.BudgetVersionFig14FinQTY = btNewBVFigure.BudgetVersionFig14FinQTY + tNewBudgetVersionFigure.BudgetVersionFig14FinQTY.
                if tNewBudgetVersionFigure.BudgetVersionFig14SFinTC = ? then assign tNewBudgetVersionFigure.BudgetVersionFig14SFinTC = 0.
					else assign btNewBVFigure.BudgetVersionFig14SFinTC = btNewBVFigure.BudgetVersionFig14SFinTC + tNewBudgetVersionFigure.BudgetVersionFig14SFinTC.
                if tNewBudgetVersionFigure.BudgetVersionFig15FinTC = ? then assign tNewBudgetVersionFigure.BudgetVersionFig15FinTC = 0.
					else assign btNewBVFigure.BudgetVersionFig15FinTC  = btNewBVFigure.BudgetVersionFig15FinTC + tNewBudgetVersionFigure.BudgetVersionFig15FinTC.
				if tNewBudgetVersionFigure.BudgetVersionFig15FinQTY = ? then assign tNewBudgetVersionFigure.BudgetVersionFig15FinQTY = 0.
					else assign btNewBVFigure.BudgetVersionFig15FinQTY = btNewBVFigure.BudgetVersionFig15FinQTY + tNewBudgetVersionFigure.BudgetVersionFig15FinQTY.
                if tNewBudgetVersionFigure.BudgetVersionFig15SFinTC = ? then assign tNewBudgetVersionFigure.BudgetVersionFig15SFinTC = 0.
					else assign btNewBVFigure.BudgetVersionFig15SFinTC = btNewBVFigure.BudgetVersionFig15SFinTC + tNewBudgetVersionFigure.BudgetVersionFig15SFinTC.
                if tNewBudgetVersionFigure.BudgetVersionFig16FinTC = ? then assign tNewBudgetVersionFigure.BudgetVersionFig16FinTC = 0.
					else assign btNewBVFigure.BudgetVersionFig16FinTC  = btNewBVFigure.BudgetVersionFig16FinTC + tNewBudgetVersionFigure.BudgetVersionFig16FinTC.
				if tNewBudgetVersionFigure.BudgetVersionFig16FinQTY = ? then assign tNewBudgetVersionFigure.BudgetVersionFig16FinQTY = 0.
					else assign btNewBVFigure.BudgetVersionFig16FinQTY = btNewBVFigure.BudgetVersionFig16FinQTY + tNewBudgetVersionFigure.BudgetVersionFig16FinQTY.
                if tNewBudgetVersionFigure.BudgetVersionFig16SFinTC = ? then assign tNewBudgetVersionFigure.BudgetVersionFig16SFinTC = 0.
					else assign btNewBVFigure.BudgetVersionFig16SFinTC = btNewBVFigure.BudgetVersionFig16SFinTC + tNewBudgetVersionFigure.BudgetVersionFig16SFinTC.
                if tNewBudgetVersionFigure.BudgetVersionFig17FinTC = ? then assign tNewBudgetVersionFigure.BudgetVersionFig17FinTC = 0.
					else assign btNewBVFigure.BudgetVersionFig17FinTC  = btNewBVFigure.BudgetVersionFig17FinTC + tNewBudgetVersionFigure.BudgetVersionFig17FinTC.
				if tNewBudgetVersionFigure.BudgetVersionFig17FinQTY = ? then assign tNewBudgetVersionFigure.BudgetVersionFig17FinQTY = 0.
					else assign btNewBVFigure.BudgetVersionFig17FinQTY = btNewBVFigure.BudgetVersionFig17FinQTY + tNewBudgetVersionFigure.BudgetVersionFig17FinQTY.
                if tNewBudgetVersionFigure.BudgetVersionFig17SFinTC = ? then assign tNewBudgetVersionFigure.BudgetVersionFig17SFinTC = 0.
					else assign btNewBVFigure.BudgetVersionFig17SFinTC = btNewBVFigure.BudgetVersionFig17SFinTC + tNewBudgetVersionFigure.BudgetVersionFig17SFinTC.
                if tNewBudgetVersionFigure.BudgetVersionFig18FinTC = ? then assign tNewBudgetVersionFigure.BudgetVersionFig18FinTC = 0.
					else assign btNewBVFigure.BudgetVersionFig18FinTC  = btNewBVFigure.BudgetVersionFig18FinTC + tNewBudgetVersionFigure.BudgetVersionFig18FinTC.
				if tNewBudgetVersionFigure.BudgetVersionFig18FinQTY = ? then assign tNewBudgetVersionFigure.BudgetVersionFig18FinQTY = 0.
					else assign btNewBVFigure.BudgetVersionFig18FinQTY = btNewBVFigure.BudgetVersionFig18FinQTY + tNewBudgetVersionFigure.BudgetVersionFig18FinQTY.
                if tNewBudgetVersionFigure.BudgetVersionFig18SFinTC = ? then assign tNewBudgetVersionFigure.BudgetVersionFig18SFinTC = 0.
					else assign btNewBVFigure.BudgetVersionFig18SFinTC = btNewBVFigure.BudgetVersionFig18SFinTC + tNewBudgetVersionFigure.BudgetVersionFig18SFinTC.
                if tNewBudgetVersionFigure.BudgetVersionFig19FinTC = ? then assign tNewBudgetVersionFigure.BudgetVersionFig19FinTC = 0.
					else assign btNewBVFigure.BudgetVersionFig19FinTC  = btNewBVFigure.BudgetVersionFig19FinTC + tNewBudgetVersionFigure.BudgetVersionFig19FinTC.
				if tNewBudgetVersionFigure.BudgetVersionFig19FinQTY = ? then assign tNewBudgetVersionFigure.BudgetVersionFig19FinQTY = 0.
					else assign btNewBVFigure.BudgetVersionFig19FinQTY = btNewBVFigure.BudgetVersionFig19FinQTY + tNewBudgetVersionFigure.BudgetVersionFig19FinQTY.
                if tNewBudgetVersionFigure.BudgetVersionFig19SFinTC = ? then assign tNewBudgetVersionFigure.BudgetVersionFig19SFinTC = 0.
					else assign btNewBVFigure.BudgetVersionFig19SFinTC = btNewBVFigure.BudgetVersionFig19SFinTC + tNewBudgetVersionFigure.BudgetVersionFig19SFinTC.
                if tNewBudgetVersionFigure.BudgetVersionFig20FinTC = ? then assign tNewBudgetVersionFigure.BudgetVersionFig20FinTC = 0.
					else assign btNewBVFigure.BudgetVersionFig20FinTC  = btNewBVFigure.BudgetVersionFig20FinTC + tNewBudgetVersionFigure.BudgetVersionFig20FinTC.
				if tNewBudgetVersionFigure.BudgetVersionFig20FinQTY = ? then assign tNewBudgetVersionFigure.BudgetVersionFig20FinQTY = 0.
					else assign btNewBVFigure.BudgetVersionFig20FinQTY = btNewBVFigure.BudgetVersionFig20FinQTY + tNewBudgetVersionFigure.BudgetVersionFig20FinQTY.
                if tNewBudgetVersionFigure.BudgetVersionFig20SFinTC = ? then assign tNewBudgetVersionFigure.BudgetVersionFig20SFinTC = 0.
					else assign btNewBVFigure.BudgetVersionFig20SFinTC = btNewBVFigure.BudgetVersionFig20SFinTC + tNewBudgetVersionFigure.BudgetVersionFig20SFinTC.
                if tNewBudgetVersionFigure.BudgetVersionFig21FinTC = ? then assign tNewBudgetVersionFigure.BudgetVersionFig21FinTC = 0.
					else assign btNewBVFigure.BudgetVersionFig21FinTC  = btNewBVFigure.BudgetVersionFig21FinTC + tNewBudgetVersionFigure.BudgetVersionFig21FinTC.
				if tNewBudgetVersionFigure.BudgetVersionFig21FinQTY = ? then assign tNewBudgetVersionFigure.BudgetVersionFig21FinQTY = 0.
					else assign btNewBVFigure.BudgetVersionFig21FinQTY = btNewBVFigure.BudgetVersionFig21FinQTY + tNewBudgetVersionFigure.BudgetVersionFig21FinQTY.
                if tNewBudgetVersionFigure.BudgetVersionFig21SFinTC = ? then assign tNewBudgetVersionFigure.BudgetVersionFig21SFinTC = 0.
					else assign btNewBVFigure.BudgetVersionFig21SFinTC = btNewBVFigure.BudgetVersionFig21SFinTC + tNewBudgetVersionFigure.BudgetVersionFig21SFinTC.
                if tNewBudgetVersionFigure.BudgetVersionFig22FinTC = ? then assign tNewBudgetVersionFigure.BudgetVersionFig22FinTC = 0.
					else assign btNewBVFigure.BudgetVersionFig22FinTC  = btNewBVFigure.BudgetVersionFig22FinTC + tNewBudgetVersionFigure.BudgetVersionFig22FinTC.
				if tNewBudgetVersionFigure.BudgetVersionFig22FinQTY = ? then assign tNewBudgetVersionFigure.BudgetVersionFig22FinQTY = 0.
					else assign btNewBVFigure.BudgetVersionFig22FinQTY = btNewBVFigure.BudgetVersionFig22FinQTY + tNewBudgetVersionFigure.BudgetVersionFig22FinQTY.
                if tNewBudgetVersionFigure.BudgetVersionFig22SFinTC = ? then assign tNewBudgetVersionFigure.BudgetVersionFig22SFinTC = 0.
					else assign btNewBVFigure.BudgetVersionFig22SFinTC = btNewBVFigure.BudgetVersionFig22SFinTC + tNewBudgetVersionFigure.BudgetVersionFig22SFinTC.
                if tNewBudgetVersionFigure.BudgetVersionFig23FinTC = ? then assign tNewBudgetVersionFigure.BudgetVersionFig23FinTC = 0.
					else assign btNewBVFigure.BudgetVersionFig23FinTC  = btNewBVFigure.BudgetVersionFig23FinTC + tNewBudgetVersionFigure.BudgetVersionFig23FinTC.
				if tNewBudgetVersionFigure.BudgetVersionFig23FinQTY = ? then assign tNewBudgetVersionFigure.BudgetVersionFig23FinQTY = 0.
					else assign btNewBVFigure.BudgetVersionFig23FinQTY = btNewBVFigure.BudgetVersionFig23FinQTY + tNewBudgetVersionFigure.BudgetVersionFig23FinQTY.
                if tNewBudgetVersionFigure.BudgetVersionFig23SFinTC = ? then assign tNewBudgetVersionFigure.BudgetVersionFig23SFinTC = 0.
					else assign btNewBVFigure.BudgetVersionFig23SFinTC = btNewBVFigure.BudgetVersionFig23SFinTC + tNewBudgetVersionFigure.BudgetVersionFig23SFinTC.
                if tNewBudgetVersionFigure.BudgetVersionFig24FinTC = ? then assign tNewBudgetVersionFigure.BudgetVersionFig24FinTC = 0.
					else assign btNewBVFigure.BudgetVersionFig24FinTC  = btNewBVFigure.BudgetVersionFig24FinTC + tNewBudgetVersionFigure.BudgetVersionFig24FinTC.
				if tNewBudgetVersionFigure.BudgetVersionFig24FinQTY = ? then assign tNewBudgetVersionFigure.BudgetVersionFig24FinQTY = 0.
					else assign btNewBVFigure.BudgetVersionFig24FinQTY = btNewBVFigure.BudgetVersionFig24FinQTY + tNewBudgetVersionFigure.BudgetVersionFig24FinQTY.
                if tNewBudgetVersionFigure.BudgetVersionFig24SFinTC = ? then assign tNewBudgetVersionFigure.BudgetVersionFig24SFinTC = 0.
					else assign btNewBVFigure.BudgetVersionFig24SFinTC = btNewBVFigure.BudgetVersionFig24SFinTC + tNewBudgetVersionFigure.BudgetVersionFig24SFinTC.

        if viParentBudgetWBSID = 0 or 
           viParentBudgetWBSID = ? 
        then leave.
    
    END. /* repeat */
    
end. /* for each tNewBudgetVersionFigure where  */