Passing arguments between workflows

I have a workflow that opens a browser, logs in to a website (from Orchestrator assets) and does some operations with it.
Now, I would like to split it into more reusable components. In particular, one does open browser and login (AtlasLoginFinance.xaml), the other does more specific operations(AtlasRequestReport.xaml).
Then, the sequence StreamlinedAtlasReport.xaml should call the two in sequence; main.xaml calls only StreamlinedAtlasReport.xaml
How do I pass the info, in particular the browser object, between the various components?
My solution was to create a global variable g_Browser inside StreamlinedAtlasReport, have AtlasLoginFinance return it as “out” parameter, AtlasRequestReport receive it as “in” parameter.
[AtlasFinanceQuick.zip). But, I get errors (see below). What am I doing wrong?

Invoke Workflow File: The following errors were encountered while processing the workflow tree:
‘VisualBasicValue’: Compiler error(s) encountered processing expression “g_Url”.
‘g_Url’ is not declared. It may be inaccessible due to its protection level.
‘VisualBasicValue’: Compiler error(s) encountered processing expression “g_Browser”.
‘g_Browser’ is not declared. It may be inaccessible due to its protection level.
‘VisualBasicValue’: Compiler error(s) encountered processing expression “g_UrlPath”.
‘g_UrlPath’ is not declared. It may be inaccessible due to its protection level.

AtlasFinanceQuick.zip (536.9 KB)

1 Like

Hi @borreo

Try and use an attach browser activity with a flexible selector try and use the ‘*’ wildcard. So you don’t have to use a variable to push the browser object around!

Cheers!