Get Inspire insights from former attendees in our AMA discussion thread on Inspire Buzz. ACEs and other community members are on call all week to answer!

Alteryx Designer Desktop Discussions

Find answers, ask questions, and share expertise about Alteryx Designer Desktop and Intelligence Suite.
SOLVED

Pass parameters into input tool..

sberg
6 - Meteoroid

Hello, you'll have to excuse my ignorance on the topic, but having trouble building what I need.

 

I have a pretty large workflow which is intended to be repeated to produce results of a specific marketing campaign. The problem is, as I have it set up now, I have the campaign ID and date ranges and other things just hard-coded in where clauses throughout the several different input tools throughout the workflow. Ideally, I would like for whoever uses the workflow to be prompted for the campaign ID and date ranges, etc. in the beginning, and have the input tools dynamically apply those filters. Is this something I can do?  Thanks!

4 REPLIES 4
RodL
Alteryx Alumni (Retired)

Yes, you can do this in Alteryx. You would be building what is called an "Analytic App". In an Analytic App you can basically parameterize just about any value that is within your workflow using the Interface tools.

To start you on your way, I would suggest viewing "Introduction to Building Applications" under the "Watch a Past Session" on the Virtual Training page of the Alteryx website. This will give you the basics, and then you will need to expand that to where you end up creating drop down lists with the various campaigns and other parameters you mentioned.

There are also several examples of doing this under Help > Sample Worflows > Analytic Apps.

sberg
6 - Meteoroid

Thank you, RodL! 

 

I wanted to quickly follow-up to this question, as I have already gone over a lot of the tutorials and videos on analytical apps and having trouble applying it specifically to what I am trying to do. So let me start with a couple of very specific questions that might dictate how I approach this.

 

  1. I am trying to prompt the user to select the campaign from a dropdown menu. When I manually enter the choices for the dropdown, similarly to the built-in tutorial in the Alteryx application, I can get it working perfectly. However, what I would ideally like to do is dynamically generate the choices in the dropdown by using a SQL query. So when the dropdown prompts the user, the choices will come from a query to the database that returns a list of campaigns after a certain date, or whatever. Then the rest of the workflow will give me information from another table about that campaign, etc. and so on. Is this structure possible? I got so far as to get the dropdown choices to be populated from a query, but it appears as though the action tool failed to replace the text properly because I am just getting blank results. So I'm thinking perhaps this type of structure just isn't supported.

  2. Since the db tables I am working from are very large (sometimes billions of records), the runtime is significantly impaired if I do not apply the correct filters directly in the SQL query for the input. Also, I am working from two separate databases, so things get complicated. For instance, the start and end dates of the campaign must be retrieved from an Oracle database, but I need to apply those date filters to a query from a Netezza database to return other critical information about the campaign. And in this case, I do not have the luxury of downloading the entire table from Netezza and joining it to a separate output from my selection to filter the dates, because downloading the entire table would take far too long. Ideally, in the SQL where it says "between (date) and (date)" I need to be able to replace those dates with the start and end dates returned from the other database when I told it which campaign to look at. Or, alternatively, just have the user enter the dates as separate parameters and subsequently update all the input tools that use those dates in the WHERE clause. Does this sound like something that is possible?

    Perhaps I'm just overthinking, or not thinking enough, but it just seems like going through and manually updating the WHERE clauses in the input tool queries with the proper campaign and date info seems less taxing than building whatever process Alteryx has in place to pass parameters through a workflow. Thanks!
RodL
Alteryx Alumni (Retired)

Is sounds like you need to make use of "chained apps". This is where you have one app that will do the query for the campaign list, which will feed to a file on which you can build out the selection tool for that question (which appears in the next app)...and provide dates for a following app that will be used to filter on the subsequent database.

 

You can search the Community on "chained app" for several articles, but I will point you to this one for starters.

 

Also, as I'm developing apps, especially when they get a bit more complex (where you are configuring Drop Down and List Box tools), I will utilize the "debug" functionality that you can find in the Interface Designer - Test View tab. As I'm working though the design, I go here, put in some test parameters (e.g., the "staging" file for your campaigns), and click "Open Debug". What this does is create a temporary workflow that inserts everything you have selected as if the user were running the app with those parameters and data. You can see what is happening "behind the scenes" in your app and were you might be missing something.

 

As noted in the KB article I pointed to you above, some chained app processing will only work in a "desktop designer" mode and won't work on a Gallery app...just something you need to be cognizant of depending on where the ultimate chained app will "land".

 

Hope this helps.

sberg
6 - Meteoroid

Thanks so much! Between this and some help I received from the support team, I think this is exactly what I need. I really appreciate your help.

Labels