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.

Executing a chained analytic app with values from command line...will the values carry

warrencowan
9 - Comet

Appy new year all....

 

I am looking for some guidance on automating a series of chained analytic apps with values via the command line.

 

I have 3 analytic apps designed to be run in linear sequence as each one is dependent on the output from the last. Hence the chain.

 

The apps only requries one value to be input, which is the customer name. This acts as a filter to bring in the correct settings and run the app for a particular customers data,

 

I want to execute this sequence from the command line where by I can tell alteryx engine to start app 1 with the appropriate customer values like this ,,,

 

AlteryxEngineCmd.exe "<WizardValues ShowDebugMessages='False'><Module>C:\Users\Me\Documents\Alteryx\Customers\App1.yxwz</Module><Value name='Customer'>EvilCorp</Value></WizardValues>"

 

I know how I can trigger app2 on completion, but I am not sure if/how those values will be passed down the chain form App1, to allow the App2 to then run with the same values, in order and bring the same customer's settings....and so on for App3.

 

Can someone tell me if this handled automatically, or if I need to use some other functionality.

 

Many thanks in advance.

 

Dubya

 

 

 

 

4 REPLIES 4
jrgo
14 - Magnetar

Hi @warrencowan 

 

Assuming that the wizard values are dynamically generated by the current app in the chain and supplying it to the next, it should work. Is the reason for this question to confirm if your approach is logical or have you already build this out and it's not working as you'd expect it to? If the latter, can you describe why?

 

If I may ask, any reason why you wouldn't just set this up as a proper chained app vs. using the CMD to call the next workflow? Maybe there's some detail to your use case that explains this approach, but based off what you did describe, you should be able to create this process completely in Alteryx without having to do any command line execution.

warrencowan
9 - Comet

Hi @jrgo , its the former case. the reason for the approach is automation and scheduling. I could run it manually as a chained app, but I have 10 customers I need to run this for, and need to schedule the running and be able to execute it via a command line which may be fed in by another system.

 

Also running a chained app, requires (I believe) the value to be written to a fixed temp file and then looked up by the second app in the chain. The fixed nature of this means I cant run multiple instances of the app for each client in parallel. A full run of the app sequence can take 3-4 hours. So 10 customers in series needs up to 40 hours of processing times, and this all needs to get done between 0200 and 1000 each day.

 

I had hoped that passing the values to the first app in the command line would somehow how be carried over independently to execution of the second app, but it doesnt sound like thats the case.

 

 

 

 

jrgo
14 - Magnetar

Hi @warrencowan 

 

Thank you for sharing these additional details and I think I'm following with why you're approaching it this way.

 

What if instead making multiple workflows, you convert each into macros that you can place in a workflow connected sequentially. You'd set them up as batch macros with your control parameter being the value you want to update, customer in this case. The control parameter would essentially replace the Text box interface tool you're currently using in each of the apps. Being set up as batch would enforce the sequence and ensure that the process within the macro does not start until it's received it's control parameter.

 

Do you think that would work?

jFilgueira
5 - Atom

hi!
I can't run chained applications from the command line. The only way I use is to enter in the command line the instruction to execute the first application and then I entered the instruction to execute the second.

Can anybody help me? I need to run chained applications

Labels