Is there a way to have a field created on a form based on completion of another field or use of a button

  • 0
  • 1
  • Question
  • Updated 11 months ago
  • Answered
Photo of Chad Brandmire

Chad Brandmire

  • 968 Points 500 badge 2x thumb

Posted 11 months ago

  • 0
  • 1
Photo of QuickBaseCoach App Dev./Training

QuickBaseCoach App Dev./Training, Champion

  • 51,546 Points 50k badge 2x thumb
Can you explain your use case?  That perceived need is highly unusual.  There is likely a better solution.
Photo of Chad Brandmire

Chad Brandmire

  • 968 Points 500 badge 2x thumb
Say I have a form that requires approval on a case by case basis from anywhere to 1 to 12 users. Is there a way that when user field 1 is populated I have the option for user field 2 to appear on the form? And so on?
Photo of QuickBaseCoach App Dev./Training

QuickBaseCoach App Dev./Training, Champion

  • 51,546 Points 50k badge 2x thumb
OK, so you don't want to create new fields on the fly, just expose them.

No problem

So you can have a form rule that says
When approval 1 is not blank, show approval 2

Then another for rule that says
When approval 2 is not blank, show approval 3

etc up to 11 rules in total
Photo of Chad Brandmire

Chad Brandmire

  • 968 Points 500 badge 2x thumb
Yes that works, but the ability to create new fields on the fly would also be useful. Is there a way that is possible?
Photo of QuickBaseCoach App Dev./Training

QuickBaseCoach App Dev./Training, Champion

  • 51,546 Points 50k badge 2x thumb
It does not make sense in Quick Base to create new fields on the fly so I hesitate to explain how it could be done. 

It is just not good design to be generating new fields willy nilly.  It means that you actually need to have a child table to hold the data, so it's a design issue of the tables and relationships that we should discuss.

I prefer to discuss the use case and we will come up with a proper design for the tables and their relationships.
Photo of Chad Brandmire

Chad Brandmire

  • 968 Points 500 badge 2x thumb
Here is an overview of one project I'm trying to accomplish. 



Blue circle = User field
Red circle = Text- Multiple Choice field
Black circle = Text- Multi-line field


In this form the project manager could need only 1 approval could need 6 or more. The sign off and comment fields are only editable by the user set in the respective approval field. The user is notified via email when they are assigned to an approval. There are other tables and forms within this app that need to remain view-able to users in the approval fields. 

Things I need to happen:
1. Project manager is notified via email when all assigned approvals are complete. Needs to be 1 email only not an email for each approval
2. Blank approvals(and corresponding fields) need to be hidden, but the approval fields still need to be editable by the project manager at all times
Photo of QuickBaseCoach App Dev./Training

QuickBaseCoach App Dev./Training, Champion

  • 51,546 Points 50k badge 2x thumb
On this forum I can try to answer specific questions.  Or else I offer one-on one consulting services  and I can be reached via the contact information on my website QuickBaseCoach.com

I'm not sure if you have a specific question at this time.  The question seems to have evolved morphed from how to create new fields on the fly to an outline of the broad goals of your app.
Photo of Chad Brandmire

Chad Brandmire

  • 968 Points 500 badge 2x thumb
If I could create new fields on the fly my problems would be solved ;)
Photo of QuickBaseCoach App Dev./Training

QuickBaseCoach App Dev./Training, Champion

  • 51,546 Points 50k badge 2x thumb
Truthfully and speaking from working with Quick Base since 2002, if you create fields on the fly your app would be a nightmare.  There is a difference between exposing existing fields to users on the fly with form rules and actually creating new fields on the fly based on user input.
Photo of Avi Sikenpore

Avi Sikenpore

  • 532 Points 500 badge 2x thumb
Over a period of time the number of fields would be too large and will slow down your app and the form. Like Mark suggested, you should figure out the maximum number of field you will possibly need and show/hide them based on the user input via form rules.
Photo of Evan Martinez

Evan Martinez, Community Manager

  • 8,814 Points 5k badge 2x thumb
Hi Chad,

This is Evan with the Quick Base Team and looking over your question and Mark and Avi's feedback I would agree with them. Dynamic creation of fields every time a record is completed isn't something that we would recommend or support. It could lead to a very large number of issues for data integrity, reporting, and performance. Mark's suggestion to have a set number of fields already on the table that are hidden and revealed by form rules is one way of tackling the issue. This way your fields are set and mapped out and just revealed at need. Alternatively, based upon your specific use case, the other option is to create an Approvals table. This table would be the child of your current table and would have a field for Approval, Sign off, and Comments. It would also track the date and time that the Approval record was created, etc. Then you can have a report link that appears on your form that would show each approval related to that Parent Record.

Then each time an approval is needed your users would just press the Add Approval button, create a new approval record, and it would populate in the report. The advantage of this mode is that the Approvals table can accommodate a range of some records needing only 1 approval to other records needing 15 (or more) without the need for fields to be created dynamically at the structural level of Quick Base. If you don't want to use the button there is even an option in embedded reports from another table to allow Editing right in the parent form. So your users would be able to click into a blank line at the bottom of the report and add a new record right there while in Edit mode. 

I hope this suggestion is helpful.