Be sure to review our Idea Submission Guidelines for more information!
Submission GuidelinesHello,
After used the new "Image Recognition Tool" a few days, I think you could improve it :
> by adding the dimensional constraints in front of each of the pre-trained models,
> by adding a true tool to divide the training data correctly (in order to have an equivalent number of images for each of the labels)
> at least, allow the tool to use black & white images (I wanted to test it on the MNIST, but the tool tells me that it necessarily needs RGB images) ?
Question : do you in the future allow the user to choose between CPU or GPU usage ?
In any case, thank you again for this new tool, it is certainly perfectible, but very simple to use, and I sincerely think that it will allow a greater number of people to understand the many use cases made possible thanks to image recognition.
Thank you again
Kévin VANCAPPEL (France ;-))
Thank you again.
Kévin VANCAPPEL
Hello all,
As of today, you can populate the Drop Down tool in the interface category with a query launched from a in-memory connection. I would really appreciate the ability to use instead an in-db connection.
Why ?
It means managing two connections instead of one, and finding ways to manage it on server for both of them, etc etc.. Simplicity is key.
Best regards,
Simon
Hello all,
This is a very interesting feature of the List Box and Drop Down interface tool : the ability to select fields
However such a feature is not available for in-database, highly limiting the use of macros.
Please change.
Best regards,
Simon
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:
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:
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:
I'm looking forward to hear what you think.
Best
Right now, the List Box interface tool allows end users to select multiple options of fields for selections, filtering, and formatting/formulating.
However, it doesn't do quite as good when a use case has over 1,000+ columns/fields. This is made even more complicated with each column/field having somewhat similar naming conventions thereby causing confusion.
Having a search function, as made available in standard Select Tools, Join tools, and other tools that has filtering capacity, will be most helpful for developers to give maximum flexibility to end users.
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?
Alteryx gods,
It would make me even happier than I am now if it were possible to tailor the completion messaging in the Interface Designer when an analytic app completes.
Currently, we use rendering etc, but sometimes we simply want to be able to create a bespoke completion message.
My example is as follows:
In the app you have the option to download files, or have them emailed to you. If you choose download, the final display is the render tool with the documents listed, however, if you choose email I want nothing to show but the final window with the message "Please check your email" or something. There may be more than one option, and so being able to dynamically change these messages would be very useful.
Help me Alteryx gods, you're my only hope.
*beep boop boop*
When searching for a workflow in the application we severely struggle with being able to locate the workflows we need. The same thing happens when searching in the gallery. The information entered that will pull up a workflow doesn't seem to search across the workflow name nor does it seem to use any regular search engine function e.g. "search term" will return all and only results that contain exactly those parameters.
Example:
WF Name: "Magic_Workflow_business_purpose"
We can search for
For THIS particular workflow, let's say only the search term of "business" works.
It seems to be completely inconsistent. We've had MANY circumstances where NO entered search parameters return the desired results and we find ourselves having to sort all workflows by name and slowly scroll through (waiting for more to load) until we locate the named workflow. Out of all the amazing things Alteryx can do, if we can't find the work we've developed in it, we can't use it.
Thank you!
Regards, MAKpfe
Please add either or both
The purpose is to provide a better way to pass data, and thus allow "Action" tool to be used, from interface responses in a previous App chained to the current App.
Use Case:
We had a workflow with 8 TREE tools and 3 of them had significant number of rows associated. This caused frequent failures where the queries getting the multiple layers of data for the TREE would time out.
Through trial and experiment we determined this was the issue by removing TREE tools until we had consistent function.
Most if not all the TREEs and all of the 3 offending TREEs were used to modify FILTER tools, in this case each of those 3 TREEs 3 or 4 Actions driving the same number of FILTERs
So we had to find a way to break up the operation. Ultimately I separated the 3 large volume TREE tools into a separate workflow to run first and then CHAIN to the original flow with modifications to read the responses passed from the new 1st workflow in the chain and replaced the FILTER with JOINs, effectively filtering by JOIN.
This worked but was extra work and it made me think of the many other situations where I would like to take input from an external source and affect a FORMULA or FILTER or a few other tools where an ACTION is best/only way to modify tool configuration at run time.
I think this lack of a way to use an ACTION tool with a "Non-Interface" data source has probably limited the opportunities of Applications.
Given the division of labor in an APP,
there is no way to make a run time ACTION tool as it must do its job before the core job runs.
This adaptation of the TREE tool, which is my preference, or the adaptation of the Text Box tool, offer good solutions that should be fairly simple to code and roll out the the user base.
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.
I have developed many workflows, macros, and apps, and I have always had to find a workaround for displaying information on the user config page or user interface.
For example, I want to input 'Default text' into the Text Box interface tool, but the problem is that it does not accept any external connection.
It would be great if this tool had a Q input anchor that could accept data from a connected tool (in both single or multi-line mode) or from external input (such as a file for DropDown list or List Box tools).
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.
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.
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!
This is a hybrid idea related to both posts regarding dynamic tool configuration during runtime / without having to run an analytic app.
What I would like to propose is a new optional connection type for the interface tools that can be updated with incoming connections (having a Q letter with white background), namely Drop Down, List Box, Tree and Map tools. This could be a simple R letter in a square for example, which would be located to the left of the incoming question anchor.
Use Case
Imagine an app where there are two control containers and three interface tools (Action tools excluded from the count) outside those containers, one of them is a Text Box connected to a filter tool (via an Action tool) in the first control container with the purpose of limiting the dataset by specifying a city for example, another one is a Numeric Up Down for limiting the dataset by the average transaction amounts that are greater than the specified amount. These two interface tools are contained in a Group Box in the Interface Designer.
The third interface tool is a Drop Down tool which obtains the values (which will be Store Name for this example) from the results of the Select tool (in the second control container that is connected to the output anchor of the first control container) that is connected to an incoming filter tool which is modified by the previously mentioned interface tools. Output anchor of this Select tool is connected to the hypothetical R anchor on the top of the Drop Down tool, which is then connected to an outgoing filter tool that is connected to a series of tools which ends with a Browse tool that displays basic KPI information for the store specified from the Drop Down tool.
The main difference of the R (Refresh) anchor from the Q anchor is that it will enable the user to dynamically update the incoming values (i.e., choices for a drop down tool) without having to run the workflow. Alteryx Designer will automatically execute only the tools necessary to be able to update the values (up to a certain point of the workflow only, which may also be indicated by the boundaries of the control containers containing the target tool) for the R anchor connected applicable Interface tools specified above. This will be possible by clicking the hypothetical confirm button (same appearance with the Apply Data Manipulations button) which only appears next to the Interface tools (or the Group Boxes containing them instead) that are automatically determined by Alteryx Designer to be providing downstream data to the the tools (T anchor of the Filter tool for example) sending values to the applicable Interface tools having an incoming R anchor connection.
I saw that a similar feature recently became available with Alteryx Analytics Cloud Platform with the App Builder product, and I think that Alteryx Designer Desktop could definitely benefit both from this feature and additional App Builder features (that can be adapted to Desktop counterpart) in the upcoming releases.
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.
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).
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".
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.
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.
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
Changing the Macro Input tool in an existing macro is dangerous and can result in unmapped fields or lost connections in workflows using the macro. For example, we have a widely used macro for which we'd like to change the name of an input field, change it's default type from Date to DateTime, make it optional while keeping other fields mandatory. Currently, we cannot find a solution which would not require us to fix each workflow using the macro after changing it. We should be able to change the field names, field types (e.g. String to V_WString, Date to DateTime), select optional fields and do other modifications to Macro Input without having to update each workflow using the macro. The new Macro Input UI could be enhanced with a window similar to that of Select tool's. Technically, the Macro Input fields could have a unique ID by which they would be recognised in workflows, so the field names would just be aliases that could be changed without losing the mapping. In summary, we are restricted to our initial setup of Macro Input and it is very complicated to change it afterwards, especially if the macro is used widely.
User | Likes Count |
---|---|
4 | |
3 | |
3 | |
2 | |
2 |