community
cancel
Showing results for 
Search instead for 
Did you mean: 

Alteryx Designer Ideas

Share your Designer product ideas - we're listening!

Workflow Compare Tool

Assuming some source control or versioning is in place, a formal compare tool would be a nice addition. This would be useful for determining what is different between two versions of a workflow, and that knowledge is very useful when modifying a production process: when formally moving a new (modified) process into production, part of the checks and balances would be to run a formal comparison against the workflow being replaces, and ensure that all differences are accounted for.

 

This sort of audit is notoriously difficult when the differences are buried deep in the configuration settings of various tools within Alteryx.  I do see that the .yxmd files are XML based, so perhaps we could create our own compare tool based thereon, but it would be better (more trustworthy) to have one formally provided by Alteryx.  Thanks!

 

14 Comments
Quasar
Quasar
Great suggestion- version control and documentation will be key to growing Alteryx adoption in larger enterprises. The beautiful thing about Alteryx is that you can use it to grow it's own capabilities., and as you note, it would be possible to create a 'workflow compare' macro that took to .yxmd files and used the xml parsing tools to identify differences. Simply documenting the differences would be easy, making such a comparison simple for a person to understand is where it would get challenging.
ACE Emeritus
ACE Emeritus

I could swear that @AdamR has already done this...

Comet

Agreed with this idea and loved the thought of a diff function to go along with version control.  Our enterprise uses GitHub, but unfortunately comparing underlying XML is not an intuitive or sustainable way to trace the changes of a workflow.  I was having a discussion with one of our Alteryx contacts and he indicated that version 11 actually contains a diff function that can be accessed via the command line.  If you run:

"C:\Program Files\Alteryx\bin\AlteryxGui.exe" /diff Workflow1.yxmd Workflow1_changed.yxmd

from the command line with all instances of Alteryx closed, it opens up a visual side-by-side of the two workflows and highlights everything that has changed, including configuration, position, and connection status.  

 

This is great functionality and will really help with troubleshooting and understanding the evolution of workflows.  I would love to see Alteryx better socialize/document this capability and integrate it directly into the GUI rather than making it a hidden command-line switch.

 

Alteryx_Diff.PNG

Meteor

My company could definitely benefit from an accurate account of changes made to production workflows. I vote YES to a new Diff tool!

 

btw... A nice way to output changes to a text file would be great as well! 

Fireball
Fireball

@mcarrico, thanks for sharing the command line tool!

 

 

I agree with @dataMack that this tool will be vital to the ability of Alteryx to scale into large organizations.

 

I would like to see an output of a new workflow that has the changes listed in the annotation. With the current command line tool, as soon as you click on one of the edited tools, the red hashes go away.

Comet

Just to weigh in on future versions of this functionality, I think it would be nice if it was tightly coupled with the version control within the Gallery, similar to a GitHub commit history.  An ideal output for our organization would be a list of all of the changes with a visual indicator of where the changes can be found.  While not a fully-formed idea, something similar to the rough sketch below is what I have in mind.  This is similar in style to a markdown file, which highlights the comparisons broken down into change types to help users navigate the significant changes between versions, and get a feel for upstream and downstream tools that could be impacted.  An output like this would help with troubleshooting as well as incremental QA of an evolving workflow.

Alteryx_Diff_Markdown.PNG

Alteryx Certified Partner
Alteryx Certified Partner

"This is great functionality and will really help with troubleshooting and understanding the evolution of workflows.  I would love to see Alteryx better socialize/document this capability and integrate it directly into the GUI rather than making it a hidden command-line switch."

 

Totally agree this is a fab start and I can't believe I'm only just hearing about it in this thread - would love to see this feature get some love and get documented. 

ACE Emeritus
ACE Emeritus

+1 on @Cady's suggestion of a text output of the differences.

+1 on @mcarrico's suggestion -- I like that changes are organized by type.

+1 on @chris_love's suggestion to make this a GUI function (an app?) rather than command line.

 

I think it would also be useful to be able to ignore various classes of change. For example, if I don't care where tools are located on the canvas, I could use a /ignore parameter.

 

However, this is a great start.

Alteryx
Alteryx

Hope this helps some users.

 

i have taken this and made it into an Analytic app, which is more GUI focussed:

 

https://community.alteryx.com/t5/Alteryx-Knowledge-Base/Visually-Compare-Workflow-Versions-App/tac-p...

 

Alteryx Partner
Alteryx Partner

@JohnJPS,

 

Definitely a good idea. @tom_montpool was right @AdamR has created something similar Version Tool, but this tool is meant more for comparing against a published version in order to encourage users to download the newest version of the workflow by referencing a URL. I have toyed with the idea of being able to show version changes, but it gets tricky when you are trying to monitor changes in connections too. There are a lot of instances getting false positives when someone has disconnected and reconnected tools together because of the ordinal number changes. 

 

I think this would be a perfect addition to Gallery, they have already started to monitor version changes holistically, but the documentation has always been sparse, even in the Public Gallery. I would like to see it post under the workflow on Gallery, similar to GitHub, and in a text box (diff between the last two versions maybe so it doesn't get too long)  in the workflow.  It could be in the 'Tool Header' (see last image) like most Macros with the Tool Number and if possible a hyperlink to those tools.

 

 

 

 

 CREW Version Macro Config.jpgCREW Macro ConfigCREW Version Macro.jpgTool ImageTool Version Header.jpgTool Header