cancel
Showing results for 
Search instead for 
Did you mean: 

Lumira Designer - Mandatory Promots doBackgroundprocessing()

0 Kudos

Hi,

We are using SAP Lumira Designer with IDT universe as a source. The data is pulled from a derived table that has Mandatory Prompts (by the way does IDT allow for Optional Prompts in Derived tables?) ? Since the prompts are mandatory, defined the default value in “On Variable Initialization” using"setVariableValueExt".

We have 2 data sources with mandatory prompts:

1. I want to process DS_2 in Background. So defined "APPLICATION.doBackgroundProcessing();" in “On Startup”.

2. For DS_2 "Load in Script" is set to "True"

3. For DS_1 "Load in Script" is set to "False"

4. Defined "On Background Processing" is defined as "DS_2.loadDataSource();"


When I run the dashboard the Prompts show up again and they do not have any value associated for DS_2 data source. How can I avoid the prompt from showing up again? The second data source runs for additional 30 SEC which is an ideal candidate for loading in background. Any idea on how i can accomplish loading DS_2 in background without getting the Prompt window?

Regards,

Adnan

Accepted Solutions (1)

Accepted Solutions (1)

reiner_hille-doering
Active Contributor
0 Kudos

The typical pattern for such apps it doing the "setVariableValueExt" in the scripts that call loadDataSource() and not in "On Variables Initialization" - directly after loadDataSource and before any usage of the datasource.

0 Kudos

Thank you for your response. If we do not use “setVariableExt” in “On Variables Initialization” would it not prompt for Prompts when dashboard is loaded? Also, not sure if this would allow me save the 30 SEC DS_2 would take when the dashboard is initially loaded.

The whole idea is that DS_2 is a source for a chart that’s only visible when a user clicks a drop down and hence needs to be processed in background.


If a source has mandatory prompts is it not possible to use APPLICATION.doBackgroundProcessing() in order to load the data source In Background Processing?

MartinKolb
Advisor
Advisor
0 Kudos

Hi Adnan,

as Reiner already mentioned, to avoid the prompt, the value of the mandatory variable in DS_2 must be set by script. The order of the statements is important, especially because it’s a bit counter-intuitive. The first call must be the “loadDataSource” and directly after, the “setVariableValuet” or “setVariableValueExt”. E.g.

APPLICATION.loadDataSources(DS_2);
DS_2.setVariableValueExt("0BC_HIER_MAND", "0BCICS_ZERO_SUPP_1");

If “setVariableValue/Ext” is not called, then the system has no other chance than showing the prompt, because the value is mandatory, and the data cannot be retrieved without this value.

Best

Martin

0 Kudos

Hi Reiner/Martin - This surely helped.


I did not had DS_2 "Load in Script" as True. And your example gave me a reference of ability to use LoadDatasources at application level. I had always used it with regards to a Data Source. Thanks to both of you. Learned something new today.

Answers (0)