Sign in or start a free trial to avail of this feature.
3. Creating an Analytical App
In this, the second of five lessons designed to introduce you to the concept of Analytical Apps, we deploy our first interface tool. You will learn how to introduce user-defined custom dates to your workflow.
- Interface tools can be connected to Lightning Bolt and Q anchors that appear on top of normal tools when the workflows are converted to the app or macro file type
- When connecting an interface tool to a Lightning Bolt anchor, an action tool automatically appears
- Action tools allow users to specify exactly which parts of a tool should be interactive
- The Date tool allow users to add interactivity to date fields
In the previous lesson, we mapped out our basic workflow for our sales report, this included converting all our sales to the home currency and pushing the resulting output through to the Render tool. In this lesson, we'll use the interface tools to make our workflow more customizable, ultimately creating the first iteration of our analytical app. The goal is to give users the ability to customize the date range, we'll accomplish this goal by following three key steps. First, we'll change the file type to Analytical App, next we'll connect interface tools to the Date Filter tool, finally we'll configure our interface tools, so that users can customize the date range in the app. We'll start by changing the file type of our workflow, we'll select the Workflow tab in the Configuration window and change the Type to Analytical App, notice that lightning bolts and other symbols now appear above each of the tools in our Workflow, these symbols are called anchors, the lightning bolt anchor appears above all tools and acts as a connector for tools from the Interface tab, if we look at the Formula tool, we can see there's a black circle with a Q symbol, this anchor signifies that the tool can accept multiple interface inputs and outputs. At this point, we can move on to step two and connect Interface tools to our Workflow and see these anchors in action. When we set up our Workflow, we specified that we wanted to generate a report to summarize the information between two dates, May 1st and May 31st, 2016, at this point, we'd like to introduce some flexibility around these dates to make our report more dynamic, we can do this by navigating to the Interface tab and using the Date tool, we'll bring a Date tool onto the canvas, connecting it to a Date Filter anchor. The Action tool is often the real power behind the interface tools, this tool enables you to specify the variables you want to change within the Target tool, in this case our Date Filter tool. Before we move on to the Action tool, let's take a moment to view the Configuration window for the Date Filter, so that we understand exactly what variables can be adjusted through this tool, first we can see that the tool asks us to select what Date field we want to filter, our Workflow only has one Date field feeding through, so we don't have much of a choice, however, it is conceivable that you could have multiple Date fields, for example, Purchase Date, Payment Date or Delivery Date, you would then use this field to specify which of these various Date fields you wish to filter by. Next, we have the option of our Date selection method, in this case, we've chosen Use start and end dates, but we also have two other options, below our date selection method, we have the option of selecting the specific dates for our range, to recap, there are three levels of options, that users can potentially change in this tool, the Date field we want to filter, the date selection method and finally the actual date range.
At this point, we're ready to move on to step three and configure the interface tools, starting with the Action tool, if we click on the Action tool, we can see the Configuration window lists a number of choices regarding variables that we can change, if we look at the Attribute to Update dialog box, we can see that the Action tool is targeting the Date Filter tool, below is a list of the various, user-defined fields available in the Date Filter tool, the first line states that select.date.field currently equals Date, we'll navigate back to the Date Filter tool and see that the value associated with Select the date field to be used in filtering is in fact Date.
Going back to the Action tool, we can see that the next choice is start.end.date, which is set as True, this corresponds with the date selection method, again, if we go back to the Date Filter tool, we can see Use start and end dates is selected or in other words, is True.
There are two other choices presented beneath the calendar, however neither of these are selected, so they're False. We'll head back to the Action tool again and see that both choices are also presented and they're currently registered as False, we would like our Action tool to give us the ability to change the start date and end date of our Date Filter, however each Action tool can typically only change one variable at a time, we'll therefore need to use one Action tool to handle the start date and a second Action tool to take care of the end date, in this case, we'll begin with a start date, we'll highlight the value we'd like to toggle, the third line that contains the start date, simply highlighting this line is sufficient instruction for the tool, to make things easy to follow, we'll go to the Date tool and enter Start Date in the text box, this will also add instructions to our app, but we'll get to that later on. We'll now add a new Date tool, again connected to the Date Filter tool and enter End Date in the text box, we'll select the Action tool and highlight the end date, or fourth line, we've now successfully added a Start and End Date toggle to our Workflow. To recap, here's what we've accomplished in this lesson, first we changed the file type to Analytical App, next we connected two Date tools from the Interface tab to the Date Filter tool, finally we configured the resulting Action tools to allow date range customization in the app. In the next lesson, we'll take a closer look at the interface of our app.