Inspire EMEA 2022 On-Demand is live! Watch now, and be sure to save the date for Inspire 2023 in Las Vegas next May.

Alteryx Designer Ideas

Share your Designer product ideas - we're listening!
Submitting an Idea?

Be sure to review our Idea Submission Guidelines for more information!

Submission Guidelines

Featured Ideas

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:

  • Design Patterns
    • Repetitive patterns to be reusable.
    • Select after and Input tool
    • Drop Nulls
    • Get not matching records from join
  • Conditional execution
    • Tell Alteryx to execute some logic if something happens.
    • Record count
    • Errors
    • 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”
  • Orchestration
    • 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:

OnCanvas.png

 

 

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:

 

ToolcontainerConfig_Comment.png

 

 
  1. Refers to the actual interface of the Tool Container.
  2. 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.
  3. 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.
  4. 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.
  5. 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.
  6. 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:

Alteryx Choreographer.png

 

I'm looking forward to hear what you think.

Best

When building out Alteryx workflows there may be a need to read in different ranges within the same Excel spreadsheet. For example bringing in a table from Sheet1, but also isolating a table name in a particular cell (in my example cell C8).

 

cgoodman3_0-1651072926555.png

 

When turning this into an analytic app, with a file browse is to add an action tool with the default value of "Update Input Data Tool".

cgoodman3_1-1651073022944.png

 

However when specifying this option within the analytic app interface, you are only allowed to chose one option of the following:

i) Select a sheet

ii) Select a sheet and specify a range

iii) a named range or

iv) a list of sheet names.

 

The problem is in the example above I need a sheet and a range, but I want to avoid adding two file browse interface tools as it shouldn't be needed. If the user selects (i) then it loses the reference to cell C8, but I would imagine a lot of users as they get started with apps don't realise this is what will happen.

 

There is however a way to solve this currently and it requires overwriting the default behaviour and configuring the second action tool (the one that updates the file for C8), to update value with a formula, where you assume the user would select sheet name and then use this formula:

 

