Dynamically show starting view

Is it possibile to show a starting view dynamically, in a specific order ?

I've insert in UX > General > Starting view this formula:

IFS(
COUNT(SELECT(SCADUTE[_RowNumber], TRUE, TRUE)) >0, "SCADUTE",
COUNT(SELECT(SCADENZA OGGI[_RowNumber], TRUE, TRUE)) >0, "SCADENZA OGGI",
COUNT(SELECT(SCADENZA DOMANI[_RowNumber], TRUE, TRUE)) >0, "SCADENZA DOMANI",
COUNT(SELECT(SCADENZA 7 GIORNI[_RowNumber], TRUE, TRUE)) >0, "SCADENZA 7 GIORNI",
COUNT(SELECT(SCADENZA 15 GIORNI[_RowNumber], TRUE, TRUE)) >0, "SCADENZA 15 GIORNI"
)

I know that this is valid only when users start for the first time the App, so how to achieve this result every time user launch the App ?

 

0 10 159
10 REPLIES 10

Try This

IFS(
  COUNT(SELECT(SCADUTE[_RowNumber], TRUE, TRUE)) > 0, "SCADUTE",
  COUNT(SELECT(SCADENZA OGGI[_RowNumber], TRUE, TRUE)) > 0, "SCADENZA OGGI",
  COUNT(SELECT(SCADENZA DOMANI[_RowNumber], TRUE, TRUE)) > 0, "SCADENZA DOMANI",
  COUNT(SELECT(SCADENZA 7 GIORNI[_RowNumber], TRUE, TRUE)) > 0, "SCADENZA 7 GIORNI",
  COUNT(SELECT(SCADENZA 15 GIORNI[_RowNumber], TRUE, TRUE)) > 0, "SCADENZA 15 GIORNI",
  TRUE, ""
)

Hi Sirfyaad, 

thank for the reply.

Tried it but it still shows first "SCADENZA OGGI" (even if i've a record in "SCADUTE" and would like to show first "SCADUTE").

Any hints ?

IFS(
  COUNT(SELECT(SCADUTE[_RowNumber], TRUE, TRUE)) > 0, "SCADUTE",
  COUNT(SELECT(SCADENZA OGGI[_RowNumber], TRUE, TRUE)) > 0 && COUNT(SELECT(SCADUTE[_RowNumber], TRUE, TRUE)) = 0, "SCADENZA OGGI",
  COUNT(SELECT(SCADENZA DOMANI[_RowNumber], TRUE, TRUE)) > 0, "SCADENZA DOMANI",
  COUNT(SELECT(SCADENZA 7 GIORNI[_RowNumber], TRUE, TRUE)) > 0, "SCADENZA 7 GIORNI",
  COUNT(SELECT(SCADENZA 15 GIORNI[_RowNumber], TRUE, TRUE)) > 0, "SCADENZA 15 GIORNI",
  TRUE, ""
)

I receive this error message:

Screenshot 2023-06-12 alle 06.41.25.png

Please provide more context or details about what you are trying to achieve with this expression.

Hi,

i'd like to show every time that an user launch the App different view at startup in this order:

SCADUTE
SCADENZA OGGI
SCADENZA DOMANI
SCADENZA 7 GIORNI
SCADENZA 15 GIORNI

if they've records in it.

So if SCADUTE has no records in it the first view user see is SCADENZA OGGI, and so on.

Hope is clearer

Thanks

IFS(
  COUNT(SELECT(SCADUTE[_RowNumber], TRUE, TRUE)) > 0, "SCADUTE",
  COUNT(SELECT(SCADENZA OGGI[_RowNumber], TRUE, TRUE)) > 0, "SCADENZA OGGI",
  COUNT(SELECT(SCADENZA DOMANI[_RowNumber], TRUE, TRUE)) > 0, "SCADENZA DOMANI",
  COUNT(SELECT(SCADENZA 7 GIORNI[_RowNumber], TRUE, TRUE)) > 0, "SCADENZA 7 GIORNI",
  COUNT(SELECT(SCADENZA 15 GIORNI[_RowNumber], TRUE, TRUE)) > 0, "SCADENZA 15 GIORNI",
  TRUE, "SCADENZA 15 GIORNI" // Default to "SCADENZA 15 GIORNI" if no records found in any view
)

In this modified formula, if "SCADUTE" has records, it will be displayed first. If "SCADUTE" doesn't have any records, it will move on to "SCADENZA OGGI." The same process applies to the other views. If none of the views have records, it will default to "SCADENZA 15 GIORNI.

Unfortunately it still not works, perhaps this is because UX > General > Starting view it's catched by the App only at first time execution and not on the next times ?
Can be that this code is bypassed by the App except for the very first time ?

HI @FaCe try this

IFS(
  COUNT(SELECT(SCADUTE[_RowNumber], TRUE, TRUE)) > 0, "SCADUTE",
  AND(
    COUNT(SELECT(SCADUTE[_RowNumber], TRUE, TRUE)) = 0,
    COUNT(SELECT(SCADENZA OGGI[_RowNumber], TRUE, TRUE)) > 0
  ), "SCADENZA OGGI",
  AND(
    COUNT(SELECT(SCADUTE[_RowNumber], TRUE, TRUE)) = 0,
    COUNT(SELECT(SCADENZA OGGI[_RowNumber], TRUE, TRUE)) = 0,
    COUNT(SELECT(SCADENZA DOMANI[_RowNumber], TRUE, TRUE)) > 0
  ), "SCADENZA DOMANI",
  AND(
    COUNT(SELECT(SCADUTE[_RowNumber], TRUE, TRUE)) = 0,
    COUNT(SELECT(SCADENZA OGGI[_RowNumber], TRUE, TRUE)) = 0,
    COUNT(SELECT(SCADENZA DOMANI[_RowNumber], TRUE, TRUE)) = 0,
    COUNT(SELECT(SCADENZA 7 GIORNI[_RowNumber], TRUE, TRUE)) > 0
  ), "SCADENZA 7 GIORNI",
  AND(
    COUNT(SELECT(SCADUTE[_RowNumber], TRUE, TRUE)) = 0,
    COUNT(SELECT(SCADENZA OGGI[_RowNumber], TRUE, TRUE)) = 0,
    COUNT(SELECT(SCADENZA DOMANI[_RowNumber], TRUE, TRUE)) = 0,
    COUNT(SELECT(SCADENZA 7 GIORNI[_RowNumber], TRUE, TRUE)) = 0,
    COUNT(SELECT(SCADENZA 15 GIORNI[_RowNumber], TRUE, TRUE)) > 0
  ), "SCADENZA 15 GIORNI",
  TRUE, "SET THIS VIEW"
)

workingworking

It still not works.

It only works (as my first expression) if i delete cache and then execute App.

When execute without clearing cache it's shown SCADENZA OGGI even if i've some records in SCADUTE ...

Top Labels in this Space