Introduction to Data & Events Processing
Estimated Reading Time: 8 minutes
Your application remains static when you use Primary Fields and Secondary Fields alone. Your application behaves the same regardless of what your end-user inputs. Dynamic or interactive applications respond differently to user input based on predefined logic. Logic is the foundation of all modern applications. Unqork has a group of Data & Events Processing components for that purpose. These components use logic to make your module respond in many ways depending on your end-user's input.
Data & Event Processing components include:
- License Scanner
- Data Table
- Data Workflow
- File Storage
- Browser Storage
This is a comprehensive list of Data & Events Processing components in Unqork. It's important to note that you won't use all these components in a given use case.
The Data & Events Processing group is on the left of the Module Editor under the Display & Layout group.
What You'll Learn
In this article, you'll learn the function of each Data & Events Processing component.
Data & Events Processing Components
There are 13 Data & Events Processing components in Unqork.
The File component adds an easy-to-use file uploader element to your applications. With it, end-users can drag and drop files into the component area or use a browse function to select a file to upload. Uploaded files become available to view, download, or delete as needed. In the Configuration settings, you can limit what types of files an end-user can upload. You can also set maximum file sizes.
License Scanner Component
The License Scanner component scans the barcode of an uploaded driver's license. From the barcode, the Microblink service extracts the license's data. After extraction, the data stores in a single data object. You can access this data for use in other logic components.
The DataMapper component is a data manipulation component. The DataMapper supports both Excel and Lodash functions. You often use this component to:
Organize top-level individual fields into a key/value pair array and manipulate that data.
- Iterate an existing array you define in the Watch Field input. For example, the output of an Advanced Data Grid.
The DataMapper component most commonly uses IF statements. IF statements let you make logical decisions based on an input value. IF statements look like this: =IF(Something is True, then do something, otherwise do something else).
NOTE The DataMapper and Data Workflow components both manipulate data. Sometimes, creators use the DataMapper because it offers an Excel-like experience. Choose the component that works best for you.
Decisions are logic-type components often used in if/then scenarios. For example, if your end-user selects radio button A, then show field B. Or, if your end-user types value X, then display pop-up Y.
Three inputs drive the Decisions component:
Input component: What drives the action. Any component works here, including Buttons, Radio Buttons, or Text Fields. The Decisions references the Property ID A Property ID is the unique field ID used by Unqork to track and link components in your module. of the input component.
Output component: What reacts to the action. Again, any component works, including Panels and Field-Groups containing multiple components. The Decisions references the Property ID of the output component.
Decisions component: The Decision itself. You can configure the interaction between the inputs and outputs using Micro Decisions. You can set the input and output behavior by selecting the Type for each. The Micro Decisions table is where you'll set if/then rules using your defined inputs and outputs. Inputs display in the left columns of the Micro Decisions table. The column headers match the Input components' Property IDs. Outputs display in the right columns and are named using a concatenation of their ID and Type.
The Initializer is one of the core logic-based components within Unqork. Initializer components watch for end-user interactions before triggering certain operations. You might set an Initializer to watch for the click of a specific button. Or you could set an Initializer to trigger with every new module submission. With so many options, Initializers are a great way to add automation to your application.
While similar, Initializers and Decisions differ in how they handle inputs. A Decisions component relies on specific input values (if an end-user responds yes to a question, the Decision triggers). Initializers, on the other hand, trigger on actions (such as a button-click or a new submission on a page).
To trigger an operation based on an action instead of a value, use the Initializer component.
The Plug-In component connects your module to the outside world. The component uses internal and external API (application programming interface) calls to pass data to and from a chosen source.
The Calculator component is a logic tool used with two or more components to carry out a calculation. A simple use of a Calculator is to add numbers from two different fields.
- Concatenating (or joining) two or more values.
- Performing advanced calculations involving several components.
- Calculating duration.
- Pushing data from one component to another.
Data Table Component
You can use the Data Table component to create and manage your own data tables in your module. This tool helps with dynamic data navigation and increased performance throughout the platform. You can use a Data Table component to populate a Dropdown component. You can also use the data from Data Tables in other areas of your module, including in Data Workflows. A straightforward use of the Data Table is in combination with a Chart component. The Chart component visualizes data in various chart formats.
The Checkpoint component helps you track your end-user's location in your application. You can put Checkpoint components wherever you'd like in your application. When your end-user reaches the Checkpoint, the component records a timestamp. There is no visual aspect of a Checkpoint. When a Checkpoint fires, it creates an entry in the submission data.
Data Workflow Component
Most components process data in specific ways. For example, the Calculator component makes calculations, while input components can store strings and numbers. The Data Workflow component has broader functionality. It's an Extract, Transform, Load (ETL) tool that lets you transform, manipulate, and move data. With the Data Workflow component, you can process data in almost-infinite ways. Use this component to manipulate data from one or more inputs and map the data to an output.
The Timer component lets you add time-based rules and logic to your application.
Say you want to set a 10-minute timer for your end-user to confirm their order. If your end-user doesn't confirm their order in 10 minutes, the order process resets. The Timer component is a handy tool because it adds a sense of urgency for your end-user. This is helpful during a checkout or order confirmation. Restarting an idle process can also free up resources for your other end-users.
Plaid is a service that lets your applications securely connect to bank accounts. The Plaid component is a dedicated component only for the Plaid service. With this component, you can access your end-user's financial data. Then, you can map that data to other components. You can also verify your end-user's identity and authorize their bank accounts.
On the front-end, the component looks like a plain button. When your end-user clicks the button, Unqork prompts them to log in to their bank account. After a successful login, your application can start referencing your end-user's financial data.
File Storage Component
You can use the File Storage component for SFTP (secure file transfer protocol) integrations. This component lets you get or send files in your configuration through an SFTP service. To use the File Storage component, you must first set up an SFTP service in Services Administration.
The File Storage component can:
- Retrieve a directory listing. Then, return an array of objects representing items in the remote directory.
- Retrieve a file from a remote SFTP service and return an object with file content.
- Upload data to a remote server.
NOTE The File Storage component can only execute server-side.
Browser Storage Component
The Browser Storage component lets you add, edit, delete, and retrieve data on your browser. The component stores data using the IndexedDB API (application programming interface) call. IndexedDB is a large storage system for storing data in your browser. As the name suggests, this API call lets you store large amounts of structured, indexed information locally. The API call also lets you filter and search this indexed information.