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.
SOLVED

Workflow to Parse XML for all Workflows in a directory

TimN
13 - Pulsar

Hi,

I'm new to Python and there is probably a better way but my goal is to extract details (SQL, formulas, etc.) from all of my existing workflows.  I'm stuck on two things:

 

1. How do I know from the XML, the order that a tool gets executed?

2. How do I know what tools are part of a container?

 

Thank You,

 

Tim

Attached is a sample of my output.  I add the WF File name as well.

 

 

7 REPLIES 7
BrandonB
Alteryx
Alteryx

If your objective is documentation, you may want to take a look at the Auto Documentation analytic app: https://community.alteryx.com/t5/Engine-Works/Auto-Documentation/ba-p/545827

TimN
13 - Pulsar

Hi Brandon,

Thanks, I do use that but this would allow be to dive into my entire library of WFs.  I've used that WF to generate a PDF to document a single workflow.

 

Regards,

 

Tim

BrandonB
Alteryx
Alteryx

In theory you could just turn that into a macro and feed in the list of workflow file paths from a directory tool in as a control parameter and set the output to dynamically change the file name. 

TimN
13 - Pulsar

Yes, I have that working.  I scan yxmd, yxmc and yxwz files.  I get eveything I need accept for the order that the tools run in and whether or not a tool is in a container.  The macro uses python to "flatten" xml but I need to figure out how to add order and container info. 

 

 

TimN_0-1606165720515.png

 

BrandonB
Alteryx
Alteryx

They have another version that accounts for containers: https://gitlab.com/keyrus-us/public/alteryx_auto_doc_revamp/-/tree/master

 

I haven't personally worked with it yet, but it may have the information that you are looking for there

TimN
13 - Pulsar

Thanks.  I'll take a look.

TimN
13 - Pulsar

I found this on Github.  This is different from Keyrus and so far gives flexibility.  You can extend it from the user case it was built for with Python.  

 

https://github.com/shiv-io/Alteryx-Metadata-Parser/blob/master/LICENSE 

Labels