project QadFinancials > class BPaymentSelection > method ExportUNIFIGroupHeader


Parameters


ihXMLDocinputhandle
ihXMLParentNodeinputhandle
ohXMLCompanyPostalAddressoutputhandle
oiReturnStatusoutputintegerReturn status of the method.


Internal usage


QadFinancials
method BPaymentSelection.ExportUNIFI


program code (program7/bpaymentselection.p)

/********************************************************************************************/
/* Prerequisite ; available records:                                                        */
/*  - tCCollectionPaySel                                                                    */
/*  - tPaySel                                                                               */
/*  - tqCompanyPropertyByBusinessRel                                                        */
/*  - tqVatNumberPrim                                                                       */
/********************************************************************************************/

assign oiReturnStatus = -98.

create X-NODEREF  vhXMLElement in widget-pool "non-persistent".
create X-NODEREF  vhXMLText in widget-pool "non-persistent".
create X-NODEREF  vhXMLGrpHdr in widget-pool "non-persistent".
create X-NODEREF  vhXMLInitiatingParty in widget-pool "non-persistent".
create X-NODEREF  ohXMLCompanyPostalAddress in widget-pool "non-persistent".
create X-NODEREF  vhXMLId in widget-pool "non-persistent".
create X-NODEREF  vhXMLOrgId in widget-pool "non-persistent".


