# All blank or all populated fields before Submit allowed

**URL:** <https://community.glideapps.com/t/all-blank-or-all-populated-fields-before-submit-allowed/80351>\
**Category:** Ask for Help\
**Tags:** actions\
**Created:** [February 25, 2025, 11:04pm UTC](https://community.glideapps.com/t/all-blank-or-all-populated-fields-before-submit-allowed/80351 "2025-02-25T23:04:23Z")\
**Posts on this page:** 13\
**Page:** 1

<div class="post-metadata">

**Author:** ![Anton\_Bearsley](https://sea2.discourse-cdn.com/flex002/user_avatar/community.glideapps.com/anton_bearsley/32/85389_2.png) [@Anton\_Bearsley](https://community.glideapps.com/u/Anton_Bearsley)\
**Post date:** [February 25, 2025, 11:04pm UTC](https://community.glideapps.com/t/all-blank-or-all-populated-fields-before-submit-allowed/80351/1 "2025-02-25T23:04:23Z")

</div>

Noob question here, please forgive if this is uber simple to resolve:

I have 3 fields: Tenant Email, Tenancy Start, Tenancy End (along with a bunch of other fields).

I need these three to either be ALL populated with values, or NONE of them populated before an edit or add can be Submitted.

If I make these Required fields, this covers the need for them to be ALL populated, but how can I allow Submit if ALL 3 are empty?

If just one or two of any of the three fields is blank I want to display a warning and not allow Submit.

Your patience and awesomeness is appreciated.

---

<div class="post-metadata">

**Author:** ![Robert\_Petitto](https://sea2.discourse-cdn.com/flex002/user_avatar/community.glideapps.com/robert_petitto/32/25193_2.png) [@Robert\_Petitto](https://community.glideapps.com/u/Robert_Petitto)\
**Post date:** [February 25, 2025, 11:33pm UTC](https://community.glideapps.com/t/all-blank-or-all-populated-fields-before-submit-allowed/80351/2 "2025-02-25T23:33:54Z")

</div>

To clarify, these aren’t the only 3 fields in the form, correct?

---

<div class="post-metadata">

**Author:** ![Robert\_Petitto](https://sea2.discourse-cdn.com/flex002/user_avatar/community.glideapps.com/robert_petitto/32/25193_2.png) [@Robert\_Petitto](https://community.glideapps.com/u/Robert_Petitto)\
**Post date:** [February 25, 2025, 11:40pm UTC](https://community.glideapps.com/t/all-blank-or-all-populated-fields-before-submit-allowed/80351/3 "2025-02-25T23:40:01Z")

</div>

Need to use a bit of smoke and mirrors. Assuming these three fields are placed one after the other:

1. create two containers: one that has all 3 fields required; one that has none of them required
2. Add visibility conditions to each container:  
— The container with the 3 required fields has a visibility condition to appear if field1 is **not** empty OR if field2 is **not** empty OR if field3 is **not** empty  
— The container with the 3 non-required fields has a visibility condition to appear if field1 **is** empty AND if field2 **is** empty AND if field3 **is** empty

---

<div class="post-metadata">

**Author:** ![Anton\_Bearsley](https://sea2.discourse-cdn.com/flex002/user_avatar/community.glideapps.com/anton_bearsley/32/85389_2.png) [@Anton\_Bearsley](https://community.glideapps.com/u/Anton_Bearsley)\
**Post date:** [February 25, 2025, 11:45pm UTC](https://community.glideapps.com/t/all-blank-or-all-populated-fields-before-submit-allowed/80351/4 "2025-02-25T23:45:16Z")

</div>

Correct. The form has about 8 fields. The other fields can be managed individually (Required or non-Required) it is just this grouping of 3 that I need to manage together.

---

<div class="post-metadata">

**Author:** ![Anton\_Bearsley](https://sea2.discourse-cdn.com/flex002/user_avatar/community.glideapps.com/anton_bearsley/32/85389_2.png) [@Anton\_Bearsley](https://community.glideapps.com/u/Anton_Bearsley)\
**Post date:** [February 25, 2025, 11:55pm UTC](https://community.glideapps.com/t/all-blank-or-all-populated-fields-before-submit-allowed/80351/5 "2025-02-25T23:55:51Z")

</div>

I think you’re on to something here! Please bear with me as I attempt to put this into place and confirm your cunning plan.

---

<div class="post-metadata">

**Author:** ![Anton\_Bearsley](https://sea2.discourse-cdn.com/flex002/user_avatar/community.glideapps.com/anton_bearsley/32/85389_2.png) [@Anton\_Bearsley](https://community.glideapps.com/u/Anton_Bearsley)\
**Post date:** [February 26, 2025, 1:19am UTC](https://community.glideapps.com/t/all-blank-or-all-populated-fields-before-submit-allowed/80351/6 "2025-02-26T01:19:59Z")

</div>

I think this is very close to what I want, however the container with the Required fields is showing when all are empty (I can confirm the fields are blank in the table), and the container of non-Requireds is hidden. Seems the Visibility rules are working backwards?

 ![image](https://us1.discourse-cdn.com/flex002/uploads/glideapps/original/3X/1/c/1c612dd6b7ef864938809ede00d0d29d4d443bb8.png)

---

<div class="post-metadata">

**Author:** ![Robert\_Petitto](https://sea2.discourse-cdn.com/flex002/user_avatar/community.glideapps.com/robert_petitto/32/25193_2.png) [@Robert\_Petitto](https://community.glideapps.com/u/Robert_Petitto)\
**Post date:** [February 26, 2025, 2:11am UTC](https://community.glideapps.com/t/all-blank-or-all-populated-fields-before-submit-allowed/80351/7 "2025-02-26T02:11:22Z")

</div>

Hm… the logic I specified should be right. Are you 100% positive there’s isn’t a hidden value in those date pickers?

---

<div class="post-metadata">

**Author:** ![Anton\_Bearsley](https://sea2.discourse-cdn.com/flex002/user_avatar/community.glideapps.com/anton_bearsley/32/85389_2.png) [@Anton\_Bearsley](https://community.glideapps.com/u/Anton_Bearsley)\
**Post date:** [February 26, 2025, 2:25am UTC](https://community.glideapps.com/t/all-blank-or-all-populated-fields-before-submit-allowed/80351/8 "2025-02-26T02:25:36Z")

</div>

I agree, the logic sounds right. The data for that row contains empty fields.

 ![image](https://us1.discourse-cdn.com/flex002/uploads/glideapps/original/3X/6/d/6deebbf4c5475ea6cdc7c5b8076b497406586f40.png)

If you have an epiphany, please let me know, otherwise I’ll keep playing and will post the solution once I find it.

---

<div class="post-metadata">

**Author:** ![Anton\_Bearsley](https://sea2.discourse-cdn.com/flex002/user_avatar/community.glideapps.com/anton_bearsley/32/85389_2.png) [@Anton\_Bearsley](https://community.glideapps.com/u/Anton_Bearsley)\
**Post date:** [February 26, 2025, 2:43am UTC](https://community.glideapps.com/t/all-blank-or-all-populated-fields-before-submit-allowed/80351/9 "2025-02-26T02:43:03Z")

</div>

Edit: I have the Non-Required showing now when ALL empty. I had not set the Default Values. Uncertain why this triggered the All Empty criteria but that seemed to work. Filling in one field through does not trigger the Required now though.

Silly thought: Could it be that the Visibility criteria are looking at the values in the database, but when filling in the form the fields are not written to the database until I press Submit? Meaning that the database values have not yet been updated and therefore not triggering the Visibility criteria as the data hasn’t written to the table yet?

---

<div class="post-metadata">

**Author:** ![Robert\_Petitto](https://sea2.discourse-cdn.com/flex002/user_avatar/community.glideapps.com/robert_petitto/32/25193_2.png) [@Robert\_Petitto](https://community.glideapps.com/u/Robert_Petitto)\
**Post date:** [February 26, 2025, 3:27am UTC](https://community.glideapps.com/t/all-blank-or-all-populated-fields-before-submit-allowed/80351/10 "2025-02-26T03:27:45Z")

</div>

> [@Anton\_Bearsley](#):
>
> Silly thought: Could it be that the Visibility criteria are looking at the values in the database, but when filling in the form the fields are not written to the database until I press Submit? Meaning that the database values have not yet been updated and therefore not triggering the Visibility criteria as the data hasn’t written to the table yet?

This is correct and expected behavior. Entries live in no-man’s-land until submitted, but form logic will still honor it. Let me see if I can reproduce.

---

<div class="post-metadata">

**Author:** ![Robert\_Petitto](https://sea2.discourse-cdn.com/flex002/user_avatar/community.glideapps.com/robert_petitto/32/25193_2.png) [@Robert\_Petitto](https://community.glideapps.com/u/Robert_Petitto)\
**Post date:** [February 26, 2025, 3:31am UTC](https://community.glideapps.com/t/all-blank-or-all-populated-fields-before-submit-allowed/80351/11 "2025-02-26T03:31:42Z")

</div>

Seems to work 🤷‍♂️  
https://www.loom.com/embed/05f3b22256504f79affc8f0d33316280

---

<div class="post-metadata">

**Author:** ![Anton\_Bearsley](https://sea2.discourse-cdn.com/flex002/user_avatar/community.glideapps.com/anton_bearsley/32/85389_2.png) [@Anton\_Bearsley](https://community.glideapps.com/u/Anton_Bearsley)\
**Post date:** [February 26, 2025, 4:02am UTC](https://community.glideapps.com/t/all-blank-or-all-populated-fields-before-submit-allowed/80351/12 "2025-02-26T04:02:06Z")

</div>

I just need you to know that you, good Sir, are a Genius!

This video really helped. And the thing that helped? You are using a Container, and I was using a Form Container. Seems the Form Container, as I surmised and you confirmed, leaves the data changes in limbo and therefore not readable by the Visibility criteria, whereas the Container has direct access to the data to and from the table.

Thanks so much for the help and patience with a noob.

---

<div class="post-metadata">

**Author:** ![system](https://sea2.discourse-cdn.com/flex002/user_avatar/community.glideapps.com/system/32/53398_2.png) [@system](https://community.glideapps.com/u/system)\
**Post date:** [March 5, 2025, 4:02am UTC](https://community.glideapps.com/t/all-blank-or-all-populated-fields-before-submit-allowed/80351/13 "2025-03-05T04:02:16Z")

</div>

This topic was automatically closed 7 days after the last reply. New replies are no longer allowed.
