Showing values in Page Header

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

2 Likes

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.

1 Like

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… :frowning:

3 Likes

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.

2 Likes

Thank you @Steve. Appreciate.

1 Like

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:
Registro de Horas - VirtualColumn in Registros de Tareas Table

OR_Slice Slice:

OR_Slice columns:
Registro de Horas - OR_Slice

OR Abiertas Table:

1 Like

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:

1 Like

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:

1 Like

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]
  )
)
1 Like