Recent updates
-
Conditionally Routing Phases
Updated onArticleFor many Apps you’ll define Phases, which represent different stages in the App’s overall workflow. For example, for a contract approval App, you might create one stage for each step in a contract’s overall review and approval process. Perhaps those stages would be: Pending, Approved by Legal, Approved by Finance, Complete.
Some Apps simply need unconditional Phase routing. That is, all Records always go through the same Phases no matter what. For most Apps, however, this approach is too simple, and you’ll instead need conditional Phase routing.
For instance, perhaps your company only requires a particular department’s approval when an amount Field is over a certain number. To accommodate this, you can define conditional logic that will only allow a Record to be routed through a particular Phase when necessary.
In this tutorial, we’ll explain how to set up conditional Phase routing.
Developer Tutorials and Materials App Builder Developer Tutorials Basics of Business Logic
-
Generating a Word Document
Updated onArticleWith Onit you can leverage Record data to generate Microsoft Word documents. The Generate Document Action relies on Liquid markup in a pre-built template to query Record data and insert it in the appropriate location.
For instance, if your App manages Non-Disclosure Agreements (NDA), you could generate a document that contains Record-specific data (such the other party’s name to the agreement, its effective date, etc.) for each NDA Record in your App. This allows you to essentially use Onit as a publishing tool.
In this tutorial, we’ll first explain how to build the Word template and then we'll explain how to configure the Generate Document Action. Finally, we'll wrap up by showing you how to generate a table of child data in your Word document.
Developer Tutorials and Materials App Builder Developer Tutorials Working with Spreadsheets and Documents
-
Generating a Spreadsheet
Updated onArticleOnit can generate Microsoft Excel spreadsheets that contain data from Onit transactions.
For example, maybe you’d like to offer your users the ability to click a Button in Onit to generate an Excel spreadsheet on-the-fly. The generated spreadsheet could contain all transactions of a certain type -- one row per transaction. You could also add columns to the spreadsheet that would hold each transaction’s Field values. In addition, you could format and structure the spreadsheet to look however you like.
The Onit Action that provides this functionality is Generate Spreadsheet. It’s one of the more advanced Onit Actions, so in this tutorial we’ll explain its basic configuration. The Action’s more advanced options will be covered in a separate tutorial.
Developer Tutorials and Materials App Builder Developer Tutorials Working with Spreadsheets and Documents
-
Using a Spreadsheet to Organize Tag Logic
Updated onArticleTags are used to control the display of sets of Fields. However, the Update Tags UI Action you can use to implement them has its limitations; you very well may find yourself needing a better way to organize your Tag activation conditions.
An Update Tags Using List Lookup UI Action allows you to tidy up your Tag logic in an Excel spreadsheet and comes in handy when:
- You have a large number of Tags and your App’s business logic around which Tags should be activated becomes more complex.
- You’re applying multiple levels of Tags whose activation depends on independent determining Fields’ inputs.
- You need to apply a separate UI Action to a Field also serving as a determining Field for a Tag’s activation conditions.
In this tutorial, we’ll walk you through how to use a spreadsheet to organize your Tags so you can easily apply multiple Tags to independent determining Fields.
Developer Tutorials and Materials App Builder Developer Tutorials Working with Fields
-
Setting Dropdown Values from App Data
Updated onArticleIn our Setting Dropdown Values from a Spreadsheet tutorial, we learned how to pull values for a Listcombo Field from an Excel spreadsheet. However, there are a few situations where you might want to pull in values for a Field from data stored in a separate app. To do this, you can use a Transaction List Provider.
There are a few advantages of using a Transaction List Provider as your data source rather than an Excel spreadsheet:
- When using an imported spreadsheet, only users with corporate-level permissions can update it. However, when you host data in a separate app, any users with appropriate permission to that app can access and change that information.
- The data you want to use for a Listcombo Field’s values may already be stored in one of your apps. Rather than creating an Excel spreadsheet from this data and keeping it in sync with the app, you can skip the hassle and pull values directly from the app.
- Workflows can be created around an app specifically used to store Field data. For example, someone may need to approve data before it becomes available for use in another application.
This tutorial will cover how to set up a Transaction List Provider to access data from an app and create a Listcombo Field to populate that data as values.
Developer Tutorials and Materials App Builder Developer Tutorials Working with Fields
-
Setting Dropdown Values from a Spreadsheet
Updated onArticleWhen creating an app, you’ll often want users to select predefined values from a dropdown. In many cases, you can use a basic Combo Field to accomplish this (without a spreadsheet), and you can specify each possible dropdown option by typing them into the Field’s definition (within the Wizard).
In other cases, however, manually typing the dropdown values into the wizard may become unwieldy. This is especially true when:
- You have lots of dropdown values.
- The dropdown values are likely to change.
- You have a series of dropdowns that are all chained together from a filtering perspective. That is, when a user chooses the value in one dropdown the values in separate and secondary dropdown should be filtered.
In these situations, you’ll want to prefer a Listcombo Field (tied to a spreadsheet) over a Combo Field. Instead of manually typing the dropdown values into the Field’s definition, you can configure the Listcombo Field to pull the values from an Excel spreadsheet. Maintaining the dropdown values in a spreadsheet will often be significantly easier.
In this tutorial, we’ll explain how to work with Listcombo Fields.
Developer Tutorials and Materials App Builder Developer Tutorials Working with Fields
-
Validating Field Values
Updated onArticleEvery Onit app builder wants to avoid bad data. The values entered into your forms are only helpful if they are valid, without typos or other errors. If you ask a user to enter a phone number, but they forget the area code, the data may not be useable.
That’s where Field-level validation comes in. Onit enables you to build custom Field validation rules to match against any type of data. When a user enters data into a Field, the validation rule runs in real-time (before the user submits the overall form) and kicks back an error to the user if the validation rule fails. A failed validation rule also prevents a user from submitting the form.
For example, you could build a Field validation that ensures the value entered matches that of a standard phone number: 888-555-1234. If a user entered a value that didn’t match this pattern, the validation would fail.
Developer Tutorials and Materials App Builder Developer Tutorials Working with Fields
-
Creating a Conditional Compound Action
Updated onArticleAs you’ve likely learned in other tutorials, a big part of Onit App building revolves around Actions. Most Actions are designed to accomplish one (and only one) task. For example, a Send Notification Action sends an email; an Add Participant Action adds a participant to a Record.
Many times, running a single Action won’t solve your larger business problem. Instead, you’ll need to string a series of individual Actions together to accomplish your goal. For instance, let’s say that when a user clicks a Button, your App should do the following:
- Generate a document
- Edit a field value
- Add a participant to the Record
Since each of these things are handled via different Actions, you’ll need to configure Onit to run these Actions as a sequence in a specific order, one immediately after the other. How can you do this?
That’s where Conditional Compound Actions come into play. This special Action contains other sub-Actions, and runs them in a specific order. As a result, if you have a list of Actions that all need to run when a user clicks a Button (or a Business Rule fires), you can add those Actions into a Conditional Compound Action. When the Conditional Compound Action runs, it will run its contained sub-Actions.
Packaging Actions together like this reduces the redundancy of elements and keeps your Actions organized around business problems. Additionally, this is the only way to configure a Button or Business Rule to fire more than one Action.
In this tutorial, we’ll explain how to create and configure Conditional Compound Actions.
Developer Tutorials and Materials App Builder Developer Tutorials Basics of Business Logic
-
Creating an Action
Updated onArticleActions are an essential type of building block within Onit Apps. They define what should happen when some event takes place during a transaction’s lifecycle. For example, you could build an Action that sends an email, and then configure that Action to run whenever a transaction is approved. In this example, the Action is the sending of the email.
Actions are not self-sufficient; they must be linked to a Business Rule or Button in order to be triggered. Similarly, all Business Rules and Buttons make use of Actions.
There are many different types of Actions, and you can choose which ones to leverage in your app. One of the most commonly used Actions is Send Notification. The notification is constructed in the Advanced Designer’s Action pane, where an app creator specifies who will receive the notification and what the content of the notification is. Another commonly used Action is Add Participant, which can be used to add a participant as a specific Role to a transaction.
Developer Tutorials and Materials App Builder Developer Tutorials Basics of Business Logic
-
Using the Liquid Editor
Updated onArticleNew to Liquid? You may want to check out our Crash Course on Liquid article before learning about the Liquid Editor.
If you’re using Liquid or HTML in your Apps, your tool belt should include our Liquid Editor. The editor functions as a testing ground where you can use your App’s transaction and user data as test cases to:
- Validate Liquid Scripts: If you’re writing Liquid for a UI Action or Condition for example, you can preview the output of your script in the Liquid Editor to ensure that it is returning the data that you expect.
- Validate HTML Formatting: When writing HTML for some element of your App, such as an email notification or transaction widget, you can format and preview what it will look like in the editor.
While the Liquid Editor has a few gotchas that you’ll need to be aware of, it’s ultimately a great tool for taking the guesswork out of your App configuration.
In this tutorial, we’ll first cover how to use the Liquid Editor with a few examples. Next, we’ll finish up by explaining how to actually open the editor and get started.
Developer Tutorials and Materials App Builder Developer Tutorials Getting Started