This discussion is archived
8 Replies Latest reply: Sep 11, 2012 6:11 AM by 770285 RSS

XML mapping in Documaker Studio

user479173 Newbie
Currently Being Moderated
Hi Experts,

We are new to XML - Documaker interaction; and despite my transactions running fine; my form is not getting triggered.

Here is the input file :

<?xml version="1.0" encoding="UTF-8" ?>
- <DOCUMENT TYPE="RPWIP" VERSION="10.3">
- <DOCSET NAME="">
<FXRFILE NAME="rel102sm" />
<KEY1>01</KEY1>
<KEY2>5</KEY2>
<KEYID>0123456</KEYID>
<Rundate>20120831</Rundate>
<Trancode>NB</Trancode>
- <GROUP NAME="ANY_TESTXML">
- <FORM NAME="TESTXMF" OPTIONS="R">
<DESCRIPTION>TESTING</DESCRIPTION>
<FIELD NAME="FIELDTwo">8:30 AM</FIELD>
<FIELD NAME="FIELDThree">5:30PM</FIELD>
- <SHEET>
- <PAGE>
<SECTION NAME="TESTXM" />
</PAGE>
</SHEET>
</FORM>
</GROUP>
</DOCSET>
</DOCUMENT>

I got one Group as 'Any_TestXML' , FORM as 'TESTXMF' , Section as 'TESTXM'.
The triggering condition at FormList (Group Level) is
!/DOCUMENT/DOCSET/GROUP[@NAME='ANY_TESTXML']

and at FORM level is :
!/DOCUMENT/DOCSET/GROUP/FORM[@NAME='TESTXMF']

but my polfile and nafile are coming and only Banner page is getting printed.

This is what I get when I use the 'Test Scenario' option :

Error: Error in GENGetNextTrnSet(): TrnFileH == VMMNULLHANDLE.


Any help would be appreciated.

Thanks.