/* <GrpHdr> */
ihXMLDoc:CREATE-NODE(vhXMLGrpHdr, "GrpHdr":U, "ELEMENT":U). 
ihXMLParentNode:APPEND-CHILD(vhXMLGrpHdr).

    /* <GrpId> */
    ihXMLDoc:CREATE-NODE(vhXMLElement, "GrpId":U, "ELEMENT":U). 
    vhXMLGrpHdr:APPEND-CHILD(vhXMLElement).

    ihXMLDoc:CREATE-NODE(vhXMLText, "":U, "TEXT":U). 
    vhXMLText:NODE-VALUE = substring(tPaymentSelectionForUNIFI.PaySelCode + " ":U +
                                     string(tCCollectionPaySel.CCollectionYear) + "/":U +
                                     string(tCCollectionPaySel.CCollectionNumber), 1, 35,"CHARACTER":U).
    vhXMLElement:APPEND-CHILD(vhXMLText).
    /* </GrpId> */

    /* <CreDtTm> */
    ihXMLDoc:CREATE-NODE(vhXMLElement, "CreDtTm":U, "ELEMENT":U). 
    vhXMLGrpHdr:APPEND-CHILD(vhXMLElement).

    ihXMLDoc:CREATE-NODE(vhXMLText, "":U, "TEXT":U). 
    vhXMLText:NODE-VALUE = ISO-DATE(NOW).
    vhXMLElement:APPEND-CHILD(vhXMLText).
    /* </CreDtTm> */

    /* <Grpg> */
    ihXMLDoc:CREATE-NODE(vhXMLElement, "Grpg":U, "ELEMENT":U). 
    vhXMLGrpHdr:APPEND-CHILD(vhXMLElement).

    ihXMLDoc:CREATE-NODE(vhXMLText, "":U, "TEXT":U). 
    vhXMLText:NODE-VALUE = "true":U.
    vhXMLElement:APPEND-CHILD(vhXMLText).
    /* </Grpg> */

    /* <InitgPty> */
    ihXMLDoc:CREATE-NODE(vhXMLInitiatingParty, "InitgPty":U, "ELEMENT":U). 
    vhXMLGrpHdr:APPEND-CHILD(vhXMLInitiatingParty).

        /* <Nm> */
        ihXMLDoc:CREATE-NODE(vhXMLElement, "Nm":U, "ELEMENT":U). 
        vhXMLInitiatingParty:APPEND-CHILD(vhXMLElement).

        ihXMLDoc:CREATE-NODE(vhXMLText, "":U, "TEXT":U). 
        vhXMLText:NODE-VALUE = substring(tqCompanyPropertyByBusinessRel.tcBusinessRelationName1, 1, 70,"CHARACTER":U).
        vhXMLElement:APPEND-CHILD(vhXMLText).
        /* </Nm> */

        /* <PstlAdr> */
        ihXMLDoc:CREATE-NODE(ohXMLCompanyPostalAddress, "PstlAdr":U, "ELEMENT":U). 
        vhXMLInitiatingParty:APPEND-CHILD(ohXMLCompanyPostalAddress).

            /* <AdrLine>  #1 */
            if tqCompanyPropertyByBusinessRel.tcAddressStreet1 <> "":U
            then do:
                ihXMLDoc:CREATE-NODE(vhXMLElement, "AdrLine":U, "ELEMENT":U). 
                ohXMLCompanyPostalAddress:APPEND-CHILD(vhXMLElement).
            
                ihXMLDoc:CREATE-NODE(vhXMLText, "":U, "TEXT":U). 
                vhXMLText:NODE-VALUE = substring(tqCompanyPropertyByBusinessRel.tcAddressStreet1, 1, 70,"CHARACTER":U).
                vhXMLElement:APPEND-CHILD(vhXMLText).
            end.
            /* <AdrLine>  #1 */

            /* <AdrLine>  #2 */
            if tqCompanyPropertyByBusinessRel.tcAddressStreet2 <> "":U
            then do:
                ihXMLDoc:CREATE-NODE(vhXMLElement, "AdrLine":U, "ELEMENT":U). 
                ohXMLCompanyPostalAddress:APPEND-CHILD(vhXMLElement).
            
                ihXMLDoc:CREATE-NODE(vhXMLText, "":U, "TEXT":U). 
                vhXMLText:NODE-VALUE = substring(tqCompanyPropertyByBusinessRel.tcAddressStreet2, 1, 70,"CHARACTER":U).
                vhXMLElement:APPEND-CHILD(vhXMLText).
            end.
            /* <AdrLine>  #2 */
            
             /* <AdrLine>  #3 */
            if tqCompanyPropertyByBusinessRel.tcAddressStreet3 <> "":U
            then do:
                ihXMLDoc:CREATE-NODE(vhXMLElement, "AdrLine":U, "ELEMENT":U). 
                ohXMLCompanyPostalAddress:APPEND-CHILD(vhXMLElement).
            
                ihXMLDoc:CREATE-NODE(vhXMLText, "":U, "TEXT":U). 
                vhXMLText:NODE-VALUE = substring(tqCompanyPropertyByBusinessRel.tcAddressStreet3, 1, 70,"CHARACTER":U).
                vhXMLElement:APPEND-CHILD(vhXMLText).
            end.
            /* <AdrLine>  #3 */

            /* <AdrLine>  #3 */
            if tqCompanyPropertyByBusinessRel.tcAddressZip <> "":U or
               tqCompanyPropertyByBusinessRel.tcAddressCity <> "":U
            then do:
                ihXMLDoc:CREATE-NODE(vhXMLElement, "AdrLine":U, "ELEMENT":U). 
                ohXMLCompanyPostalAddress:APPEND-CHILD(vhXMLElement).
            
                ihXMLDoc:CREATE-NODE(vhXMLText, "":U, "TEXT":U). 
                vhXMLText:NODE-VALUE = substring(tqCompanyPropertyByBusinessRel.tcAddressZip + ' ':U +
                                                 tqCompanyPropertyByBusinessRel.tcAddressCity, 1, 70,"CHARACTER":U).
                vhXMLElement:APPEND-CHILD(vhXMLText).
            end.
            /* <AdrLine>  #3 */

            /* <AdrLine>  #4 */
            if tqCompanyPropertyByBusinessRel.tcCountyDescription <> "":U or
               tqCompanyPropertyByBusinessRel.tcStateCode <> "":U
            then do:
                ihXMLDoc:CREATE-NODE(vhXMLElement, "AdrLine":U, "ELEMENT":U). 
                ohXMLCompanyPostalAddress:APPEND-CHILD(vhXMLElement).
            
                ihXMLDoc:CREATE-NODE(vhXMLText, "":U, "TEXT":U). 
                if tqCompanyPropertyByBusinessRel.tcCountyDescription <> "":U and
                   tqCompanyPropertyByBusinessRel.tcStateCode <> "":U
                then vhXMLText:NODE-VALUE = substring(tqCompanyPropertyByBusinessRel.tcCountyDescription + ", ":U +
                                                      tqCompanyPropertyByBusinessRel.tcStateCode, 1, 70,"CHARACTER":U).
                else vhXMLText:NODE-VALUE = substring(tqCompanyPropertyByBusinessRel.tcCountyDescription +
                                                      tqCompanyPropertyByBusinessRel.tcStateCode, 1, 70,"CHARACTER":U).
                vhXMLElement:APPEND-CHILD(vhXMLText).
            end.
            /* <AdrLine>  #4 */

            /* <AdrLine>  #5 */
            if tqCompanyPropertyByBusinessRel.tcCountryDescription <> "":U
            then do:
                ihXMLDoc:CREATE-NODE(vhXMLElement, "AdrLine":U, "ELEMENT":U). 
                ohXMLCompanyPostalAddress:APPEND-CHILD(vhXMLElement).
            
                ihXMLDoc:CREATE-NODE(vhXMLText, "":U, "TEXT":U). 
                vhXMLText:NODE-VALUE = substring(tqCompanyPropertyByBusinessRel.tcCountryDescription, 1, 70,"CHARACTER":U).
                vhXMLElement:APPEND-CHILD(vhXMLText).
            end.
            /* <AdrLine>  #5 */

            /* <Ctry> */
            if tqCompanyPropertyByBusinessRel.tcAddressCountryCode <> "":U
            then do:
                ihXMLDoc:CREATE-NODE(vhXMLElement, "Ctry":U, "ELEMENT":U). 
                ohXMLCompanyPostalAddress:APPEND-CHILD(vhXMLElement).
            
                ihXMLDoc:CREATE-NODE(vhXMLText, "":U, "TEXT":U). 
                vhXMLText:NODE-VALUE = substring(tqCompanyPropertyByBusinessRel.tcAddressCountryCode, 1, 2,"CHARACTER":U).
                vhXMLElement:APPEND-CHILD(vhXMLText).
            end.
            /* </Ctry> */

        /* </PstlAdr> */

        /* <Id> */
        ihXMLDoc:CREATE-NODE(vhXMLId, "Id":U, "ELEMENT":U). 
        vhXMLInitiatingParty:APPEND-CHILD(vhXMLId).

            /* <OrgId> */
            ihXMLDoc:CREATE-NODE(vhXMLOrgId, "OrgId":U, "ELEMENT":U). 
            vhXMLId:APPEND-CHILD(vhXMLOrgId).

                /* <TaxIdNb> */
                ihXMLDoc:CREATE-NODE(vhXMLElement, "TaxIdNb":U, "ELEMENT":U). 
                vhXMLOrgId:APPEND-CHILD(vhXMLElement).
            
                ihXMLDoc:CREATE-NODE(vhXMLText, "":U, "TEXT":U). 
                vhXMLText:NODE-VALUE = substring(tqVatNumberPrim.tcVatNumberIdentity, 1, 35,"CHARACTER":U).
                vhXMLElement:APPEND-CHILD(vhXMLText).
                /* </TaxIdNb> */

            /* </OrgId> */

        /* </Id> */

    /* </InitgPty> */

/* </GrpHdr> */

delete object  vhXMLOrgId.
delete object  vhXMLId.
delete object  ohXMLCompanyPostalAddress.
delete object  vhXMLInitiatingParty.
delete object  vhXMLGrpHdr.
delete object  vhXMLText.
delete object  vhXMLElement.



if oiReturnStatus = -98
then assign oiReturnStatus = 0.