There’s a lot to be excited about with our April 2017 Product Release, which includes an enhancement called Quickbase Actions, making it even easier to set up and design some specific workflow automations between one or more apps. The best part is, the setup literally requires no coding. Now you can build in unique workflow triggers to your apps, enabling Quickbase to automatically react based on changes to your data. Formerly, this was possible to implement for advanced app builders who knew how to write and manipulate script or API code via a Quickbase Webhook.
With the addition of Quickbase Actions, now app builders of all levels can build faster, and a no-code action builder can now dabble with the greats, building sophisticated automated workflow into their apps without writing a single line of code!
Two (2) Quickbase Actions are currently available in this release:
- Automatically edit related records
- Automatically add records
Similar to building out a Quickbase Webhook, you have the flexibility to define the when, what, and where during the creation process of a Quickbase Action, however the work in defining such is reduced to simply selecting appropriate criteria and options from various drop-down menus. It’s all set up by simply pointing and clicking your mouse cursor!
“We created Quickbase Actions because we know our customers are eager to automate their workflows! This will save them time as well as reduce the opportunity for human error.” – Brian Cafferelli, Quickbase Product Manager
Because the range of possibility is so wide in terms of what sort of Quickbase Action you might conceptualize (depending on your industry and app scenario), in this blog post I’ll get your creative juices flowing by walking you through the steps to create one for the type of scenario in which you might want a Quickbase Action to automatically edit related records. In a succeeding blog post, I will shift the focus to the other type of scenario in which you might consider a Quickbase Action to automatically add a record.
I’ll be leveraging an application called ‘Sales & Projects Lifecycle’ available for download in the Quickbase Exchange. Download this app and follow along to create a Quickbase Action with me! It’s one of my favorite template applications that combines a lot of fundamental features focused around tying together the core components of CRM and Project Management. You’ll notice that it includes multiple home dashboards, each customized for different user role types within the app itself. For instance, as a ‘Project Team Member’ I might see a project management dashboard upon logging in to the app, with some detailed project plan views and insight into specific to do lists online.
It’s important to note that whether you are working on a new app or updating an existing app, builders can consider using a Quickbase Action at any point in the data modeling process. I had the chance to garner such insight during an interview with Brian Cafferelli, Product Manager for the new feature. He elaborated his views around this idea, even further suggesting that “I do not believe that many app builders would have designed their app in a significantly different way if Quickbase Actions had been available when they built the app. For example, table-to-table relationships is the primary method today for achieving similar workflows, and since they have many other benefits I would expect many of those relationships to still be useful.” This is useful to acknowledge, since as I’m sure you well know by now, there are so many different methodologies to achieve specific outcomes in the customized solutions that get created by our awesome Quickbase family of app builders.
For the purposes of my discussion around how to set up Quickbase Actions, we’ll focus on the three “top of funnel” tables that include most of the CRM functionality: Customers, Opportunities, and Activities.
Again, like a Webhook, a Quickbase Action is built on the table in which a change in the data will occur to trigger some type of automatic activity to take place. All Quickbase Actions live in their own section of the specific table’s settings.
Scenario 1 – Using Quickbase Actions to Edit Related Records
In this scenario, I’ll show you how to build a Quickbase Action on the Opportunities table so that when an Opportunity record’s [Status] is updated to ‘W – Won’, Quickbase will automatically edit the related Customer record to update its corresponding [Customer Status] field to ‘A – Active Customer’. This type of Quickbase Action can help to automatically ensure the customer status is set correctly at the start of your relationship with them, and save your sales reps a step in needing to manually update this at the time a new opportunity is won, giving them an accurate view of their active customers versus customers who are still leads.
Setting Up the Custom Report Link
Before we can create the specific Quickbase Action in this scenario, it’s important to recognize that the Customers table is the parent to the Opportunities table in this app’s relationship structure. In other words, one Customer may have many Opportunities. The Quickbase Action feature designed to edit related records is inherently based off of some type of defined report link. Because the only ‘Report Link’ type field that exists on the Opportunities table form is the one created by default in the Opportunities → Projects relationship, we need to manually add in a custom second ‘Report Link’ type field that will reference the related Customer. To complete this, reference the following steps:
Step 1. From the Opportunities table form, open the table Settings, and click on the ‘+New’ button above where it says ‘Fields’.
Step 2. Name the new field by typing in a Field Label. I will use ‘Customer Report Link’.
Step 3. Select ‘Report Link’ from the drop-down menu to the right to define the Field Type.
Step 4. Click the green ‘Add’ button. This new report link field will now appear at the bottom of your Opportunities table form, and in the list of fields that now exist on the Opportunities table.
Step 5. Access the Field Properties for the new [Customer Report Link] field to define the ‘field relationship’ that will drive the operation of the newly created report link. This is set up under the ‘Report Link field options’ section of the Field Properties.
- In the Match the values in this field from this table column drop-down, select the [Customer Name] lookup field that lives on the Opportunities table.
- In the to the values in this field column, click ‘Select Target…’ button to define the specific values in the application field that we want to match. In this case, we want to select the same ‘Sales & Projects Lifecycle’ application, and then select the [Customer Name] field that lives on the Customers table.
Step 6. Click the green ‘Save’ button.
Now that this report link field has been properly set up, it is possible to create the intended Quickbase Action.
Setting up the Quickbase Action
Step 1. From the Opportunities table form, reopen the Table Settings, and in the ‘Quickbase actions’ area click the ‘+New’ button.
Step 2. Name and document what your Quickbase Action will do as shown.
Step 3. Select the appropriate ‘WHEN’ criteria. In this scenario, we want to setup our Quickbase Action so that WHEN an opportunity is ‘modified or added’ and define an additional criteria. That additional criteria will furthermore define that we want the Quickbase action to occur only WHEN the [Status] field specifically changes and after the change, the condition we want to be true is when the [Status] is equal to the value ‘W- Won’.
Step 4. Select the appropriate ‘THEN’ action. In this scenario, we want to set up our Quickbase Action to ‘Edit Related Records’ and tell Quickbase that the related records are located on the same Domain your app is in and reference the [Customer Report Link] field we created to start, which is listed and selectable from the drop-down menu next to where it says ‘Report Link’. Quite literally, at this point, Quickbase knows that for each changed Opportunity record that adheres to the defined WHEN criteria, edit the Customer record where the value in [Customer Name] equals the value in the Opportunity’s [Customer Name] field. This makes sense, since the [Customer Name] field on the Opportunity record is simply a lookup field of the [Customer Name] field on the related Customer record.
Step 5. Next, we want to detail what specific edits will be made to the related record. Do this by completing the rest of the drop-downs that display. In our scenario, we want to write the value ‘A – Active Customer’ to the [Customer Status] field in our target table…the Customers table. Make sure to type the correct value that corresponds to the value that may be already listed in the text multiple choice drop-down available in the actual [Customer Status] field so that it matches the terminology you’ve previously defined there.
There are four (4) types of edit actions you may leverage.
- Copy the value from a Field in the changed record.
- Copy the old value from a Field in the changed record.
- Write the value (that you then define) to a Field in the target table. You can choose from a list of fields & markers that display to the right to help you easily define what value you want to specifically write, dynamically.
- Remove the value in a Field in the target table.
Some Additional Notes
You may include multiple edits within the same Quickbase Action, of course assuming that the edits being made all need to happen for the given WHEN criteria. Otherwise, you might consider creating multiple unique Quickbase Actions to accomplish your desired outcome. To incorporate multiple edits within the same Quickbase Action, all you need to do is hover your cursor over the existing action row, and click on the green ‘+’ button that displays to the right of the ‘Field in the target table…’ drop-down.
Step 6. Click the green ‘Save’ button at the top right of the page and test away, checking out the newly created Quickbase Action at work!
From a formatting perspective, I’ve found it helpful to customize the [Customer Report Link] field on the Opportunities table form to ‘display the related customers directly on the form’, and base the display of the report on the ‘List All’ report in which I’ve customized the reporting defaults to include the [Customer Status] field as a column in the embedded report. Whether it’s just for testing, or aesthetics as to how the related customer records (in our scenario there should always be just one for a given Opportunity) display, it’s a quick and easy modification to make so that when you are testing to see if the Quickbase Action behaves the way you intended it to after its initial creation, you can see the [Customer Status] field change upon saving the added or modified Opportunity record without needing to toggle between records.
Once you’ve affirmed the setup of your Quickbase Action, you can feel free to remove the [Customer Report Link] field from your Opportunities table form by right-clicking on the field label and selecting the third option to ‘Remove this field from this form’. Note that this is NOT the same thing as deleting the field in its entirety. If you choose to remove the field from the form, it will still function as a field on the “back end” of your application and continue to drive the specific Quickbase Action that uses it.
Keep your eyes peeled for another blog post from me next week focused on building a Quickbase Action to automatically add a record! Until then, have a look at our RESTful API Portal and Quickbase Help Guide to learn more.