You're on your way to the next level! Join the Kudos program to earn points and save your progress.
Level 1: Seed
25 / 150 points
1 badge earned
Challenges come and go, but your rewards stay with you. Do more to earn more!
What goes around comes around! Share the love by gifting kudos to your peers.
Keep earning points to reach the top of the leaderboard. It resets every quarter so you always have a chance!
Join now to unlock these features and more
Probably an easy one for the experts:
I have a dropdown field with status (open, in progress, done). This field may only be edited by a small group of users. When any user adds a new dataset in the form, the status should always be "open" at first.
I tried to realize this with Rules for Field Definition where I set
condition = status:[empty]
action to execute = Set value
Values to set = status=open
But this does not work when a user is adding a dataset who is not in the specified group...
Thanks for any help
What are your questions specifically? I understand what Jan wanted and did, but I cannot understand your questions (from Jan's question context)
I just faced a similar problem. But I want to set the default value of the status dropdown based on a condition.
Lets say there is another dropdown field with options ONE and TWO, I want the Status dropdown to default to Open only if the User selects TWO in the previous dropdown. If the user selects ONE, the Status dropdown stays empty.
I tried two ways of doing this -
Of course it works for the dropdowns and for any type of field
But conditions (filters in ConfiForms) operate with internal values, same goes for "setting the values"
Is "One" is the ID of the option for your VMO dropdown or a label?
Not quite, the '=' is used when you set the values
While the ':' is used in filtering - separating field name (or expression) from field value (or expression)
Hope it helps
Nope I don't understand what the solution was for this thread. Can someone be a little bit more specific.
I use the Rules for Field Definition where I set (in my case)
condition = Status:[empty]
action to execute = Set value
Values to set = Status=Pending
Q1) Where does this field need to be placed
Q2) What else needs to be done to get it to work because I have tried and the field just stays empty.
Hi @Barry Smyth and welcome to this community
This is about a ConfiForms Field Definition Rules macro with action set to "Set Value"
As any ConfiForms definition macro it should be part of ConfiForms Form Definition (inside it's macro body), as this is a configuration element related to form configuration
Just to make sure - the "Pending" is the ID value for the field you want to set? And not the label, right?
I think I spoke to soon works for me, but then I have access to the restricted field.
However, for a normal user (who does not have access to the field) the field is not defaulted to anything and left blank once a new record is saved.
In other words, even though the rule is set in the correct place, because a normal user cannot edit that field the rule seems to be ignored.
So how do you default a field that is restricted to certain users when a normal user saves a form??
If a user does not have access to the field then they cannot set defaults or anything like that... otherwise what restriction is that
Think of it as an administration section on a form. The user needs to know that their record is "Pending" but should not be able to change that field as it's restricted to Administrators only. When the record has been validated by the administrator, the administrator will change the record to "Submitted". Kind of a maker/checker rule.
If allowing only certain people to edit the field means for a normal user the default value of "pending" won't be set then that's no good.
I could hide the field from view, but then the user won't be able to see the status of their record either.
Not sure what the correct approach is in this situation.