replace([#1],"$`","$C8:C8`")

 

However I would argue that this has a lot of technical debt, plus if the user needs to modify where the header is, for example to D8 they need to change the input file and the action tool so it works as a workflow and an analytic app.

 

Solution

Like how the configuration options for the input file, such as which row to input data from or whether first row contains data is maintained, modify the behaviour of the default option in the action tool to maintain references to ranges.

 

 

I think I'm liking the new UI, but I think it's necessary to bring back save, undo and re-do buttons....

 

1. Frequent saving of workflows is crucial and not everyone uses keyboard shortcuts

2. The ability to undo (lots) of changes is a key part of iterating and rapidly building workflows in Alteryx and again not everyone uses keyboard shortcuts to do this.

 

Looks like there's potentially space to add this to the right of 'help' (I suspect this might be technically quiet difficult) or to the left of 'run', 'schedule' and 'active documents' as seen in the image below.

 

Out of interest, where has the 'documents' terminology come from?

 

2018-11-14 22_12_14-Alteryx Designer x64 - PureGym Log In.yxmd_.png

 

 

 

I will start off with a story. I have built a process to manage batch API requests. It's an iterative process that checks to see where the export is at by calling an API and then returning some status. It will run and wait and run and wait until the export is ready to be downloaded. However sometimes, the jobs don't finish and a status returns something like "failed" or "cancelled". When this is the case, I have my process (which is a little bit batch macro) kicks off an error message, using the nifty error message tool. After some time I noticed that it was a PAIN to go back and figure out which of my requests failed and I decided that I need to add some messaging around where this was failing, so I could do some easy auditing. So I go back into my tool and much to my chagrin, I cannot pass variables into the message section. I would expect it to have worked something like this:

 

"Record "+[#2]+" is not 'A'"

 

Can we please get a change to this. It would save a lot of time and energy if we could create a dynamic error message option.

 

TL;DR Please allow us to use formulas in the "If expression is true, display error message:" settings area.

I am running into unexpected functionality when utilizing the date interface tool in an Analytic App after upgrading to 21.3. Previously I was able to easily select dates in the past in the app interface by first selecting the Year, then the month, date, etc. After updating I am only able to see the prior and upcoming three months, which makes it difficult if you need to navigate back, say, 10 years. A ticket was put in they could not find when or why this change was made. This issue was brought up to our Designer SME group and they agreed that this isn't an improvement on the old design and is more cumbersome. They recommended posting to the Ideas page to bring back the old design.

There are many circumstances when you have to build an interative macro where it's not just the iterating data set that needs to change every iteration, but also a second data set.

Think about this like a loop where two different variables are updated on every iteration, not just the control variable in the For xxx control variable.

 

The way that users work around this is to use a temporary yxdb file where instead of a macro input you input from the yxdb, and then write back to the same yxdb.    This allows you to pretend that you can adjust 2 different data sets on every cycle of the loop.    there are 4 downsides to this:
a) User complexity - this breaks the conceptual simplicity of macro inputs since now the users have to understand that in situation X I use macro inputs; and in situation Y I have to use some other type of tool.

b) Speed penalty - writing to disk is between 1000x slower and 1 000 000x slower than working with data in memory (especially if it's in cache) - so by forcing this to go through a yxdb file, you do incur a speed penalty which is just not needed

c) blocking penalty - Because of the fact that you can't write to a file that you're still reading from, you need to pepper this with Block until done tools - and you need to initialize the macro using a first write to the yxdb file outside the macro - which further hurts speed.    Given the nuanced behaviour of block-until-done, this also introduces user complexity issues

d) Self-contained - because you have to initialize these files outside the macro - the macro is no-longer self-contained and portable (which breaks the principle of Information Hiding which is a key pillar of good modular decoupled software design.

 

The other way that users work around this - is to serialize their entire second recordset into a field which then gets tacked onto the iterating data set using an iterative macro.   This is HIGHLY wasteful becuase then you have to build a serialize & deserialize process for this second recordset.    It fixes the speed and blocking penalites from above, but introduces a computational overhead which is generating no value; and makes this even more complex for users - and a further blocker to using macros.

 

 

Recommendation:

We could make this simpler by allowing users to create multiple pairs of macro input / macro outputs so that 2 or 3 or n different data sets can be updated with every iteration.

 

 

Below is a screenshot demonstrating this, from an Advent of code challenge - the details of the problem are not important - the issue at hand is that there are 2 record sets which both need to be updated on every iteration.

 

cc: @NicoleJohnson @Samanthaj_hughes @SteveA 

 

SeanAdams_0-1641333684845.png

 

When writing a good amount of code, it is easy to get lost in a sea of parentheses.  Just when you think you're all done, you get an error that can force you to scour through your code to find the missing, extra, or misplaced parenthesis. 

 

A common feature today is to highlight a parenthesis when its partner is clicked on.  This instantly lets you know if you have the wrong number of them and where. 

 

I didn't think this was that important early on in Alteryx, at least for me.  Formulas were meant to be short and easily readable at a glance.  Now as I dig deeper, there's R, Python, SQL and other text-heavy inputs. 

 

I don't need a full-fledged text editor in Alteryx, but I would love some quality of life features like parentheses matching.

 

It would be nice if we can arrange some tools on the canvas neatly by one click and having them distributed evenly (horizontally/vertically).

 

See this picture which worth thousand words.

 

Dsitribute Tools Horizontally/Vertically.jpg

  • Category Interface

The drop down\list box have numerous ways to list values. One of them that I like is connecting to an external source. You simply have an external source file with a Name column and a Value column. It will display the data in the Name column and pass the data in the Value column. Now suppose instead of connecting to an external source I wanted to use connected tools. Currently, I would have to crosstab this data and the drop down\list box would display and pass the column names.

 

What if the drop down\list box could have an additional option added where you could connect tools and it would act identically as an external source (display the data in the Name column and pass the data in the Value column). This would be much easier and more functional!

This request is super simple!  I love how Alteryx displays the row count and size of the data passing through each tool at run time.  Can you set the default formatting for the row count indicators to be #,###?  Without the commas, it's hard to easily check the row count once you get more than 6-9 digits.

 

In the example below, it would be so much more readable if it displayed as 75,640,320.

 

Capture.JPG

  • Category Interface

There needs to be a way to step into macro a which is component of parent workflow for debugging.

 

Currently the only way to achieve to debug these is to capture the inputs to the macro from the parent workflow, and then run the amend inputs on the macro. For iterative / batch macros, there is no option to debug at all. This can be tedious, especially if there are a number of inputs, large amounts of data, or you are have nested macros.

 

There should be an option on the tool representing the macro in the parent workflow to trigger a Debug when running the workflow, this would result in the same behavior when choosing 'Debug' from the interface panel in the macro itself: a new 'debug' workflow is created with the inputs received from the parent workflow.

 

On iterative / batch macros, which iteration / control parameter value the debug will be triggered on should be required. So if a macro returns an error on the 3 iteration, then the user ticks 'Debug' and Iteration = 3. If it doesn't reach the 3rd iteration, then no debug workflow is created.

When training people on the use of action tools, something that I always have to hit on is that when you are telling the tool which piece of the XML that you are adjusting, it's sort of difficult to tell what you have selected, and super easy to accidentally select something else.

 

Example:

When you initially select the action to take it's this nice Blue Color. However, it still doesn't feel exactly like you have actually selected anything or told the Action Tool what to do, since it's so easy to just select any other one of these actions.

clipboard_image_0.png

 

A slightly different problem is that if you are selecting an action that has been previously configured, it is just this light grey color. So it can be easy to accidentally change your settings because you may not realize it's actually set up.

 

clipboard_image_1.png

 

Here is a recent community post that sort of outlines a few of these problems.

https://community.alteryx.com/t5/Alteryx-Designer-Discussions/Analytic-App-to-Create-Custom-SQL-Quer...

 

Most of the time I use containers to help structure and layout my workflow, as well as then enabling or disabling different parts of it. It would be nice however to still see the tools within a disabled container but have the container greyed out or hashed out?

 

Enabled Tool Container

Screenshot 2020-11-19 184832.png

 

Disabled Tool Container

Screenshot 2020-11-19 184832EDIT.png

 

Thanks,

 

Sam 🙂

The newest versions of Alteryx have the Designer Interface Calendar tool being very large when the app is run in Designer.  Anyway to give us the option to size it?  The old version was much more manageable from a development perspective when you have several of them on one screen.  Now you can barely fit 3 of them in one 23in screen.

Hi,

I'm not finding it anywhere as a current option, but my company uses branded PowerPoint slides using our logo, these slides are in 16.:9 (widescreen) for slide size, but Alteryx won't output to that size even if I choose custom for page size & have Widescreen selected as an option. Could there be an Advanced Options button added that would allow users more output choices, like choosing the 16:9 ratio size output? Without it, I'm having to output the largest map I can create (13 x 9.75 in Report Map tool) and then stretch/shrink to get it to fit the 16:9 slide...for every single map/slide (currently making 40 maps at once).

 

Is there a work around to accomplish my goal currently? And if not, could the option be added to the Render tool? Thank you!

When building iterative macros and debugging I tend to copy an paste the calculation part multiple times underneath to see what the status would be on iteration 2, 3, 4... However when there are multiple inputs to tools in the calculation steps, for example join tools or unions, then for each step it need re-connecting. 

Untitled drawing-8.png

 

So the idea is two fold

1) Allow the user to 'lock' an input so that when that tool is copied the upstream connection point is always the same, e.g. the R input for the join tool is automatically connected to the D input macro whenever that tool is copied

