Hiding and Showing Multiple Sections with Dynamic Form Rules

  • 1
  • 1
  • Question
  • Updated 2 years ago
  • Answered

I have 4 sections that i want to show or hide based off an answer.

Answer = 1

shows sections one. (or hides 2, 3 & 4..)

answer = 2

shows sections 1 and 2 (or hides 3 & 4)

answers = 3

shows sections one, two, & three. (or hides 4)

answer  = 4

Shows all or hides none.

i have other sections on the form as well, but only want to hide these based on the answer. It keeps telling me "Show Form Rules Warning" 

Photo of Marc

Marc

  • 0 Points

Posted 4 years ago

  • 1
  • 1
You need to scrap those rules.

Just have 1 rule per section.

If any of the following

Answer = 1

Answer = 2

Answer = 3

Answer = 4

Show Section 1


Then another rule for section 2 and another rule for section 3 and another rule for section 4.
Photo of Gene

Gene

  • 94 Points 75 badge 2x thumb
Took me 2 days of thinking, before coming across this thread, and I was thinking same as OP.  I had to do the same, write on the paper, to figure out the logic.Thank you for this post.
:).  That was a very funny thread when I re-read the whole thing.
Photo of Gene

Gene

  • 94 Points 75 badge 2x thumb
Your first response makes so much sense, yet for some reason It was so confusing, I had to continue reading, until I wrote it out on the paper lol
Photo of Mark

Mark

  • 10 Points
I am not following where I would implement this in dynamic form rules.  I have the same issue.  I have a multiple choice field that i want to trigger show/hide specific sections based on the value in the multiple choice field.  The dynamic form rules doesn't seem to allow this.  For example, I have a field called Milestone type.  It has 3 values (A, B, C).  If value A, show section 1, hide section 2 and 3.  If value B, show section 2 hide section 1 & 3.  If Value C, show section 3, hide section 1 & 2.  This would seem to be simple logic in an if/then logic test, but dynamic forms only has a when statement.  Please help...how do I achieve this desired functionality?  Thanks, Mark
You have to reverse your thinking. Write down on paper when you want to show section 1, and make a single form rule for that.

Then write down on paper when you want to show section 2 and make a  separate form rule for that.
Photo of Mark

Mark

  • 10 Points
I appreciate your suggestion and I have done that and still no bueno. I have tried to set up a multiple choice field [Milestone Type] with set of values ("Charter", "Budget", "Inventory") then in the dynamic form I created 3 rules.  The first is When [Milestone Type] = "Charter" Show  Section "Charter information" Hide Sections for "Budget" and "Inventory"  This rule works great.  But when I add Rule 2, which is When [Milestone Type] = "Budget" Show Section "Budget" and Hide sections for Charter and Inventory, I get the form rule error message because QB only looks at the last rule and sees duplicate rules on the same field.  Alternatively I set it up so that my Milestone Types were individual checkboxes and then created a rule on each individual checkbox, but that doesn't work either because QB looks at the show/hides in each rule and sees duplication.  This is utterly frustrating as the logic is simple and this should not be that difficult.  I appreciate anyone's insight...feeling thwarted by something so basic.  Thanks, Mark
Well,   What can I say. You really need to reread my previous post.

Take out a piece of paper.  Seriously. Write down in words under what conditions section 1 should be open.    Never mind thinking about any other sections, just think about section 1.   Then build the rule for that section only.

Then take out another piece of paper and write down in words when section 2 should be open. And then go into your four rules and make a second form rule specifically dealing with section 2.
Photo of Mark

Mark

  • 10 Points
Again, thank you for the quick reply.  I believe I did and that's what I posted above.  Rule 1 is When [Milestone Type] = "Charter" Show  Section "Charter information" Hide Sections for "Budget" and "Inventory" Rule 2 is When [Milestone Type] = "Budget" Show Section "Budget" and Hide sections for Charter and Inventory.  I get an error message.
Photo of Mark

Mark

  • 10 Points
Let me reiterate I greatly appreciate your help.  I'm just not understanding what I am doing that is different from what you are suggesting.  The dynamic rules won't allow me to have multiple rules.
No. You're still not doing what I said. I want you to write a rule that only deals with one section.   Rule  number one can only refer to one section. And rule number two can only refer to a different section.

 In the example you just wrote above, your rule number one deals with two sections.    It refers to both section called Charter and section called Budget.

You need to have rule number one definitively state ms when do you want section Charter to show.   And nothing else. Just when section Chater should show.

Rule number two needs to definitively state when you want section budget to show. And nothing else.
Photo of Mark

Mark

  • 10 Points
So I can't have it work in an accordion style?  What I am trying to do is only show the section pertaining to the choice selected in the Milestone Type field.  So if someone selects Budget, that's all they see on the form and if they select Charter, that's all they see.
Try this.
Rule 1 is When [Milestone Type] = "Charter" Show  Section "Charter information"

Rule 2 is When [Milestone Type] = "Budget" Show Section "Budget".

Then make a rule for when Inventory should show.
Photo of Mark

Mark

  • 10 Points
OK, that worked! I feel like an idiot.  So basically I was making it more complicated with the hide actions and that was breaking things. You are a rockstar!  Seriously, I've read so many of your posts and your help is tremendous.
Your were just overthinking it. :)
Photo of Mark

Mark

  • 10 Points
Indeed!  You are like the QB Jedi Master.  I should've slowed down and re-read your post like you said.  The answer was in there all the time!  I was adding unnecessary info to it, causing my problems.  Many thanks.
Photo of Shankar Ravi

Shankar Ravi

  • 280 Points 250 badge 2x thumb
Hi Coach,

I have a form and on that form based on lookup field need to show various sections. I need to write dynamic rules to show sections. As we know that we can not use derivative/lookup fields more than 20 times. If we use then we would get popup as below:
Can you please suggest solution for this?

Regards,
Ravi Shankar
We, that limit is a real limit.

The alternatives are to combine situations where you use multiple "Derived" fields in a rule where you could have 1 derived field.  For example combine two formula fields into one formula field and then change the rule to just use that 1 field, thus saving 1 of your precious 20 rules.

Also, note that if you are using a lookup field in a rule (e.g. [Customer name] , and you could instead use the field [Related Customer], that is not a derived field as it is not a lookup nor a formula field.

Other than  that, post a request in User Voice and then solicit for votes on the forum to allow more that 20 derived fields being used in forms.  That limit has been there a very long time, and browsers and computers are stronger now.
Photo of Shankar Ravi

Shankar Ravi

  • 280 Points 250 badge 2x thumb
Thanks Coach for your precious suggestion!!!