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.
Find answers, ask questions, and share expertise about Alteryx Server.
It's the most wonderful time of the year - Santalytics 2020 is here! This year, Santa's workshop needs the help of the Alteryx Community to help get back on track, so head over to the Group Hub for all the info to get started!
I am working on building some macros to put into a company-wide library. However, when I try to publish a workflow with a custom macro to our Analytics Gallery, I receive an error during the validation stage stating that the macro could not be found. To try and fix the situation, I went into the server and within Designer added the folder location of the library into User Settings-->Macros (while logged in as the service account that runs server workflows). This did not seem to fix the issue.
I also pushed the macro itself up into the gallery, but I'm not exactly sure how to use that published macro within other workflows (much less get it into Designer's ribbon on my local machine).
Ideally I would like to point the server to a Macros folder on my network filesystem so that all users and the server are operating off of a common bank of Macros. I know that there was some work recently on adding macros and other workflows into the gallery, but I can't seem to dig up documentation on using these macros.
The only way that it looks like I can get it working is to package the macro as an asset with the workflow. While this may work in the short term, it would make maintenance difficult if we update the company-wide macro and everyone has to republish any workflow leveraging that macro. Any help would be greatly appreciated.
Thanks for the reply. Unfortunately, it looks like that is modifying your local ini, which I believe is what is being accomplished through the User Settings. I need to add a Macro to the gallery itself, not my local PC. Please correct me if I'm misunderstanding the intent of this workflow, but that's how I interpret it.
To upload a Macro to the Gallery, you upload it as a regular workflow (be sure to check the workflow dependencies when publishing). To be reused in further workflows, or by other users, it should be downloaded / opened from the Gallery, and the workflow that uses it, published.
Please, don´t hesitate to keep asking if I still don´t get what you need.
Thanks for the continued help. So I am able to get the Macro uploaded into the gallery, but I'm still unclear how I can use that gallery copy of the macro in another workflow. To use the macro when it is stored locally (on my PC), I can either pull it off of the ribbon (since I added its folder to my Macro Search Paths) or right click and add the macro from the context menu. If the macro is stored within the gallery, I'm not sure how I can use that copy of the macro in another workflow. The only way that I can figure would be to find the actual path of the macro file stored on the gallery's server and add it from the right-click context menu. This does not seem very feasbile for scale though even if the permissions do work out.
If I download the macro from the gallery onto my local PC and use it in another workflow, I believe that I will be left with the same problem as before where I will get the error that the macro was not found in the gallery. I think that this will only work if I package the macro with the workflow as an asset. Again, please correct me if I am misunderstanding somewhere along the line or just not clear on how to use the macro from within the gallery. Thanks again for all of the help.
Yes, you are correct. If it is a custom macro, you must add it to the package of the workflow (app or macro) you wish to publish that references it. If it is not a macro that ships with Alteryx, it will not be present in the installation of Alteryx on the gallery servers.
Thank you both for your continued help. I ended up speaking to Chad Martin yesterday on a few other matters and found a solution. So we discussed that there were two options for handling custom macros within gallery workflows:
Include the custom macro as an asset - This will package the custom macro with the workflow and essentially lock that macro into the workflow as it was when the workflow was published. While this may at times be desirable, I was curious if it was possible to have the workflow reference a centralized repository of macros that could be updated should a bug be found in the macro or enhancement desired.
Add the folder containing the custom macro to the Macro Search Paths within Alteryx Designer on the server itself - This way, if both my local PC and server reference a common folder on my file server, they are utilizing the same custom macro set. This allows me to include macros without having to package them as assets. While I indicated that I tried this in one of my previous posts, there was a nuance that I was unaware of that Chad helped me uncover: drive pathing. Apparently including a network drive location into this Search Path using a drive name (i.e. G:\Macros\mymacro.yxmc) will not work on the server. Once I switched this Search Path to an explicit UNC path (i.e. \\myfiles01\Macros\mymacro.yxmc) the Macro Search Path was properly picked up and I was able to use a common set of macros between my local PC and the gallery server.
Thanks again to everyone for the help in figuring this out; your help is much appreciated.
Does anyone know if there are any improvements coming for this? I'm running a trial version of Alteryx Server right now to see if it is beneficial for our company. I was hoping to be able to publish the macro to the gallery and use it directly from the gallery. While the centralized network location for macros would work, it doesn't get the versioning benefits of the gallery.
I have heard this is a feature they want to offer, but I, too, would appreciate an official update. We use macros on a network share pretty extensively and we'd love to establish version control by getting them on server.