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.
As Alteryx analysts, we’re whipping up insight at blazing fast speeds. Workflow after workflow, tool after tool, we’re gleaming functional understanding from inert webs of data that empower us to make better decisions. Good insight is only as good as it is shareable, however, and to enable better sharing any Alteryx analyst can take advantage of their Workflow Dependencies to simplify input or output path dependencies in shared workflows.
Assets are an important part of your workflows in Alteryx. Assets will need to be included if you want to share, schedule, and publish your workflows to your Gallery. We run into many cases where users are able to run workflows on their Designer but they fail on Scheduler and Gallery. In a lot of cases it is due to the pieces of the workflow are not all there in the Scheduler and Server database. In this article, we will talk about when you need assets, how to package the assets, and what assets you want to make sure are a part of your workflow.
When You Need Assets:
When building and using workflows in the Alteryx Designer you don’t need to do anything with your assets as they are a part of your workflow locally, but if you want to move the workflow somewhere or to someone, you will need to package the workflow.
When sharing your workflow with another user, the workflow will need to be packaged with those assets so that the user can run the workflow without error. This would include input files as well as macros. If the workflow is connected to a database or using Alteryx Data, the user will not be able to run the workflow successfully unless they have access to those data sources on their own machine.
If you have Server or Desktop Automation, the Scheduler will be using a database separate from your Designer. If you have Server you will be using a MongoDB and if you have automation you will be using a SQLite database. This would mean that any macros that are not on the server or SQLite database would need to be added. By packaging the workflow and scheduling the package, the Scheduler will be able to access any custom macros or macros not included with Alteryx. This would include Predictive as well unless you have installed the predictive tools to your Server. If you have version 11.0 Server or later, you can send your workflows to your private gallery and schedule them on your server. When you do that, Alteryx will package the workflow the same as if you were sending an app or workflow to the Gallery as below.
The Gallery works a little different than packaging a workflow or Scheduled workflow. The difference is that the Assets will need to be on the Alteryx Server along with the workflow for the app, macro, or workflow to be used on the Gallery. Basically, the Save As option to the Gallery of your choice will start the packaging process of your workflow and Assets. The Save As a workflow window will appear with information about your workflow that you are sending to the Server Gallery. Select Workflow Option. Below the Workflow Options you will select Manage workflow Assets. This is where you can include and exclude information being sent to the Gallery.
Packaging the Assets:
Select in the tool bar Options ->Export Workflow. This will then launch a window that will show the name of your workflow, the location where the package will be stored, and the list of workflow assets.
When sending your workflow to the Gallery, you will do a Save As to and the Company’s Gallery. A window will open and you will see Workflow Options at the bottom of the page.
Select Workflow Options
You will then reach the Assets window which is similar to the packaged Assets window above.
You also have a second option when sending workflow to the gallery. In the Workflow Configuration window, select the Events tab, Select Add, Run Command. You will see a tab called Assets where you can add assets to the workflow. This is especially helpful when you are adding a chained app to the gallery. Check out Jordan’s article for the step by step: Adding-Files-to-the-Gallery.
What Assets Do I Need:
Great! I found the assets, but why are some missing, some checked, some not checked and which ones do I really need and what don’t I need?
You may see that you have Input and Output assets. When you are packaging a workflow to send to a user, you can include those assets if the user does not have those files to run the workflow. If the user does have the files or they are going to update the Input files or Output files, then you would not include them. The Input and Output assets will never include database connections only files.
The .yxmc files can be an important part of your workflow. Many of the Alteryx tools are .yxmc files and if these macros are a part of the Designer package, you won’t need to include them in the package as Alteryx knows that these tools will be in the workflow (example Report Header Tool is a macro). If macros are downloaded from the Alteryx Gallery, custom created, or sent from another user, these macros will need to be included as Assets.
When you publish an application to the Alteryx Gallery it packages this workflow up into a yxzp and creates folders called 'Externals'. In these folders it might contain macros within your workflow or more commonly input and output file locations.
The Designer does this is to ensure your application has the read and write capabilities when published to the server. However, you may be confident that the server has access to a mapped drive or database. Therefore, you can do the following to keep your macros, input & output file paths absolute (C:\Users\etc.) rather than relative (.\etc):
1. Within the Alteryx Designer go to File>>Save As>>Gallery
2. Before Saving go to 'Workflow Options' >>> 'Manage workflow assets'
3. Make sure all macros, input and output files you want to keep absolute are unchecked
4. When you publish to the Alteryx Gallery now these macros, input and output file will keep the same path and not kept in external folders.
Consideration: When uploading to the Gallery the location of the macros needs to be accessible from the server. Hence, it is best practice to have these on a mapped drive or on the server itself so the workflow does not error.
The Composer File (pcxml) is a file type that contains a proprietary language used by Alteryx for reporting purposes. What this means for use in the Gallery is that an end user will have the ability to choose among XLSX, PDF, DOCX, ZIP and HTML file types for output.
In order to use the pcxml format, you will need to use the Render tool, which can be found in the Reporting section of the tool palette. A basic Table tool connected to the Render tool will suffice for a grid report, shown respectively.
The configuration for the Render tool will require two things, first, that the Output Mode is set to choose a Specific Output File. The Gallery validation of the workflow will fail in the Public Gallery unless a specific output is set. Next, select the pcxml file type for output and name the file. Upon loading the workflow to the Gallery you’ll see that the dependency changes to an externals path “_externals\1\name.pcxml”, this is expected. The second configuration property to set is the Data Field in the Report Data section. We will need to reference the table created using the basic Table tool.
Now load the workflow to the Gallery and that’s it! Enjoy the flexibility of reporting file formats the pcxml Composer file has to offer!
Note: Workflow and all images created in this article are from Alteryx version 10.1
Client Services Representative