This is a QoL-request, and I love me some QoL-updates!
While I'm developing I often need the output of a workflow as input for the next phase of my development. For example: an API run returns job location, status, and authentication ids. I want to use these in a new workflow to start experimenting what'll work best. Because of the experimenting part, I always do this in a new workflow and not cache and continue in my main flow.
Writing a temporary output file always feels like unnescesary steps, and tbh I don't want to write a file for a step that'll be gone before it reaches production. Esp if there is sensitive information in it.
I surprisingly couldn't find this anywhere else as I know it's been discussed in person on many occasions.
Basically the Formula tool needs to be smarter in many ways, but this particular post focuses on the Data Type component.
The formula tool, should not always default to V_String as the data type when entering data or a formula into the formula tool, it should look at the data type and estimate the most likely option.
I know there are times where the logical type might not be consistent in all fields, but the Data Preview and the Function of the formula should be used to determine the most likely option.
E.G. If I type a number or a date directly into the formula tool, then Alteryx should be smart enough to change the data type from the standard V_String to Int, Double or date.
This is an extension to the ideas posted here:
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.
We have 'CountDistinct' and 'Concatenate' options within Summarize tool.
But 'Concatenate' displays all the instances of value for a Grouped field, this might include lot of duplicates.
It would be great to have an option like 'ConcatDistinct'.
For example -
Group by 'Branch' and 'ConcatDistinct' Customer should result as Figure 1 instead of Figure 2 -
While this is achievable in different ways currently with a set of tools, but it gets tedious when number of fields is large from which distinct values are to be captured.
As each version of Alteryx is rolled out, it would be much easier for our users and admin team to validate the new version, if Alteryx allowed parallel installs of many different versions of the software.
So - our team is currently on 11.3 - if we could roll out 11.5 in parallel then we could very easily allow users to revert to 11.3 if there are issues, or else remove 11.3 after 2-3 weeks if no issues.
The same goes for versions which are in BETA.
This would be a huge help!
When creating a workflow I generally open a "TEMPLATE" first and then immediately save it to the "NEW WORKFLOW NAME". My template includes all my preferences that aren't set naturally within the user settings and won't get RESET by them either. It has a comment box and containers as well as logos and copyrights. It would be nice to have ready access to this feature. Maybe others have standards that they want applied to all users and their workflows too.
When configuring a FILTER tool, the results of your formula are uncertain until you RUN/PLAY the workflow. Compare that experience with the configuration of a FORMULA tool where you see a "Data Preview" of the first record results.
TRUE or FALSE could readily be added to the Filter Tool and save the execution time for the workflow.
When you get to HTML tool versions, you could check many rows of data and potentially give back counts of TRUE and FALSE results as well.
I'll put this on my x-mas list and see if Santa has me on the naughty or nice list.
As of today, Alteryx can use the proxy settings set in Windows Network and Internet Settings "Server pulls the proxy settings displayed in Engine > Proxy from the Windows internet settings for the user logged into the machine. If there are no proxy settings for the user logged into the machine, Engine > Proxy isn't available within the System Settings menu.". Then, you can override the credentials (but not the adress) in system settings but also in user settings.
The issue : in many organizations, there are several proxies that you can use for different use case. And by default, it can happen access to API are blocked by these proxies. The user, which is not admin cannot change his Windows Settings... and even if it's done by IT, it will impact all the system, including other software and leading to safety failures.
What I suggest :
-ability to change credentials AND adress
-a multi-level settings for both credentials and adress:
default : Windows Settings
Download tool/ Settings
When using the Sharepoint Output tool - we have seen a few situations (which are widely reported in the designer discussions thread) where the write to sharepoint fails, but no error is raised.
This often happens because of mismatch in data types, but we've also seen this for other reasons (e.g. we had this once due to column ordering). In the worst case - this can end up with the sharepoint list being emptied out if the write fails on the first item, again with no error indicator.
The Sharepoint Input and Output are very widely used as a way of giving users a very simple UI to input data that can flow into an Alteryx Canvas - so this is a very commonly used pattern in our environment.
Could we request that the Sharepoint output tool be changed to include explicit errors and warnings on write, so that the user has a guarantee that either the write took place or there was an error to reflect the issue?
When I proceed with this command in a python tool:
from ayx import Package
in Alteryx it only updates to 0.25, but the Latest version is 1.1.2.
When I would like to upgrade from the Python side i get the following:
ERROR: ayx 1.0.54 has requirement pandas<0.25.0,>=0.24.2, but you'll have pandas 1.1.2 which is incompatible.
Can you please make sure we can upgrade to the latest version of pandas without any compatibility issue?
This is important because of json_normalize. Really useful tool, available from pandas 1.0.3!
Currently in 2020.2 (but I assume all versions), when you have a workflow running and click on the Tool Name/ID (1 - in the picture below) in the results window it is then not possible to click on the canvas OR get back to the messages for the full workflow as it is then locked to that tool.
The idea is that it should be possible to get back to all of the workflow messages if you click on a tool name in the results window whilst the workflow is running.
However, a neat little tip that I found is if you click on the input, output or browse hyperlink (2 in the picture below), it will open a pop-out browse rather than show the data in the results window, meaning you can still see all of the messages)
This leads me to think that it could and should be possible to see browse anywhere data whilst the workflow is running if this is fixed. Here's a separate idea for that.
Can we have an option to save a workflow in a prior version for backward compatibility? I think Tableau offers this functionality.
If I have 2019.4.8 and a colleague has 2019.1.x, I cannot share my workflows because my colleague will receive a notice that the workflow was built in a newer version. I want to be able to save my workflow in 2019.1.x and send to my colleague.
This is predicated on the workflow not containing any tools/features not present in the older version. In that case, give me a warning about the specific tools/features that are not backward compatible. Thank you.
#Deployment #LargeScale #CleanCode #BareBonesCode
Request to add and option to strip out all unnecessary text within a Workflow / Gallery App when deploying to the Alteryx Server to be scheduled or used as a Gallery App. Run at file location still causes the reading of unnecessary information across the network.
Often the workflows are bloated with un-used meta data that at a small scale is not an issue, but with scale... all the additional bloat (kBs to MBs in size) - sent from the controller to the worker does impact the server environment.
The impact explodes when leveraging the Alteryx API to launch the same job over and over with different parameters - all the non-useful information in the workflow is always sent to the various workers to handle each one of these jobs.
Even having a "compiled" version of the workflow could be a great solution. #CompiledCode
Attached is a simple workflow that shows how bloated the workflows can become.
I appreciate your consideration.
With an increasing number of different projects, involving different machine learning models, it's becoming difficult to manage different package versions across workflows. Currently, the Python tool has a single virtual environment, so we need to develop models in different projects always using the same Python and package versions as the Python tool venv. While this doesn't bother the code itself too much, it becomes a problem as soon as we store and load pickled models, which are sensitive to even minor changes in packages.
This is even more so a problem when we are working on the Alteryx server, where different teams might use different packages. Currently, there is only the server admin who can install packages on the server and there can only be one version per package.
So, a more robust venv management in the Python tool would be much appreciated!
Please enhance the dynamic select to allow for dynamic change data type too. The use case can be by formula or update in an action for a macro. If you've ever wanted to mass change or take precision action in a macro, you're forced to use a multi-field formula. It would be rather helpful and appreciated.
Today when we install custom tools that use DLLs, the DLLs must be placed in the Plugins folder inside the Alteryx installation directory. This requires a second step after the YXI installer runs. I would like to be able to package the DLL with the YXI installer and Alteryx will search for the DLL inside the tool's directory, just the same as what happens with custom Python tools. This will allow custom tools that use DLLs to be installed just as easily as the 1-step installation process for Python tools.
For example, this today does not work, but I want it to:
So I discovered this neat little tip today where if you have a browse tool in your workflow and click on the hyperlink (2 in the picture below) whilst the workflow is running, it will open a pop-out browse rather than show the data in the results window, meaning you can still see all of the messages). However, If you click on the Tool name/ID (1 in the image) is locks the results window to that tool. Idea for a fix here
And this lead me to think that Alteryx must be populating the temporary browse anywhere in memory as it's running, so it would be great if it was possible to either click on the tool anchors or the tool names in the results window whilst the workflow is running to see the browse anywhere data.
The current version of the Publish to Tableau macro retrieves an API key at the start of the workflow run. Often times the workflow may take several hours to run before it's ready to write to Tableau by which time the API may have expired. (I think the default tableau server setting times out in 2 hrs) It's one of those soul crushing "I should've forked the output!"
Sample Log Error -
The idea would be to change when the macro obtains the API from when the workflow is initiated to just before the workflow is ready to write to the Tableau avoiding these timeouts.
(If you're having this issue in the meantime you can have your Tableau server admin up the timeout)
I love Workflow Meta info, especially the ability to put the Author, the search tags,the version, the description, etc...
But why can't we use it as Engine Constant? It doesn't seem very hard to implement and it would change life for development.
Environment variables act as a shortcut so that different computers can be configured in different ways, but a particular path will still point to the right place.
For example if you open up explorer and go to %TEMP%\ - you will open up whichever folder is set up as Temp on this machine. This is super useful so that you can use a particular logical folder without knowing the actual placement on every machine (for example the Windows Directory)
This works partially in the Directory / input - when you put in the environment variable, it is able to search possible subdirectories (screenshot 1) but it does not work once you run the workflow (screenshot 2).
It seems as if the designer hits the Windows API directly, but it does not work within the engine.
Please could you alter the engine to be able to make full use of the environment variables on the machine in question in the directory path or input tool path?
Currently we can't use any PaaS MongoDB products (MongoDB Atlas / CosmosDB) as Alteryx Gallery doesn't support SSL for connecting to the MongoDB back end.
SSL is good security practice when splitting the MongoDB onto a different machine too.
The Alteryx Python tool currently throws an error if the inbound record set has zero rows (screenshot 1).
In order to manage that - you need to create try-except block around the Alteryx.read that instead creates an empty record set data frame. (screenshot 2). This is inefficient because every time you change the canvas before the python tool, you need to re-code a static field list into the try-except block (i.e. you can no-longer deal with variable fields)
Please could you change the Alteryx.read method to create a zero-record dataframe with the correct column names if the input is zero-length?
we have several environment in our organization : dev, recept, production.
In order to make that change safe we intend to make several connection (standard alias) like
In our workflows, we want to use aka:%Question.v_environment%HIVE
Sadly, this solution does not work despite the value defaut.
A whole field of performance improvement have not been explored by Alteryx : the hardware acceleration by using something else than a CPU for calculation.
Here some good readings about that :
The kind of acceleration we can dream !
There are three places that provides the log information:
1) Regular results window:
Pro: In the process sequence so the user can understand the order of the process.
Con: Doesn't have info on how long each tool takes to process.
2) Workflow -> Runtime -> Enable Performance Profiling
Pro: Processes are sorted in the processing duration descending order which helps to identify the ones that took long to run.
Con: Doesn't show the process sequence.
3) Actual Alteryx log file:
Pro: There are timestamps for each process so the duration can be calculated.
Con: Not ready accessible and not user friendly to be seen from the interface. Not clickable to see more details in the workflow.
I think it will be SUPER HELPFUL to integrate all three together to show in the process order along with the running time.
It appears that the Workflow Dependencies window does not report dependencies from all tools. In the example image, you can see that the file input from the Amazon S3 Download tool is not listed. Some tools may have dependencies that do not easily fit the current field structure of the window, but maybe the input/download tools could be listed with an asterisk or partial reference.