Designer: repeating subforms over same xsd nodelist.

I have a
Members Nodelist with PersonalInfo, EmploymentInfo, IncomeSources etc..
like
<Application>
     <Member>
          <PersonalInfo>
               <Name>New Designer 707</Name>
          </PersonalInfo>
          <EmploymentInfo>
               <Position>Developer</Position>
               <StartDate>....</StartDate>
          </EmploymentInfo>
     </Member>
     <Member>
          <PersonalInfo>
               <Name>New Designer 707</Name>
          </PersonalInfo>
          <EmploymentInfo>
               <Position>Developer</Position>
               <StartDate>....</StartDate>
          </EmploymentInfo>
       </Member>
</Application>
In designer first page I have to show the personal info of all members (I am using subform in subform to repeat for all members)
Then I have few static no-repeat data pages.
Now in the next page I need to show the employment info of all members (I am using subform in subform to repeat for all members)
Here it is not showing any data. If I remove the first member element iteration, then it will show. Seems like I cant iterate multiple times over the same nodelist.
Could anybody please help me to solve this issue?
Thanks

Hi Bruce,
This is exactly what I want my Form looks something like below, the French subform is an exact duplicate of the english subform. The ItemBody subform is the repeating subform it works Ok in the first page but in the second page cannot see the items.
My XML is something like below
<Invoice>
          <InvoiceHeader>
          </InvoiceHeader>
          <InvoiceDetail>
                         <ListOfInvoiceItemDetail>
                                        <InvoiceItemDetail>
                                                       <InvoiceBaseItemDetail>
                                                                      <LineItemNum>
                                                                                      <BuyerLineItemNum>1</BuyerLineItemNum>
                           <SellerLineItemNum>1</SellerLineItemNum>
                                                                      </LineItemNum>
                                                       </InvoiceBaseItemDetail>
                                        </InvoiceItemDetail>
            <InvoiceItemDetail>
                 <InvoiceBaseItemDetail>
                      <LineItemNum>
                           <BuyerLineItemNum>2</BuyerLineItemNum>
                           <SellerLineItemNum>2</SellerLineItemNum>
                      </LineItemNum>
                 </InvoiceBaseItemDetail>
             </InvoiceItemDetail>
  <InvoiceSummary>
          </InvoiceSummary>
</Invoice>
The Binding I have in the first occurence of Subform ItemBody is InvoiceDetail.ListOfInvoiceItemDetail.InvoiceItemDetail[*]which works perfectly fine.
I have used the script in calculate event for ItemBody in the French Subform by making a change to the line as below
match(this, English.dataNode.resolveNodes("$.*"));
But I cannot see any change in my output, leaving the binding for ItemBody to None is not giving me any results.
Appreciate your inputs.
Regards,
Harry

