I need to put a page header on a form that shows the value of one virtual column from another table.
First of all, I tried it with a Show column. After that, I try with a virtual column, type Show, field โapplication formulaโ same as field โContextโ but I am not successful.
Formula: CONCATENATE("Difference with Target: ",ANY(SELECT(OR[Difference with Target], AND([_THISROW].[ID OR]=[ID OR], [_THISROW].[Customer]=[Customer]))), โhsโ)
Where:
โORโ is a slice
[Difference with Target] is an OR Virtual Column
The result is not an error, but does not show the value [Difference with Target] (type: duration)
I need help.
(Sorry my English)
Best regards.
At first, may I request you to change the name of the slice? OR is also a logical operator in AppSheet and in any computer system.
As such, even though AppSheet is very flexible in accepting most names for tables, slices, columns, views etc. , it will be better to avoid a name that is exactly identical to a logical operator itself, as it can possibly be incorrectly interpreted in expressions.
Edit: Minor change in description
Hi @Steve,
I request your insights. AppSheet is very flexible and well designed in accepting most names for entities in app configuration. In help articles, there is reference to reserved words in the two articles below.
May I request your thoughts on perhaps having a help article on reserved words guidelines in AppSheet.
A reasonable request, though Iโll have to put some thought into how to present the topic. AppSheet is very inconsistent in how it handles text and when certain words and punctuation are important. Iโll have to ponder thisโฆ
Thank you @Steve. Appreciate.
I agree with @Suvrutt_Gurjar that your slice name of OR is likely to be a problem for you at some point because there is also a function of the same name. I too recommend you change the sliceโs name. That said, I do not believe the slice name is contributing to your problem here.
It sounds like what you want is a column of type Show, a Category of type Page_Header (or possibly Section_Header), and your expression as the Content expression. The column must occur in the tableโs, sliceโs, or formโs column list order where you want its content to occur in the form.
If you continue to have problems, please post screenshots of the tableโs, sliceโs, or formโs column list, and of the configuration screen for the Show column itself.
Hi, thanks for your answers.
I changed de Slice name (now it`s called OR_Slice) and it didnโt fix my problem.
@Steve below the screenshots and gifs (I couldnโt upload videos). Itโs my first post here, so tell me if is it ok please:
View:
Registros de Tareas Table:
Virtual Column (Diferencia con Objetivo) in Registros de Tareas Table:
OR_Slice Slice:
OR_Slice columns:
OR Abiertas Table:
It would appear your ANY(SELECT(...))
expression produces no result. Have you confirmed that the column has a non-blank value?
Below a screenshot with an example Iโam testing:
Okay. Have you confirmed the SELECT() expression finds the desired row?
How can I do that? I have about 22K records and only the last have values in Diferencia con Objetivo.
The Test button in the formula field displays up to 10K.
@Steve, I modified the data base for test purpose and can to see a record between 0 - 1000.
Itโs look like the SELECT formula doesnโt find the value:
Hi,
did you could to see it?, any suggestion?
Thanks in advance.
Youโll need to troubleshoot your SELECT() expression. The way Iโd approach that is to create a new virtual column in the same table for testing. Use the Test feature of Expression Assistant to experiment with your expression. When youโre done testing, delete the virtual column.
Iโd start with making sure this sub-expression produces the expected results:
SELECT(
OR_Slice[Difference with Target],
AND(
[_THISROW].[ID OR]=[ID OR],
[_THISROW].[Customer]=[Customer]
)
)
User | Count |
---|---|
38 | |
35 | |
27 | |
23 | |
18 |