2) For iteration outputs, recognise that the select tool is connected to an iteration input so when it is copied it takes the iteration output as the upstream tool.

It would be really useful to select a default date for Date interface tools for the end user. Really useful in other interface tools and would save a lot of time in testing.

Hello, 

 

Please can we have some drawing tools, so we can add another dimension to our workflows.  I would like to draw arrows and lines across my workflow, so I can show the different stages of the workflow. I could use containers as an alternative, but feel lines would be better.

 

Also, is their a grid-line option, and a space equally (to spread tools evenly across work page), and an auto straighten!

 

Also, when you FIND, it would be nice if the Find box is allowed to stay on screen, whilst you work on the tool that has just been found; and if the founded tool can be highlighted more clearly so it can be seen. 

 

Also, a timer, so we can see how long the workflow runs for.

 

That's it for now. 

Thanks

  • Category Interface

Dear Users, Fans, Compatriots, and Fellow Alteryx Nerds:

One of my favourite parts of using Alteryx is that in all the in-memory tools, there is a quick-and-dirty count in each of your tools' output nodes. You know, you use these all the time and when you switch back into SQL, you get frustrated with having to run the query two or three times just to see the count in each of your join outputs. 

One thing I'm missing as an INDB user is that I have to employ a manual workaround to see what is happening. INDB tools are a bit black-box in that we don't see the counts.

All I want...All I want...

 

 

I've been using this workaround for a little over a year now and I haven't found it to be incredibly taxing on my resources, so I'm wondering if Alteryx may be able to look into doing this on the back end to make the INDB experience that much closer to the in-memory experience. I just want those numbers above; I don't need to know the byte count, just the record count.

What I need to do to get itWhat I need to do to get it

 

Now, I imagine this is not implemented already for a Very Good Reason. But, enough is enough! Let's shoot for the moon and make this tool all that much better!! Anyone with me?

 

-Cedric Justice

Cambia Healthcare

 

It is just a bit of annoyance, really. I'd like to see the option of inputting a hexcode of color and/or a screen color picker in the color dialog. At the moment, you have to change R, G, B separately or play around with the cursor to find the right color.

The color dialog is relevant for the documentation purposes but also reporting tools and I'm sure it would make life easier to some people, especially when branding colours are important.

 

 

image.png

Top Liked Authors