Similar Messages

  • Multiple repeating SubForms binding to the same data node

    Having multiple repeating SubForms binding to the same data node : In our documents, many times we need to display information from same table in multiple locations. For example, if document displays information of Insureds on one page and information of drivers on another page, we need to create a LiveCycle document with two SubForms. Each SubForm needs to have a repeating binding to CommonInsured element in XSD.  LiveCycle Designer is not able to handle such case. We cannot have two subforms bound to the same node, ONLY in a case where repeating option is selected for data binding.
    The only way I have found out is the following Javascript
    //Get the data node from XML. You will find the code for this function in //JavaHelperFunctions library.
    // InsuredDataRepeatingSubForm is a second subform.
    //You need to manually add instances to this subform at the
    //runtime and Insured data to each instance.
    var insuArray = JavaHelperFunctions.getInsureds();
        var i=0;
        for( i=0; i<insuArray.length; i++)
           if (i>0)
    var thesubform = this.InsuredDataRepeatingSubForm.instanceManager.addInstance(i);
                  thesubform.InsuredName.rawValue = insuArray[i].fullName.value;
           else
                   this.InsuredDataRepeatingSubForm.InsuredName.rawValue = insuArray[i].fullName.value;
    Is there any way I can achieve directly using bindings since we are trying to minimize javascript that changes the layout of the form?
    Thanks in advance!

    Unfortunately not. I've spent countless hours/days trying to do the same thing. You have to use code. The form consumes all the data it can into the repeating elements until there is none left and it is not reused.
    Here's a function I wrote just for that purpose. Feel free to use it:
    function loadData(source,target){
    target.setInstances(source.count);//set the target's subform instances to match the source's
    for (var a=0;a<source.count;a++){//loop through each subform instance
      var sourceSubform=source.resolveNode(source.name.substr(1)).all.item(a);
      var targetSubform=target.resolveNode(target.name.substr(1)).all.item(a);
      for (var b=0;b<sourceSubform.nodes.length;b++){//loop through the children of each
       if (sourceSubform.nodes.item(b).className=="field" && targetSubform.resolveNode(sourceSubform.nodes.item(b).name)!=null)//check for matching fields
        if (typeof(targetSubform.resolveNode(sourceSubform.nodes.item(b).name).value.exData)=="undefined" ||
         typeof(targetSubform.resolveNode(sourceSubform.nodes.item(b).name).value.exData.body)=="undefined")
         targetSubform.resolveNode(sourceSubform.nodes.item(b).name).rawValue=sourceSubform.nodes.item(b).rawValue;
        else
         targetSubform.resolveNode(sourceSubform.nodes.item(b).name).value.exData.loadXML(sourceSubform.nodes.item(b).value.exData.saveXML(),1,1);
       if (sourceSubform.nodes.item(b).className=="instanceManager" && targetSubform.resolveNode(sourceSubform.nodes.item(b).name)!=null)//check for matching subforms
        loadData(sourceSubform.nodes.item(b),targetSubform.resolveNode(sourceSubform.nodes.item(b).name));
    Just make sure the source and target subform hierarchies are identifal, same name and all. It will recurse down the tree and transfer source fields (rich text and plain) to their sister targets.
    Kyle

  • XML Schema to generate table data from a repeating subform data

    Hi All, I would like to have a check box that when checked, will hide a quotation form, and make a purchase order form visible, carrying over some of the field data from the quotation form into a new table on the Purchase order form. I've attached this form at https://workspaces.acrobat.com/?d=pqpsXx5VPi*LkMeVKrX57w if you would like to take a look. When the checkbox is unchecked, it will hid the PO form, and make the quite form visible.
    The idea behind this is that my client will create his quote and send t to his customer. Once the customer accepts the quote, he can just click a button to generate his purchase order that he will send to his supplier.
    It seems that because I've got buttons to add rows on the quote form that the problem is more complex. I would be able to do this myself if the table had a fixed number of rows and I was able to use global fields and naming each cell something different, but beacuse it's a single repeating subform, I can't seem to make it work at all.
    I understand that because its a repeating subform that I need to create an XML schema to accomplish this, but also can't figure out for the life of me how to actually create the schema. I've been reading tons of tutorials, but no clue how to apply it to my specific need. I have only been able only find info on how to bind the data source once it's been created.
    I would be forever grateful if anyone could help me out.
    Thank you!

    I've edited your form and put it here.
    Here's what I've done:
    Inserted script into your checkbox renamed Accpted that hides/shows the Purchase Order/ Sales Quotation
    I've included a scripting object with a function I wrote to transfer data from like named fields/subforms from one section to another
    Inserted a few common fields into your Purchase Order table
    What you need to do is complete the development of your Purchase Order table. Make sure the common fields between the quote and purchase tables have the same names in order to transfer the data.
    No schema necessary.
    Kyle

  • Repeating Subforms after applying Usage Rights

    Hi Guys,
    I've been going crazy trying to get this problem solved over the last couple of weeks. I unfortunately can't post the PDF due to privacy issues, but I'm hoping you might be able to point me in the right direction for what might be causing the issue.
    The Problem
    We're running into a problem once the LiveCycle PDF is opened in Acrobat Pro and has Usage Rights enabled. Once we save the PDF, then re-open it, the repeating subforms start misbehaving. For example, when we re-open that document, rather than the subform having 1 instance (as it should be default), it opens with multiple instances of 2, 3, 6 or 20).
    This issue only occurs once Usage Rights have been enabled on the document, and it's always the same number of instances being repeated.
    Document Details
    The PDF document was created in Indesign then imported into LiveCycle to apply the interactivity. There are a total of 17 pages
    There are several subforms throughout the file on various pages. Each of these subforms has a button below them which allows the user to add additional instances of the subform (using the built-in script that LiveCycle generates). Each subform has a minimum count of 1 and maximum limit set to 20. The "initial count" has been set to 1, but it appears LiveCycle removes this value if it is the same as the minimum count.
    This document does not tie into any database. It is simply an interactive document that allows users to show/hide pages based on the checkboxes they tick on the first page (just changes page visibility). The idea being, the customer can save the form once they've completed the fields required, then email it back, so save functionality is a requirement (which is why we need Usage Rights).
    What I've Tried So Far
    I've done a lot of reading on the subject, and I've seen people mention that subforms with non-unique names or empty subforms can cause the issue. I've checked through the document and all subforms have a unique name and there are no empty sub forms.
    As a way to trying to narrow down which elements might be causing the issue, I resorted to deleting multiple pages from the document to track down a specific element that might be causing the issue, however, i didn't have much luck with this. The removal of the majority of pages other than the single repeating subform resulted in the subform repeating itself 6-8 times (can't remember specifically, but it previously repeated itself 20 times)
    Any Ideas?
    I know it's a bit difficult without being able to see the document directly, however I'm hoping someone might have a suggestion for anything I may have overlooked. Is it simply Usage Rights screwing things up, or is there potentially something in my code that conflicts with the usage rights. The thing I find most confusing about this scenario is the apparently randomness for how many instances show up. The first subform pre-loads with the maximum limit available, but the rest of the forms most load with only 2 instances (when they also have a max limit of 20 items).
    I've read a few forums where people suggested Reader Extensions, however according to Adobe's system requirements it doesn't seem to match what we're trying to achieve. There is not database interaction at all - we only require the ability of users to save the PDF locally.
    If anyone can offer suggestions for where I might need to look to sort the issue out, I'd be most appreciative. Thanks!

    Hi,
    Your description of the problem is very detailed. Send me a private message if it is possible to send the form to an individual instead of posting it publicly.
    Here is a thread on repeating subforms, that may help: Saving finished Form duplicates some subForms I used a console.println line of script to try and help identify the problem.
    I would try and minimise the number of flowed subforms and only use them where they are required for the contents of that subform. In all other cases use positioned subforms.
    Minimum count only serves a purpose when you have a button that allows a user to delete instances. A minimum count of 1 means that the user can delete instances, but not the last remaining instance. Unless you need this, you could take this out.
    I don't think the problem is because the form is enabled. There must be something else going on in the background.
    Try opening the Javascript Console in Acrobat/Reader (pressing Control+J) and see if any warnings/errors come up. Also put in a console.println script to display the nodes in the console.
    Good luck,
    Niall

  • Passing field data from a repeating subform to another repeating form

    Hi all,
    In my main form, I have a repeating subform which captures various customer demographics. It repeats up to 7 instances based on how many clients are associated to a particular account.
    The form user clicks a button to add new instances then fills in the various fields.
    What I have currently is another hidden subform which I need to then make visible, but I also need one new instance of that form, prefilled with selected fields, for each instance of the first subform.
    I'm not sure how to go about doing this. Based on my searches, it appears I need some sort of script to resolve each node and associate it with the second subform instances but I'm really unclear how to do that.
    Any advice will be greatly appreciated! TIA

    Hi all,
    I thought I found what I was looking for but still having problems getting it to work. Found this example on John Brinkman's blog...
    var srcFields = Subform1.resolveNodes("$.#field[*]");
    for (var i = 0; i < srcFields.length; i++) {
      var fieldName = srcFields.item(i).name;
      // if the same-named field exists in S2…
      if (Subform2.nodes.namedItem(fieldName)) {
         Subform2[fieldName].rawValue = srcFields.item(i).rawValue;
    I created a simple form containing 2 flowed subforms, each with one text field (same name). I added a button to subform1 to add one instance of subform1 on each click. I placed the script above in the change event of the text field in subform1.
    Nothing is happening at all in subform2. I can add my 3 instances, enter a name in the text field but nothing shows up in the text field of subform2.
    Can anyone offer any suggestions? Very new to this stuff so I'm really at a standstill. TIA!

  • Assigning values to repeating subforms using a script

    I am using a script to add values to a repeating subform. Below is a simple example. In the real script I would use a loop to do the inserts.
    //declare XML structure
    String hrxdproot = /process_data/hrxfaform/object/data/xdp/datasets/data/form1";
    //assigning repeating subform number
    int i = 1;
    //assign a value to the first repeating subform
    patExecContext.setProcessDataStringValue(hrxdproot + "/Details[" + i +"]/employee_name", "Aditya");
    However, the error I get is
    "Target exception: org.w3c.dom.DOMException: INVALID_CHARACTER_ERR: An invalid or illegal XML character is specified. "
    I also tried to use a SetValue module to perform the same function and got the above error.
    /process_data/hrxfaform/object/data/xdp/datasets/data/form1/Details[1]/employee_name = "Aditya"
    Finally, I manually merged a sample xml (with 2 instances of the repeating subform) with the pdf and it worked fine. So I don't think there is a problem in the XML.
    Can someone please help...
    Aditya

    But the question is wether or not you're going to dynamically add nodes to your structure. Even if the schema permits to have multiple nodes under a specific section, it's hard to use xPath to do that. For example if you have a structure like the following:
    <Root>
      <Node1/>
    </Root>
    and use the following xPath /process_data/xmlvar/Root/Node1/Child1, you're going to end up with the following:
    <Root>
      <Node1>
          <Child1>
       </Node1>
    </Root>
    Now if you try to add another node under child node with a similar xPath /process_data/xmlvar/Root/Node1/Child2, you're going to end up with the following:
    <Root>
      <Node1>
          <Child2>
       </Node1>
    </Root>
    It won't append the node, it will replace everything under Node 1.
    So if this is what you're trying to do (add multiple children nodes), then you would have to create the xml structure using standard DOM objects within a custom component or the script service and the set the resulted xml to an xml variable.
    I hope this clears thigns up.
    Jasmin

  • Problem with Repeating Subform bnot displaying

    I have a reapting subform but when I use the addInstance or InsertInstance, it is not adding a row onto the screen.  I can see from the instanceManager.count that the number of rows has increaes but they are not visible. 
    The Hierarchy is:
    CreateMaterialForm - Subform Flowed, top to bottom    binding: $record.MaterialNode
    ==== ClassificationForm - Subform Flowed, top to bottom     binding: CLASS
    ======== ClassLevelForm - Subform Flowed, top to bottom , Repeat Subform, Min count 1    binding: CLASSTAB[*]
    ============ ClassLevelValue - Text Field     binding: VALUE
    I only ever have the first row regardless of how many rows I add to the data structure at run time.    If I start the table with Min of 5, then the rows will be displayed as I add them to the data table.   
    How do I get the subform to expand to display the additional rows?   I have even tried placing a Button where the click event I did the AddInstance and sthat still did not add more visible rows.  It added rows according to the instanceManager.count. 
    NWDS 7.0.19
    Live Cycle 8.01
    Glenn

    Hi Glenn,
    Have you set the dynamic property of the form true?
    Please write the following code in wddoModifyView mthod of the view:
      if(firstTime) {
        IWDInteractiveForm iForm = (IWDInteractiveForm)view.getElement("YOUR_FORM");
        iForm.setDynamicPDF(true);
    Also do the following:
    In Adobe LiveCycle Designer 7.1 you can discover whether your adobe form was created as dynamic. Open your created pdf file in LiveCycle Designer. Menu File -> Form Properties -> tab Compatibility, Form Type. There must be Acrobat 7.x Dynamic PDF Form File.
    Hope this helps.
    Amit
    Edited by: Amit on Oct 28, 2009 8:43 AM

  • How to remove all instance in a repeatable subform (bis)

    Hi Niall,
    A few years ago, you helped a user who asked "How to remove all instance in a repeatable subform". Please could you do again with approximately the same problem ?
    In a click event, I have the script "_CarteEN.addInstance();". Well ! Many cards appear. To protect them, I put above a mask (it's a button with a background Fill). Now, how can I do to remove all masks with only one click using the resetdata or anything else...
    I try this but it doesn't work.
    while (flowedSubform.CarteEN._CacheCV.count > 2)
         flowedSubform.CarteEN._CacheCV.removeInstance(1);
    Many thanks for your help !

    There is no subform named "flowedSubform"
    The "CacheCV" is not a container object (subform). so you can't access the instanceManger of this object.
    the below lines should work
    while(_CarteEN.count >1)
         _CarteEN.removeInstance(1);
    Nith

  • Line at the end of repeat subform

    Hi Adobe experts,
    I have got a situation where in the item table is a subform which i have made it with repeat subform
    The columns of the item table are drawn by lines.
    So for every line item,the horizontal line at the end of the table appears when the subform repeats.
    I do not want the line to appear at the end of line item but only at the end of a page..
    Is it possible to do so ? or we should change the design by using insert table
    Please let me know your suggestions.
    Thanks in advance
    Regards,
    Gowthami SK

    Hello Varun,
    The line is in the end of the subform ( Placed down ),the subform only is for the item table ,so if the line is in the subform ,as the items repeat,the line also gets repeated
    I want the line only at the end of each page when the items get filled
    Regards,
    Gowthami SK

  • Repeating subforms written out of sequence in XML submission

    I have a form with a repeating subform that I am submitting as XML. The problem I'm seeing is that the XML elements for the 2nd thru N occurrences of the subform are written out of sequence toward the bottom of the XML. Here's the form structure...
    And here's what I'm seeing in the aubmitted XML, with 3 instances of the repeating subform created...
    Any clues ?

    I don't believe you have any control over this - at runtime, the newly generated instances are appended to what's already in the container. Can you change the process that's working with this file to not depend on them being in a particular arrangement? For example if you're processing with something that supports XPath, ask for all the repeatingSubform children of topSubform and you'll get those three together..
    SteveX
    Adobe Systems

  • Problems Installing Designer 6.0 over Oracle 8i (Linux SUSE 8.0)

    I have problems installing Designer 6.0 over Oracle 8i (Linux SUSE 8.0). When I try to create the repository the installation hang up. I try over Oracle 8i (WIndows 2000) and the problems remain.
    Please any body can help?
    Is it possible to install Designer 6i and generate forms 6.0 (I mean for using Developer 6.0 (NOT 6i))?
    Best regards,
    JAGC

    Marcel,
    I had the same problem. Oracle gives as an answer that Designer 6.0 is not supported against 8.1.7. In the specified package a statement is issued which is a problem for 8.1.7. I changed that package and now it works fine.
    Comment as below and replace with the delete statement, then it compiles fines.
    I don't know if any problem can occur after that, but a Migration from a 1.3.2 repository to 6i works fine through this repository. Hope this helps.
    Kind Regards
    Jan Boersma
    Email: [email protected]
    see here:
    -- Remove Reserved Names entry and comment
    -- delete from sdd_reserved_names
    -- where (rn_res_name, rn_type) in ((upper(view_name), 'VIEW')
    -- ,(upper(pack_name), 'PACKAGE')
    -- ,(upper(pack_name), 'PACKAGE BODY')
    -- ,(upper(app_view_name), 'VIEW BODY'));
    delete from sdd_reserved_names
    where ((rn_res_name = UPPER(view_name) AND rn_type = 'VIEW') OR
    (rn_res_name = UPPER(pack_name) AND rn_type = 'PACKAGE') OR
    (rn_res_name = UPPER(pack_name) AND rn_type = 'PACKAGE BODY') OR
    (rn_res_name = UPPER(app_view_name) AND rn_type = 'VIEW BODY'));
    null

  • Repeat subform until the end of the page

    Hi there,
    I'm relatively new to Livecycle and scripting, and I have a question that can hopefully be answered. I have a form in which the content is set to flowed and includes expandable fields. The last printable object in my form is a repeatable subform called ChainOfCustody. It's presence is set to hidden until the user clicks Print. It then becomes visible on the prePrint event. I'd like to have ChainOfCustody repeat as many times as it takes to fill the page it's on regardless of whether it appears 1 time or 10 times. I thought I could use addInstance inside a While loop and test when it's no longer on the current page, but that didn't work. I'm running out of ideas at this point, so any help is appreciated. (Below is my form's hierarchy, if that helps.)

    You can achieve this by using master pages and pagination.
    The implementation will be determined by your form requirements. The simple example attached is an example with two body pages:
    - sPageBody
    - sPageLast
    Regardless of how many pages the sPageBody flows over (by clicking the 'Add Section' button) and whether the sHideShow subform is hidden or visible, the sLastPageFooter always displays at the end of the last page.
    Ben Walsh
    www.avoka.com

  • Need help with repeating Subforms on the next page

    I have created two different flowable repeating subforms, for example - subform1 and subform2 in a document with an action button for each to add another subform on the next page.  After subform2, I have two buttons - one to add subform1 again or add subform2 on the next page. When I click the button, Livecycle adds the new subform as commanded but the subform is added directly after the previous same subform not on the next page as requested.  I have tried to change the pagination settings but nothing seems to work.  Can anyone help me define how to get the repeating subform to add to the next page and not after the same subform?

    OK, so here's what I would do.
    1. Wrap your subform1 and subform2 in a subform. I'll call it sfMaster.
    2. Change your minimum instance for subform1 and 2 to 0 or uncheck the box, and set the initial count to 1. (That way you get at least one of each when we start.)
    3. have the buttons create a new instance of sfMaster, then remove the instance of the subform you didn't want within that most recent instance.
    So, what the user sees is a new subform1 or 2 each time they hit a button. And they'll appear in whatever order they choose it. The user doesn't have to know that what is actually happening is the creation of a new "master" subform that holds both subform1 and 2.
    To help illustrate what I mean, I've added a pink border around sfMaster and colored subform1 and 2.
    Binding options for Subform2 (Subform1 would be similar)
    What it looks like in action
    If you want to guarantee it appears on the next page, you'll need to add the conditional break from earlier. Keep working with it to get the settings just right. You may even want a docReady() event that creates two sfMaster's and sets one to have Subform1 and the other to have Subform2.

  • First time form designer - duplicating subform

    This is the first time that I have used Adobe to create anything.  My background comes from Microsoft Access.  I'm creating an order form and could use some help with whether or not to scrap this first try.  The users will be saving each order and emailing them in as a pdf attachement.  Sometimes they have multiple order that go together.  In that case, I would like to be able to duplicate the design of the form onto multiple pages depending on how many the user needs.  I believe I may have shot myself in the foot though by not using a table to set everything up.  When I change my subform to "flowed", I lose all of my formatting.  Also, I'm not sure if using text fields for all of the item names was the correct thing to do.  Perhaps I should have used just plain "text" instead?
    If I am going about this the wrong way, does anyone have a few helpful tips to nudge me in the right direction.  LiveCycle is fascinating, but I jumped in head-first and now I'm floundering a bit.
    https://acrobat.com/#d=ZzmGsPEj6W0ijJrORgQJiQ

    No your design is fine .....first thing to do is name the unmaed subform that holds all of your content. I called it Page1. Now save the form as a dynamic PDF (file/saveas and choose dynamic PDF). Now highlight the Page1 node in the hierarchy view and in the Object palette click on the Binding tab. Click on the Repeat subform for each data item checkbox. Now your form is ready to duplicate pages. You can use the command
    Page1.instanceManager.addInstance(1)
    Typically I add a button so the user can indicate when they want to add a page (by clicking the button hence you can put the code on the click event of that button.
    If you post your email address I will send you my modified sample.
    paul

  • Repeating Subforms within Tables and Subforms

    Hi, again =)
    I have another question.
    I'm working with LiveCycle ES4 on a xml form (xdp).
    In this form I have a table with a repeating subform within a row. And inside this subform I have another repeating subform.
    It works like this: the first subform contains data of a category and the other subform contains data of a subcategory.
    There can be multiple categories and within each category it's possible to have several subcategories listed.
    Ok, having said that, my real problem is this one: I can set the header of the table to repeat itself each time the table breaks to the next page but I want the category to repeat also in case the parent subform breaks and I can't.
    I tried a billion things to make this work, like putting a table inside a table. But I cannot make both headers to repeat themselves.
    Can anyone help me with that?
    ..I have also another question: How can I prevent the silly single header that has no rows attached from appear in the bottom of the page?
    Thanks again.
    This community has been very helpful! =)

    I have just been playing around with tables for a project I am currently working on and may have an idea that might work for your last problem of the orphaned header row at the bottom of the page that has no rows attached. Try making two header rows, even if they contain the same information, and, in the Pagination tab, set the first one as "Include Header Row in Initial Page" and set the second one to "Include Header Row in Subsequent Pages".
    You may also find the post http://forums.adobe.com/message/5473853#5473853 of use perhaps.
    Hope this helps,
    Greig

Maybe you are looking for