This site uses different types of cookies, including analytics and functional cookies (its own and from other sites). To change your cookie settings or find out more, click here. If you continue browsing our website, you accept these cookies.
We have discussed on several occasions and in different forums, about the importance of having or providing Alteryx with order of execution control, conditional executions, design patterns and even orchestration.
I presented this idea some time ago, but someone asked me if it was posted, and since it was not, I’m putting it here so you can give some feedback on it.
The basic concept behind this idea is to allow us (users) to have:
Repetitive patterns to be reusable.
Select after and Input tool
Get not matching records from join
Tell Alteryx to execute some logic if something happens.
Any other condition
Order of execution
Need to tell Alteryx what to run first, what to run next, and so on…
Run this first
Execute this portion after previous finished
Wait until “X” finishes to execute “Y”
Putting all together
This approach involves some functionalities that are already within the product (like exploiting Filtering logic, loading & saving, caching, blocking among others), exposed within a Tool Container with enhanced attributes, like this example:
The approach is to extend Tool Container’s attributes.
This proposition uses actual functionalities we already have in Designer.
So, basically, the Tool Container gets ‘superpowers’, with the addition of some capabilities like: Accepting input data, saving the contents within the container (to create a design pattern, or very commonly used sequence of tools chained together), output data, run the contents of the tools included in the container, etc.), plus a configuration screen like:
Refers to the actual interface of the Tool Container.
Provides the ability to disable a Container (and all tools within) once it runs.
Idea based on actual behavior: When we enable or disable a Tool Container from an interface Tool.
Input and output data to the container’s logic, will allow to pickup and/or save files from a particular container, to be used in later containers or persist data as a partial result from the entire workflow’s logic (for example updating a dimensions table)
Based on actual behavior: Input & Output Data, Cache, Run Command Tools, and some macros like Prepare Attachment.
Order of Execution: Can be Absolute or Relative. In case of Absolute run, we take the containers in order, executing their contents. If Relative, we have the options to configure which container should run before and after, block until previous container finishes or wait until this container finishes prior to execute next container in list.
Based on actual behavior: Block until done, Cache, Find Replace, some interface Designer capabilities (for chained apps for example), macros’ basic behaviors.
Conditional Execution: In order to be able to conditionally execute other containers, conditions must be evaluated. In this case, the idea is to evaluate conditions within the data, interface tools or Error/Warnings occurrence.
Based on actual behavior: Filter tool, some Interface Tools, test Tool, Cache, Select.
Notes: Documentation text that will appear automatically inside the container, with options to place it on top or below the tools, or hide it.
This should end a brief introduction to the idea, but taking it a little further, it will allow even to have something like an Orchestration layout, where the users can drag and drop containers or patterns and orchestrate them in a solution, like we can do with the Visual Layout Tool or the Interactive Chart tool:
This has probably been mentioned before, but in case it hasn't....
Right now, if the dynamic input tool skips a file (which it often does!) it just appears as a warning and continues processing. Whilst this is still useful to continue processing, could it be built as an option in the tool to select a 'error if files are skipped'?
Right now it is either easy to miss this is happening, or in production / on server you may want this process to be stopped.
I often need to create a record ID that automatically increments but grouped by a specific field. I currently do it using the Multi-Row Formula tool doing [Field-1:ID]+1 because there is no group by option in the Record ID tool.
Also, sometimes I need to start at 0 but the Multi-Row Formula tool doesn't allow this so I have to use a Formula tool right after to subtract 1.
So adding a group by option to the Record ID tool would allow the user not to use the multi-row formula to do this and to start at any value wanted.
Love the new updates to the Browse tool in 2019.2! However, if you choose the option Open results in new window, which I do often so I can see my whole dataset, the search/filter/sort functionality goes away. Would be great if that new functionality also worked in the new window. Thanks!
It would be great if users have the option to display the number of records that go in and out of the different tools in your canvas. This allows users to very quickly see how many records are in their datasets, and especially quickly analyze the results of specific actions such as joins, filters etc. without the need to open each individual tool. Especially when performing joins this can be very useful to quickly see how many of your rows have been successfully joined. I think this will give users a feeling that they have more control over their data and a better understanding of what is happening in Alteryx. Also if you quickly want to review a complex workflow (especially when it is not your own) this could be a huge timesaver. Simply run the workflow and follow the numbers to see what is happening and identify tools that might cause issues.
When you download a workflow from the Alteryx Gallery to edit, the first typical step a user will take to debug is to run their workflow. This is potentially dangerous, as your user may not know what input data they are loading into what may be production data tables (as an example, when you are building apps you will typically have placeholder data in your inputs).
It would be great if the default option when editing a workflow stored on the gallery was that the 'Disable Tools that Write Output' button is checked, meaning people do not accidentally post incorrect information.
Can we please have a tickbox (ideally one that remembers your preference to be ticked or unticked) on the Save to Gallery pop up that would allow us to save a (timestamped?) copy of that workflow on a local drive (perhaps one that is preset in the user settings)?
Currently the Find Window is the only one not located in the View menu. It would be great to have it located either just under view or under both Edit and View. Most users are aware of the other windows once they discover the View menu, however I feel they are missing a lot of the new features with the new Find Replace functionality available in the Find Window. One looking at it under the Edit window it just looks like a simple Find, not like a whole new window that can be used as part of your Designer experience.
I've recently been playing with the 'Encrypt Workflow' capability within the platform, and it's great, apart from the fact that it is not possible to edit an encrypted asset, meaning users will have to store an unecrypted version of the file.
It would be great if the 'Serial Numbers' could be extended to allow certain users to be able to not only run the workflow but also edit the workflow.
Pretty simple one, but one that would be hugely valuable, preventing the need to maintain an unecrypted version of the workflow on your machine.
In many cases, I have several formulas in one formula tool. I'd like to be able to have all of these expanded whenever I select the formula tool that's in the workflow. Currently when I select a formula tool, I see "Screenshot Current". I'd like to have a setting available so that anytime I select this formula tool, I see something like "Screenshot Idea".
I think it would be a great idea where the system admin can control the logs and the location of the logs for all the alteryx designer users within an organization. This ensures that no data is being transferred outside the organization.