Edited by: 889054 on Aug 31, 2012 5:07 AM
  • 1. Re: XML mapping in Documaker Studio
    VamshiMundla Explorer
    Currently Being Moderated
    Hi User,

    Try using the below syntax and hope this would resolve your issue.

    !/DOCUMENT/DOCSET[GROUPNAME='ANY_TESTXML']
    !/DOCUMENT/DOCSET/GROUP[FORMNAME='TESTXMF']

    Let me know incase of any concerns.

    Many Thanks,
    Vamshi Mundla
  • 2. Re: XML mapping in Documaker Studio
    user479173 Newbie
    Currently Being Moderated
    Hi Vamshi,

    The issue is still there. My form is not getting triggered also when I set it to print without any condition ; like giving a trigger of EVERYPOLICY and setting that to 'Return(1)' in Setrcptb.dal file.

    Here is what I get after I run my gendaw32;
    *****************************************
    Transaction: 0123456
    Symbol: ANY
    Module: TESTXML
    State:
    Company Name (after ini conversion): ANY
    Line of Business (after ini conversion): TESTXML
    Trans Type: NB
    Run Date: 20120831
    ------------------------------------------------
    DM10797: Warning in SetNextImage(): No forms for current transaction. FAPTotalForms(pRPS->CurrentFapFormsetH) < 1). Processing will continue.
    ****************************************

    Please help.

    - Pradip
  • 3. Re: XML mapping in Documaker Studio
    858783 Newbie
    Currently Being Moderated
    Hi,

    Please check the form id present in input xml is correct and the correspondng form is added into the forms list to trigger a form.

    Thank you.
  • 4. Re: XML mapping in Documaker Studio
    VamshiMundla Explorer
    Currently Being Moderated
    Hi Pradip,

    Do a trial and error test by removing triggers for the form and sections. Just check whether the form and images are being printed without any erros.

    If so then we can find out the actual issue it is with triggers or with the setup.

    Is it a manual trigger or a DAL script. Also post the trigger conditions that you have written to print the same.

    Many Thanks,
    Vamshi mundla
  • 5. Re: XML mapping in Documaker Studio
    user479173 Newbie
    Currently Being Moderated
    Hi Vamshi,

    Now I am getting the forms triggered, I guess the issue was with AFGJob.jdt file.
    One new issue creeping up is - we are not getting prints ; it says our BATCH file is empty when I try to run genptw32 transaction.

    This is what I have in Errfile.dat -

    DM17065: Warning in GENGetRecipientSet(): BATCH1 batch is empty, Unable to RCBGetFirstRcpSetRec(NULL).

    When I use the Test stream scenario ; I could see the following:

    On Form level trigger
    Trigger - Group 1 <any> Group2 <TESTXML> Form <TESTXMF> Search Mask <!/DOCUMENT/DOCSET/KEY2='5'>
    Trigger - Group 1 <any> Group2 <TESTXML> Form <TESTXMF> returned 1.

    On section level trigger
    Trigger - Group 1 <any> Group2 <TESTXML> Form <TESTXMF> Section <TESTXM> Search Mask <!/DOCUMENT/DOCSET/KEY2='5'>
    Trigger - Group 1 <any> Group2 <TESTXML> Form <TESTXMF> Section <TESTXM> returned 0.

    How can same trigger condition give '1' for the first time and '0' for the second time?

    Do I need to change the conditions?

    Thanks as always,

    - Pradip
  • 6. Re: XML mapping in Documaker Studio
    NirmalGarga Explorer
    Currently Being Moderated
    Hi,

    Please check for the below in your library since you are getting an empty batch.

    1) Check in the Forms Trigger (at the GRP File level), whether you have given appropriate Trigger condition and Recipients are selected.
    2) Check you have proper routing settings defined in your INI files say using <BatchingByRecip> and define the recipient batches.
    3) You may also use the "IfRecipUsed" Form set level rule in Afgjob to designate recipients to corresponding batches say, ;IfRecipUsed;;BATCH1=INSURED;

    Thank you.
  • 7. Re: XML mapping in Documaker Studio
    user479173 Newbie
    Currently Being Moderated
    Hi Nirmal,

    Here are my settings for printers and batch files :

    < BALANCE >
    BATCH1 = OWNER
    BATCH2 = AGENT
    BATCH3 = FILECOPY
    ERROR = ERROR
    MANUAL = MANUAL
    < BATCH1 >
    Printer = Printer1
    BATCHBannerBeginForm = ;OWNER;BATCH HEADER;LABEL;
    < BATCH2 >
    Printer = Printer2
    BATCHBannerBeginForm = ;OWNER;BATCH HEADER;LABEL;
    < BATCH3 >
    Printer = Printer3
    BATCHBannerBeginForm = ;OWNER;BATCH HEADER;LABEL;
    < ERROR >
    Printer = Printer4
    < MANUAL >
    Printer = Printer5
    ;
    ;
    ;

    < PRINT_BATCHES >
    BATCH1 = DATA\BATCH1.BCH
    BATCH2 = DATA\BATCH2.BCH
    BATCH3 = DATA\BATCH3.BCH
    ERROR = DATA\ERROR.BCH
    MANUAL = DATA\MANUAL.BCH
    < Print >
    RCBDfdField = PDFNAME
    CallBackFunc = MultiFilePrint
    MultiFileLog = ..\data\MFP.LOG
    < PrintFormset >
    RCBDFDField = PDFNAME
    MultiFilePrint = Yes
    LogFileType = XML
    LogFile = mfp.log
    < Printer >
    EnableBatchBanner = True
    PrtType = PS
    < Printer1 >
    PORT = .\DATA\OWNER.bar
    < Printer2 >
    PORT = .\DATA\AGENT.bar
    < Printer3 >
    PORT = .\DATA\FILECOPY.bar
    < Printer4 >
    PORT = .\DATA\ERROR.BAR
    < Printer5 >
    PORT = .\DATA\MANUAL.BAR
    < PrinterInfo >
    Printer = Printer1
    Printer = Printer2
    Printer = Printer3
    Printer = Printer4
    Printer = Printer5
    < Printers >
    PrtType = PDF

    And here are my options in JDT file :

    <Base Rules>
    ;RULStandardJobProc;1;Always the first job level rule;
    ;SetErrHdr;1;*:;
    ;CreateGlbVar;1;TXTLst,PVOID;
    ;CreateGlbVar;1;TblLstH,PVOID;
    ;JobInit1;1;;
    ;LoadDDTDefs;1;;
    ;InitOvFlw;1;;
    ;LoadTextTbl;1;;
    ;BuildMasterFormList;1;4;

    /* Every form set in this base uses these rules. */
    <Base Form Set Rules>
    ;RULStandardTransactionProc;2;Always the first transaction level rule;
    ;USEXMLExtract;2;;
    ;LoadExtractData;2;;
    ;ResetOvFlw;2;;
    ;IfRecipUsed;2;BATCH1=OWNER;
    ;IfRecipUsed;2;BATCH2=AGENT;
    ;IfRecipUsed;2;BATCH3=FILECOPY;
    ;IfRecipUsed;2;BATCH4=MANUAL;
    ;LoadRcpTbl;2;;
    ;UpdatePOLFile;2;;
    ;RunSetRcpTbl;2;;
    ;LoadGlobalFonts;Acca;;
    ;BuildFormList;2;;

    /* Every image in this base uses these rules. */
    <Base Image Rules>
    ;RULStandardImageProc;3;Always the first image level rule;
    ;InsNAHdr;3;;

    /* Every field in this base uses these rules. */
    <Base Field Rules>
    ;RULStandardFieldProc;4;Always the first field level rule;

    Could you please correct these for any mistakes ?

    I used the <BatchingByRecip> setting also; but it didn't help.


    - Pradip
  • 8. Re: XML mapping in Documaker Studio
    770285 Newbie
    Currently Being Moderated
    [Oracle Delivery Cloud|https://edelivery.oracle.com/EPD/Download/get_form?egroup_aru_number=15238196] [Oracle Delivery Cloud|https://edelivery.oracle.com/EPD/Download/get_form?egroup_aru_number=15238196] Your XML structure is something that should be reconsidered. You are attempting to use a XML structure that is documented in the Documaker XML Guide for the XML Import configuration of Documaker not the rules processor configuration. Your AFGJOB and INI files indicate that you are trying to use the rule processor configuration.

    The XML Import style of XML requires you to use the structure where you specify the tags for specific use shown below under *****XML IMPORT EXAMPLE **** file. While this is valid XML and will work, it is probably the most restrictive XML design. The intent of the Import XML implementation is to make Documaker a dumb print engine - you tell it exactly what you want to include in the final output. The documentation clearly states the following on the chapter of the XML Guide that is labeled Importing and Exporting XML Files with Documaker Server.

    +"Keep in mind that importing XML is not the same as using an XML file as your extract file. Import assumes you are using a specific file layout that describes your document in a predefined manner."+

    It is the least flexible and requires the person deigning the forms to also understand the data structure, it cannot take advantage of any of the rule processing (RP) features that make the product worth the $$ that customers spend on it.

    Documaker can use any well formed XML file (it can be successfully opened in a browser is the simplest test). You really should not mix and match the AFGJOB IfRecipUsed and the batching by recip rules - they are not intended to be a mix you are missing the AFGJOB rules that invoke batching by recip: ;BatchingByRecipINI;2;; and optionally ;BatchingByPageCountPerRecipINI;;;.

    There are only three possibly two fields that you need to have consistent to use Documaker in the RP configuration: Key1, Key2 and KeyID. The Key1 and Key2 drive the group selection you can omit one if you only have one group - KeyID is used as the transction ID to track the transaction in the system (consider if there is an error). I would suggest that you possibly use sample MRLS that are available the Oracle Delivery Cloud (https://edelivery.oracle.com/EPD/Download/get_form?egroup_aru_number=15238196) part number V33403-01 as a example the DMS1 sample is fully running and may give you some better insight into how to implement.


    ***** XML IMPORT FILE EXAMPLE*****

    <?xml version="1.0" encoding="UTF-8"?>
    <DOCUMENT TYPE="RPWIP" VERSION="10.3">
    <DOCSET NAME="">
    <FXRFILE NAME="rel102sm"/>
    <GROUP NAME="" NAME1="DOCUCORP PACKAGE" NAME2="VERSION 103">
    <FORM NAME="Tersub - Basic" OPTIONS="R">
    <DESCRIPTION>Tersub - Basic Paragraph Assem</DESCRIPTION>
    <FIELD NAME="FIELDTwo">8:30 AM</FIELD>
    <FIELD NAME="FIELDThree">5:30PM</FIELD>
    <RECIPIENT NAME="AGENT" COPYCOUNT="1" CODE="" SEQUENCE="1"/>
    <RECIPIENT NAME="HOME OFFICE" COPYCOUNT="1" CODE=""
    SEQUENCE="2"/>
    <RECIPIENT NAME="INSURED" COPYCOUNT="1" CODE="" SEQUENCE="3"/>
    :
    </FORM>
    </GROUP>
    </DOCSET>
    </DOCUMENT>

Legend

  • Correct Answers - 10 points
  • Helpful Answers - 5 points