Community Spring Cleaning week is here! Join your fellow Maveryx in digging through your old posts and marking comments on them as solved. Learn more here!

Alteryx Designer Desktop Discussions

Find answers, ask questions, and share expertise about Alteryx Designer Desktop and Intelligence Suite.

Pass output from one app to another through app-chaining

vshelunts
5 - Atom

I am trying to create a chained registration application in alteryx where in the first step the app asks the user to choose the course from dropdown menu and in the second one to provide personal details.

 

1. App 1 (course selection)

 

vshelunts_0-1618481410204.png

 

2. App 2 (personal details input)

 

vshelunts_1-1618481461008.png

 

The provided input should be written to the google sheets as in the example below.

 

vshelunts_2-1618481577532.png

 

 

I need to pass a value from one app to another in order to store all the input  in one row but I could not figure out the way to do so. Alternatively I decided to write the data from the first app to the google sheet in the respective column, and that from the second app to the other respective columns. However, the data gets appended in different rows which is not what I want (all inputs should be written in one row only) 

 

vshelunts_3-1618481908826.png

 

Is there a way to somehow pass/save the input provided in the first app (selected course) to the second app (with personal details) and write this data as one row to the google sheet? 

 

1st app workflow

 

vshelunts_0-1618482449418.png

 2nd app workflow

 

vshelunts_1-1618482473864.png

 

 

Any help would be greatly appreciated. Thanks in advance!

 

Vahe

8 REPLIES 8
AdamR_AYX
Alteryx Alumni (Retired)

Are you sure you need chained Apps for your use case?

 

Could you not have one App with multiple tabs?

Adam Riley
https://www.linkedin.com/in/adriley/
vshelunts
5 - Atom

For design purposes I would like the course selection and personal details windows to be separate. The option with tabs definitely works but I was wondering if it is possible to do the same through chained apps.

AdamR_AYX
Alteryx Alumni (Retired)

OK (I only ask because it is trickier in a chained app) so the technique is to write the results from the first app down to a temporary file on disk and then get the second app to read that file back in.

 

I've attached a simple example.

Adam Riley
https://www.linkedin.com/in/adriley/
vshelunts
5 - Atom

Thanks for the reply, Adam. Another reason why I am doing it in two steps is because I need to use a dynamic dependent drop-down list based on the course selection in the first step. This idea popped up just recently. The workflow will have to be run on alteryx server so I would prefer to get rid of need to use temporary files stored internally. Is there a way to complete the same worklfow that you suggested by writing the input of the first application directly to the google sheets (rather than excel)?

AdamR_AYX
Alteryx Alumni (Retired)

The temporary file solution actually works well on server as each run of the workflow (on server) gets a copy of the workflow (and required assets) in its own dedicated folder.

 

The problem with trying to write to google sheets in each app is you could end up with issues if you have multiple users running the app at the same time.

Adam Riley
https://www.linkedin.com/in/adriley/
vshelunts
5 - Atom

Hi Adam. Thank you for your reply. 

 

I tried to upload the grouped worklflow (with respective asset files) to the alteryx server, but the worklflow output does not show the intermediary temporary file.  Other than that, it runs successfully. Could you help to understand what might be the reasons for this?

 

Can I use this approach to create a chained app and pass the parameter through those apps? Those should be able to work in cases when multiple users run the workflow and I was considering the possibility of switching to Sharepoint for data output in case Google sheets do not work out.

AdamR_AYX
Alteryx Alumni (Retired)

So generally you don't want to show the intermediary temporary file to the end user, as it is just a temporary file for the inner workings of your app.

 

If you do want to show it then you just need to write it out to a yxdb file in your last chained app and then make sure it is selected under the "Show Results to User" of that last app.

 

AdamR_0-1619088106164.png

 

Yes this works for passing parameters between apps even when multiple users are running it as each run gets its own copy of the app and a working folder to run it in.

Adam Riley
https://www.linkedin.com/in/adriley/
JarekSkudrzyk
11 - Bolide

Hi,

@AdamR_AYX I tried to follow your advice but it did not work for me when I wanted to use the first app results as an input to dropdown list in 2nd app. Could you please take a look what I am doing wrong?
It seems like the second app gets the input file before the first app writes it, e.g. if I run the second app as workflow in alteryx (ctr+R) and then run it as an app everything works ok (but I have to exit the chain after 1st app, run 2nd app as workflow and only then run 2nd app as an app)
My designer version is: 2020.4.5.12471 (I do not know if it matters:))
Thank you in advance for your help!

Labels