It would be helpful to be able to embed a macro within my workflows so in the end I have one single file.
Similar to how Excel becomes a macro enabled file, it would be great if the actual macro could be contained in the workflow. As it stands now, the macro that I insert into a workflow is similar to a linked cell in MS Excel that points to another file. If the macro is moved the workflow becomes broken. I often work on a larger workflow that I save locally while developing. Once it's complete, I then save the workflow to a network drive and have to delete the macros and reinsert these. It also makes it challenging if I were to send a workflow to someone else... I will have to give them instructions on which macros to insert and where. Similar to a container, they could be minimized so to speak to their normal icon, and then expanded/opened if any edits were needed....then collapsed when done.
Thanks for the consideration.
In the newer versions of Alteryx - if you open up a canvas that was created in a newer version, alteryx offers to auto-fix this by opening the canvas anyway.
However if that canvas includes custom macros - these macros are not imported if they are a newer version.
Please could you extend the Newer Version process to include macros used on a canvas, and attempt to import these too?
A common problem with the R tool is that it outputs "False Errors" like the following: "The R.exe exit code (4294967295) indicted an error"
I call this a false error because data passes out of the R script the same as if there were no error. As such, this error can generally be ignored. In my use case, however, my R tool is embedded within an iterative macro, and the error causes the iterator to stop running.
I was able to create a workaround by moving the R tool to a separate workflow and calling it from the CReW runner macro within my iterator, effectively suppressing the error message, but this solution is a bit clumsy, requires unnecessary read/writes, and uses nonstandard macros.
I propose the solution suggested by @mbarone (https://community.alteryx.com/t5/Alteryx-Designer-Discussions/Boosted-Model-Error/td-p/5509) to only generate an error when the R return code is 1, indicating a true error, and to either ignore these false errors or pass them as warnings. This will allow R scripts and R-based tools to be embedded within iterative macros without breaking.
My idea comes when I've built an application, where user select filter from drop-down list. However it contains thousands of records, so it takes lot's of time to find desired record.
In Excel and MS Access when you use filter you can put many letter and filter shows rows that match the input. In Alteryx user can only put first letter, which is huge drawback to my users.
This is how it works in Excel:
Hope you like it!
We all love seeing this. And, it's fairly easy to fix, just go find the macro and insert a new copy. But, then you have to remember the configuration and hope that it was simple.
With the tool that's there, the XML still contains the configuration, all that's missing is the tool path. It would be great to be able to right click and repair the path from the context of the missing macro.
Idea: Prompt the user to find a missing macro instead of the current UX of a question mark icon.
Issue: When a macro referenced in a workflow is missing, then there is no way to a) know what the name of the macro was (assuming you were lazy like me and didn't document with a comment) and b) find the macro so you can get back to business.
When this happens to me know, I have to go to the XML view and search for macros and then cycle through them until I find the one that's missing. Then I have to either copy the macro back into that location or manually edit the workflow XML. Not cool man.
Solution: When a macro is missing, the image below at the right should be shown. In the properties window, a file browse tool should allow the user to find the macro.
I would like to see In-DB batch macros, currently we are joining tables with 30 million+ records and we are having to run it through standards tools because we are unable to process via In-DB, which has a 20% improvement in processing speed based on the peformance profiling.
Today, the behaviour of batch macro can be strange.
we can have big behaviour differences between :
-wf and app
-designer and scheduler
Example here with a batch macro running for all lines in designer and only for line in scheduler
I know the turnaroud (just use a message box) but it's not natural and I think
-at least the same behaviour is needed in any use case
-if you want to do some optimization, ok, but make it an option!!
It appears that Alteryx does not accept .svg (or other vector image format) for icons (I think to custom macro icons), image in comment, etc...
I think that would be a great idea, especially to manage web integration and support of different resolutions.
here an example of a svg logo I made :
As you can see you can zoom in/out without loose quality.
For reference, here is long blog post about why SVG is great : https://bumpsetcreative.com/10-reasons-the-image-format-svg-is-rocking-the-internet/
To sum it up :1) SVGs are widely supported
2) SVGs are speedy
3) SVGs scale perfectly
4) SVGs are high resolution
5) SVGs can be styled through CSS
6) SVGs can be animated
7) SVGs can be rearranged easily
😎 SVGs support transparency
9) SVGs are great for readability
10) SVGs stand out
The join tool currently does not allow case-insensitive joins, but the find/replace tool does. Additionally- even if both sides are identical, the join tool will not join "Sean's house" to "Sean's house" because of the non-letter character in the middle. Finally - if one side is a string(2), and the other is a vString(200) - even if you have a single identical character on both sides you get uncertain outcomes unless you force the type
Please could you consider amending the join tool to include 3 new options or capabilities:
- Case insensitive join
- Allow full Unicode character set in join
- Full match across text types (irrespective of string size) - this would allow a string(2) value to match to a string(100) value as long as the string(100) value only has the same 2 characters in it as the string(2) value
That would remove a load of work from every text-join that's being done on every canvas we do.
Macros are GREAT, huge timesavers, but nesting them is a royal pain.
I find I have to create the prompts of the nested macro again in the parent macro for them to be seen by the user. Could the future Alteryx sense any un-handled nested macro prompts and simply pass them through to the parent macro user interface?
I am using a Dynamic Input within a Batch Macro to allow the user to read (dump) data from multiple Oracle tables with varying schemas. If a table read has 0 rows output, then an error message like the following is displayed at the end of the job execution:
Because it is always possible to return 0 rows from the read, I'd like to mute the error message. If this message is present, I don't want to STOP the macro/application. I do however want to stop the application if an ERROR Message that I care about is encountered (e.g. Output file is not defined).
I decided to get real fancy when building a standard macro the other day. I checked the box on my macro input that made the connection optional:
It worked really well. My macro then became more complex, so I changed it to a batch macro. To my great surpise/astonishment/shock, the optional incoming connection is no longer optional:
The standard macro is working as expected on the left, but the batch macro is producing an error because my optional connection is requiring that something be connected to it.
I've been told that the code to make it optional is not there for batch macros and that this would be a product feature/improvement.
Despite being an Alteryx user for 2 and a 1/2 years this is something I have only recently came across but it does not appear that you are able to use debug mode appropriately with macros.
What I mean is, I have a macro input which drives a series of drop down boxes. In debug mode my drop down boxes will not populate. Now I understand why, Alteryx doesn't know what the input is so it doesn't generate the meta data for the debug mode drop downs.
What I suggest Alteryx do is automatically convert your macro inputs for file browses for the purpose of debug mode (I had to do this myself manually and it was a tedious task, not only to set up but then maintain two separate versions, one essentially an application and one a macro).
Or, by default debug mode uses the macro input data to run through debug mode as.
Current State: When a macro contains nested macros the only method that reliably works to share them is via yxi (which I fondly refer to as my wixies).
Future State: Allow macros published to the gallery be their own tool palette so that when I or any user connects to the server the macros are there and just work, no import, no visible install just a single set of tools that work on that server.
Side task - also get export to yxi
As seen in This Discussion Post, the idea here is to be able to add a link to example workflows in macro descriptions - like the ones seen in native tools.
Many thanks to @jdunkerley79 for demonstrating how this can be done by manually editing the macro's XML - specifically by adding a child element to the <MetaInfo> section, like so:
<Example> <Description>Open Example</Description> <File>\\aSERVER\aRootDir\path\to\Alteryx\Macros\Date Wizard\Date Wizard Examples.yxmd</File> </Example>
"Alteryx default behavior is to look for examples under .\Alteryx\Samples\02 One-Tool Examples or Alteryx\Samples\02 One-Tool Examples (or .\Alteryx\Samples\en\02 One-Tool Examples)."
Having said that, trying to reference a macro example in the same folder (using a relative reference) will throw an error given the following situation:
Date Wizard.yxmc XML edits:
<Example> <Description>Open Example</Description> <!-- THIS WORKS --> <File>\\aSERVER\aRootDir\path\to\Alteryx\Macros\Date Wizard\Date Wizard Examples.yxmd</File> <!-- THIS DOESNT <File>Date Wizard Examples.yxmd</File> <File>.\Date Wizard Examples.yxmd</File> <File>./Date Wizard Examples.yxmd</File> --> </Example>
This shows a link in the Macro description but yields an error (shown below) when it is clicked.
Once again, this works fine with an absolute file path reference.
Here is ultimately what I am suggesting: Can we add an option to the Interface Designer (that updates the XML) and have it allow relative paths? Allowing relative paths would obviously be essentially to maintaining the macro's ability to be "lift-and-shift" when packaged/moved/uploaded to servers/galleries etc.
I'm assuming the option could look something like this, similar to the "Help" file -only it would show link in the macro description...
In conclusion, this would be very useful in providing links to example workflows for custom macros that may be complex and/or not self-explanatory.
Can we get the input tool to automatically convert long filenames to the 8.3 convention inside of a macro?
I've written a batch macro that individually opens files in order to trap files that fail to open. However, when I pass in really long file names it bombs because beyond some length the Input tool converts the path to 8.3 but that logic doesn't fire inside of my macro.
Example of filename:
\\ccogisgc1sat\d$\Dropbox (Clear Channel Outdoor)\Mapping\BWI MapInfo\Workspaces\Local\AEs\Archives\Cara\Sunrise Senior Living\Washington+DC_Adults+55++With+HHI+Of+$75,000++Who+Are+Caregiver+Of+Aging+Parent_Relative+Or+Planning+To+Shop+For+Nursing+Care_Assisted+Living_Retirem.TAB
When building and debugging batch macros - it is important to be able to add test values and use these for debugging. However, the input values in the interface tools section do not allow input, and the ability to save or load test values also does not work.
While there is a workaround - setting the values in the workflow variables - this does not work fully (it doesn't reflect in the interface view; and is incorrect in the debug report) and is inconsistent with all other macro types.
Please could you make this consistent with other ways of testing & debugging macros?
All screenshots and examples attached
Screenshot 1: not possible to capture test values
Screenshot 2: saving and loading test values does not work
Screenshot 3: Workaround by using workflow variables
Screenshot 4: Values entered do not reflect properly
Screenshot 5: Debug works partially
The performance profiling option on the "runtime" tab is very helpful to identify bottlenecks on a long-running workflow. However this is missing (along with the entire "Runtime" tab) if I change this to a macro.
Given that the only way to build relatively complex dependant chain jobs is to wrap them in dummy batch macros (using a macro like a sub-procedure with flow-of-control on the master-canvas) - most of our work is done in Macros - so it would be helpful to be able to performance profile them during testing.
When building an Alteryx Macro - one of the tough parts is that the input data you put into the Macro Input is used for testing, but you cannot set the type.
So for example - I want to test with the value 1, and Alteryx automatically assumes this is a Byte.
However 1 is just a useful test value, but I need this to be an int 64.
Can we provide the option to strongly type the macro inputs - this way, we can give advanced users the ability to control the type on Macro Inputs, and not run into this sort of issue with test data implicitly defining the type?
Note: this is similar to the idea here: