Forum Discussion
The cleanest and most maintainable way to build your multi-stage process (Draft → In Development → Under Review → Approved/Rejected) is to move away from relying heavily on many Dynamic Form Rules and helper checkboxes. Instead, use a combination of multiple Form Views, Action Buttons, and minimal, well-organized Dynamic Form Rules. This approach reduces conflicts significantly and creates a much smoother user experience. Start by creating three dedicated Form Views in your table: Intake Form, Proposal Form, and Review Form. Each form view should be designed for a specific stage. For example, the Intake Form should only show the Intake section by default, the Proposal Form should focus on the Proposal section, and the Review Form can show all sections but with previous ones set to read-only. Next, use native Action Buttons as the main drivers of progression. On the Intake Form, add a “Start Proposal” button that is only visible when Status = “Draft”. When clicked, the button changes the Status to “In Development”, saves the record, and automatically re-opens the record using the Proposal Form. Similarly, on the Proposal Form, create a “Submit Proposal for Review” button that changes the Status to “Under Review” and opens the Review Form. This method is far more reliable than helper checkboxes because the buttons directly control both the status change and the form navigation in one action.
Finally, use Dynamic Form Rules sparingly and scoped to each individual form view. In the Intake Form, create a simple rule that shows only the Intake section when Status is Draft. In the Proposal Form, have a rule that shows only the Proposal section when Status is In Development. In the Review Form, use rules to make earlier sections read-only once the status moves forward. By keeping your rules simple, non-overlapping, and tied to specific form views, you avoid most conflicts that occur when everything lives on a single form.This redesigned approach makes your app easier to maintain as you add more stages in the future and provides clearer guidance to users at each step of the demand lifecycle. If you implement it this way, you should see far fewer rule conflicts and a more professional workflow.