Global Variables Across Apps

I am seeing a growing number of use cases where a global variable that remains persistent across apps would be really helpful. One example would be if I have one app where I set up material, I would like to have a button in that app that takes me directly into another app with the material I just created already loaded in a record placeholder and ready for processing without having to scan a barcode or select it from a table.

Hi there,
Yes this suggestion would be very helpful, we solved it by adding columns to the user table, otherwise we didn’t see any other way to be able to pass values between apps.
So, if there will be a way to declare global variables with specific naming conversion, it will be great.

Regards,
Amit Berku

@japrice Thanks for the suggestion, we are investigating different ways to handle variables in a more global way.

One suggestion in the mean time would be to have a Table for Stations and store the variables there, similar to what @Amit did with the Users Table. Then you could automatically load the info based on the station name without requiring any extra steps from the user.

Some news about variables between apps?

Hi @Pete ,

Any update on the global variables between apps instead of using table fields?

Thanks.

Hi @bharatreddyv, no news as of now, unfortunately. What has prompted your interest most recently? i.e. do you have a specific example where this would help?

Hi @pete

Sorry it has been a while I logged into community.

We built an app to receive goods for a Purchase Order. And we built a separate app to print barcodes for goods receipt document. Now we want to call the barcode printing app, after successful good receive posting, for each of the GR items as the step in the goods receiving app. this needs passing the GR Item list/array to the barcode printing app for it to print. we don’t want to store this in a Tulip buffer table.

Is there an option for this?

Thank you.

Hi @bharatreddyv - I saw your other post on community and will respond to both, asking for a quick live chat!

I’d love to chat through the underlying use case of passing data between Apps, and the hesitation to save data in Tables.

In general, we’re hesitant to introduce a concept of shared global variables between Apps, since global variables that exist in memory outside of an App or Table can be tricky to maintain and manage, could break the idea of encapsulation and composability, and could lead to difficult to diagnose issues. Storing the “variable” in a Table ensures the data is saved well.

I’m also wondering if the next feature in our pipeline – Functions – might help out here, or perhaps alleviate some of the need to call multiple Apps and pass data around.

  • Olga
1 Like

Hi @OlgaStroilova,

Thank you for your response. I shared you my email for a meeting invite early next week in a direct message. If you have a calendar the I can block the time please let share the same.

Regards,
Bharat Vaka

1 Like

Looks like we have time set up tomorrow - looking forward to connecting and chatting live! thank you!

I want to add another thought here.

As much as I missed this feature before as well, I’m no longer sure if it is really worth it.
The first thought is: “What do people really mean by global variables?”
What is the scope?
Is it on the same station only for switching between apps? Do you want to provide Data by user? Over what period of time? Public usage (with limitations?)? What kind of conflicts are possible?

At first it might be “only for switching apps” but that will be a starting point for new Ideas.
The issue I see is, that this could easily overcomplicate things a lot. And it will for sure not make things easier for new App builders. There is a reason you don’t have public and local (one trigger only) variables inside an app…

I don’t want to say its a bad idea. But I’m not so confident that it is a brilliant one as I used to be…