I have a Ref row, and due to security filters now only 1 options is available. I really need this to be the initial value, so my clients don’t have to keep clicking it everytime they have to fill out a form.
If you can guarantee there will only ever be one option as a result of security filters, you can use ANY() to default to that value.
ANY(reftable[refcolumn])
It works for me
@Jonathon
I am trying to accomplish something similar. In my case I want to limit the ref column to a specific value and set the dropdown automatically. when another field is set to NO. It works except that the user has to select the value from the dropdown.
VALID_IF
INTIAL VALUE

Hey James,
Your initial value formula does not consider the list from your valid_if statement - it is still trying to pick ANY() value from the entire v_aseguradoras table. However, the value it is trying to select is likely failing your valid_if statement so it is turning up blank.
Your initial value formula will need to be a SELECT() statement that matches the valid_if statement.
Hi Jonathon,
I set the VALID_IF:
> IF([Cubierto_por_ARSs]=False,> ORDERBY(> SELECT(v_Aseguradoras[Codigo_SAIL],[Codigo_SAIL]=0)> ,[Nombre]),> ORDERBY(v_Aseguradoras[Codigo_SAIL],[Nombre])> )> >
Need help with the Intial Value:
if([Cubierto_por_ARSs]=False,> SELECT(v_Aseguradoras[Codigo_SAIL],[Codigo_SAIL]=0,true),> ANY(v_Aseguradoras[Codigo_SAIL])> )
If [Cubierto_por_ARSs] is FALSE, then there should only be one possible value, which is identified by [Codigo_SAIL]=0
Is this correct?
Yes that is correct it is correct. If it is false then dropdown value should be set to 0 and if Cubierto_Por_ARS is True then the user should be able to select from a list of values.
Valid IF:
- You can simplify the expression by changing
[Cubierto_por_ARSs]=Falseto simply[Cubierto_por_ARSs], and reorderingIF()expression. The[Cubierto_por_ARSs]column is already a T/F value, so you don’t need to re-evaluate it. - In the case that
[Cubierto_por_ARSs]is FALSE, we expect a single value(0). Therefore, the ORDERBY() expression is not necessary.
The simplified expression is:
IF([Cubierto_por_ARSs],
ORDERBY(v_Aseguradoras[Codigo_SAIL],[Nombre]),
SELECT(v_Aseguradoras[Codigo_SAIL],[Codigo_SAIL]=0)
)
Initial Value:
- Same as above, we do not need to re-evaluate the
[Cubierto_por_ARSs]column. - If the expected value is known, as it is in this case (0), then you can use that value explicitly.
The simplified expression is:
IF([Cubierto_por_ARSs],
"",
"0"
)
If the value is NOT known, then you could write:
IF([Cubierto_por_ARSs],
"",
ANY(SELECT(v_Aseguradoras[Codigo_SAIL],[Codigo_SAIL]=0))
)
Jonathon,
Man thanks for all the help I really appreciate it. But it is still not working. The column is a ref column.
Hey James;
Unfortunately I don’t think I have enough information to troubleshoot this further for you. If you shared editor access to me at redacted, I could likely find the issue.
shared
Where are you located, time zone?
CST - It’s 6:40pm here currently.
It is 8:39 here. I am int EST.
Testing some things right now.
me too. let me stop.
James, I believe it is fixed now. The current behaviour as follows:
- Your app allows three possible states for the
[Cubierto_por_ARSs]column: TRUE, FALSE, or NULL.- In the case of a BIT/BOOL value, NULL = FALSE
- If the value is NULL or FALSE, the application will default to ‘PRIVADO’ (REF KEY = 0), and there will be no other valid options for users to select other than a NULL value (clear the value)
- If the value is TRUE, the box will start blank and the dropdown will have all possible values.
Is this correct?
Yes that is the desired effect.

