4 Replies Latest reply on Feb 21, 2009 12:48 AM by HowardTreisman

    Changing a fragment

    Elaine Schmitz
      Let's say you add a field to a fragment. Two forms use the fragment. Are both forms affected as soon as that fragment is saved? I'm specifically referring to forms mid-workflow? Or do only new forms that are created AFTER the fragment is saved get the updated fragment?

      Thanks
        • 1. Re: Changing a fragment
          pguerett Level 6
          All forms that use that fragment will pick up the new field each time they are rendered. So yes both forms will pick up the new field.
          • 2. Re: Changing a fragment
            Elaine Schmitz Level 1
            thanks Paul, so now let's say you delete a field from a fragment. A form, that uses the fragment is in the middle of a workflow process. The workflow references that field. Is that field, although no longer visible on the form, still accessible via the xml representation of the data (the xfaForm data)? Or will the workflow stall?

            Thank you in advance!
            • 3. Re: Changing a fragment
              pguerett Level 6
              The statement will fail ...the field will not be there! Depending on how you built the process it may stall!
              • 4. Re: Changing a fragment
                HowardTreisman Level 1
                I'd like to clarify Paul's response. (Sorry Paul:-)
                1. Fragments
                It depends on how you are using the forms containing the fragments:
                - If you're using XDP format,
                the fragments are refreshed immediately whenever the form is rendered.
                - If you're using PDF format, the fragments are ONLY refreshed the next time you open the form inside of Designer.

                2. Deleting fields
                If you're using an XML schema in your form (highly recommended) the element will still exist (although it will of course be blank) even if the field bound to it is deleted. (I'm 99% sure of this, but you should check.)
                In addition, I'm reasonably sure (although again, please check) that if you use an XPath expression to reference an invalid location, you just get null returned - it does not throw an exception. So I don't think your process will stall, but it may not execute as you'd expect.

                All of this should be reasonably easy to verify by building some simple test cases.

                Howard
                http:/www.avoka.com