Expand my Community achievements bar.

Guidelines for the Responsible Use of Generative AI in the Experience Cloud Community.
SOLVED

Correct way to structure subforms

Avatar

Level 9

I'm confused aout the correct way to structure subforms.

When my form has multiple subforms, some flowed, some positioned, should they be nested within the page one subform or should they be individual page subforms?

I've read the "Creating Dynamic Forms with Adobe LiveCycle designer" book by J.P. Terry and it mentions that too many nested subforms can slow the form rendering time.

What's the best practice?

~Don

1 Accepted Solution

Avatar

Correct answer by
Level 10

I don't know if there is a correct way or not, it really depends on what you are building. I think you have to have a lot of nested subforms before it impacts performance to a noticeable degree.

I tend to put everything under one master subform with elements broken up into more subforms. Especially if there is lots of showing and hiding and flowed layouts then I don't have to worry about how things are going to flow - it's just one big flowed subform with everything in it. I also use subforms for grouping objects as I find Designer's grouping function to be painful to use.

But it can be helpful to have more than one top level subform depending on what you are doing, like with static pages. I've had a few projects where the main part of the form is flowed but it is followed by static pages for help or that kind of thing, so I kept the static pages separate from the flowed subform.

Having one main subform has helped a couple of times when I've added checks for JavaScript or Acrobat version, then you can hide or show the whole form in one go.

-subMain (flowed)

--subHeader (positioned)

--subInfo (flowed)

---subHidden1 (positioned)

---subHidden2 (flowed)

--subFooter(positioned)

-subStaticPage (positioned)

View solution in original post

4 Replies

Avatar

Correct answer by
Level 10

I don't know if there is a correct way or not, it really depends on what you are building. I think you have to have a lot of nested subforms before it impacts performance to a noticeable degree.

I tend to put everything under one master subform with elements broken up into more subforms. Especially if there is lots of showing and hiding and flowed layouts then I don't have to worry about how things are going to flow - it's just one big flowed subform with everything in it. I also use subforms for grouping objects as I find Designer's grouping function to be painful to use.

But it can be helpful to have more than one top level subform depending on what you are doing, like with static pages. I've had a few projects where the main part of the form is flowed but it is followed by static pages for help or that kind of thing, so I kept the static pages separate from the flowed subform.

Having one main subform has helped a couple of times when I've added checks for JavaScript or Acrobat version, then you can hide or show the whole form in one go.

-subMain (flowed)

--subHeader (positioned)

--subInfo (flowed)

---subHidden1 (positioned)

---subHidden2 (flowed)

--subFooter(positioned)

-subStaticPage (positioned)

Avatar

Level 9

Thanks for your reply Jono.

~Don

Avatar

Level 4

Good question.

Jono's first statement was the most accurate - "I don't know if there is a correct way or not, it really depends on what you are building."

What's the best way to structure functions, classes, and other data structures?

My approach is to never compromise on a form's layout, but to be optimization-conscious throughout:

    Never adding a text-field for a separate caption when a field's integrated caption would do - one element instead of two - less overhead.

    Never using a complex element like a subform when a simple element like a group would do - less overhead.

Etc.

That said, a Livecycle Designer architect such as John Brinkman may have an objective answer.  Read him at blogs.adobe.com/formfeed

Avatar

Level 9

Thanks for your comments and the path to read what John Brinkman has to say. I appreciate your input.

~Don