project QadFinancials > class BReportTree > method GetChildNodes

Description

The procedure will invoke itself recursively, to return a dataitem containing all the child nodes of the input node and also the input node itselt.


Parameters


iiFRWTreeNode_IDinputinteger
oiReturnStatusoutputintegerReturn status of the method.


Internal usage


QadFinancials
method BReportTree.ApiGetChildNodeList
method BReportTree.DataLoadByInput
method BReportTree.GetChildNodes


program code (program9/breporttree.p)

do transaction on error undo, throw:
        
    find first tTreeNodeIdCodeList where tTreeNodeIdCodeList.tiFRWTreeNode_ID = iiFRWTreeNode_ID no-error.
    if available tTreeNodeIdCodeList then 
        tTreeNodeIdCodeList.tlReportNodeIsInTreeList = yes.

    for each FRWTreeNode where FRWTreeNode.ParentFRWTreeNode_ID = iiFRWTreeNode_ID no-lock:
        create tTreeNodeIdCodeList.
        assign tTreeNodeIdCodeList.tiFRWTreeNode_ID = FRWTreeNode.FRWTreeNode_ID
              /* tTreeNodeIdCodeList.tcFRWTreeNodeCode = tqReportTreeByParentId.tcFRWTreeNodeCode*/
               tTreeNodeIdCodeList.tlReportNodeIsInTreeList = no.
    end.

    find first tTreeNodeIdCodeList where tTreeNodeIdCodeList.tlReportNodeIsInTreeList = no no-error.
    if available tTreeNodeIdCodeList then
    do:
            <M-28 run GetChildNodes
           (input  tTreeNodeIdCodeList.tiFRWTreeNode_ID (iiFRWTreeNode_ID), 
            output viFcReturnSuper (oiReturnStatus)) in BReportTree>       
        end.
    
end.