Functionality
In this section, we delve into the wide array of features the Vizion Platform offers, each designed to streamline processes and enhance your system's efficiency. You'll be introduced to the intricacies of setting up Rules and Automations, the strategic application of Rollups and Notifications, and the dynamic use of Hide Tab Elements. Accompanied by practical examples from the Equipment Checkout App we are building, this provides an essential walkthrough of key tools, empowering you to create a more responsive and intelligent application. You'll gain valuable insight and practical skills to effectively utilize these features in your system.
Rules
Rules allow you to extend customized business logic beyond automations. Rules are Oracle PL/SQL block code that is executed when the conditions for the Rules are met, similar to automations.
Ask the question about what you want your app to do. The Vizion Platform can most likely do it.
Case Study: Rules
We will be creating 9 total Rules as part of the Equipment Checkout App. Two of these rules are demonstrated further below as Case Studies.
Below is a list of the all Rules that we will build in the Equipment Checkout App in total.
Note the custom Rule Names in the list below. Rule names are created by the administrator when created. They should be unique and representative, but you should use the Description to explain what the rule does in detail for future reference.
| Rule Name | Rule Type | Description |
---|---|---|---|
1 | ECTRN_CHECK_IN_LOCATION | Field Updated (After) | Copies the coordinates of the Location ID and assigns to the Asset ID upon Check-In |
2 | ECAI_ASSET_LONGITUDE/LATITUDE tca | Trackor Created (After) | Upon Asset Item creation, this rule auto-populates the coordinates based on the Home Location's (parent) coordinates. |
3 | ECAI_ASSET_LONGITUDE/LATITUDE cfu | Field Updated (After) | Assigns the coordinates of the Transaction ID to the Asset upon an update upon check-out. |
4 | Assets rollup | Field Updated (After) | Identifies Transaction details to the Asset level including Return Dates and other Flag fields such as Repair Needed and Out of Service Fields. |
5 | ECAI_ASSET_NAME ECAI_ASSET_TYPE | Field Updated (After) | Copies the Name and Type field values of the Master Equipment Trackor and copies Asset Records that reflect this Equipment assignment. This rule ensures updates at the Master Equipment level cascade down and update Asset Items. |
6 | ECAI_MAINTENANCE_REQUIRED cfu | Field Updated (After) | Identifies if Maintenance is required soon based on set schedule. |
7 | ECTRN_STATUS Checked In | Field Updated (After) | When the EC-TRN:Status field is set to Check-In Complete, then create a new Transaction Record. |
8 | New Transaction on new Asset | Trackor Created (After) | Creates a child related Transaction record upon the creation of an Asset ID. |
9 | ECAI_ASSIGNED_TO | Field Updated (After) | Copies the Assigned To value at the Transaction level and copies the value up to the Assignee record that reflects the Assigned user. |
Example 1
Rule: On the Asset Items Trackor Page, when a new Asset ID (Trackor Record) is created, develop a rule so the child related Transaction record is also created and sets fields to their proper default values.
Goal: Provide a placeholder Transaction record that is ready to use immediately after an Asset ID item is created. Having records auto-create will provide a convenient starting point for the End User and will reduce the amount of set-up an end user might have to endure otherwise.
Rule: New Transaction on New Asset | ||
---|---|---|
1 | Navigate to Dev Center > Application Process Management > Rules. The screen will open the Rules page. | Menu Navigation to Rules |
2 | As an Admin User, you can create new rules or manage/modify existing rules. For our Case Study, let’s create a new rule. Press Add. Rule: Name the rule. Typically you should create a name that is reminiscent of the functionality. Rule Class: Select “PL/SQL” as most rules created will use this dropdown choice. Rule Type: Select “Trackor Created (After)” – This is our selection since our goal is for this rule to execute after a Trackor Record is created (aka Added) in the Asset Items Trackor page. Rule Description: Enter details about your new rule. What does it do and how is it triggered to run? What fields are updated as a result of the rule functionality? Press Apply to create your rule and continue to configure. | Add a Rule Start
|
3 | NOTE: For more details and information regarding Rule Class and Rule Type selections, please visit our the User Guide page on https://onevizion.atlassian.net/wiki/spaces/USER/pages/279609615 | |
4 | After pressing Apply, a system generated Rule ID number will be assigned. Additional Tabs will now be visible where we can further update the rule in order for it to run. |
|
5 |
Your new rule has been added and enabled in the system. |
|
6 | Let’s test the new rule!
As new Asset IDs are created, the rule will always create an initial Transaction record. |
|
Example 2
Rule: For the Equipment Checkout app, we will create a rule to automatically create a new Transaction record when the Asset ID is checked in based on the previous Transaction record’s status field being set to “Checked-In Complete“.
Goal: This rule will serve the end user by always automatically generating a new Transaction Record to prepare the Asset for a future Check-Out process after the previous is completed. The more times the Asset ID is checked out, the more Transaction records will be generated.
Rule: ECTRN_STATUS Checked In | ||
---|---|---|
1 | From the Rules page, press Add, just like we did in the previous Example 1.
|
|
2 | Navigate to the ID Numbers Tab, which is the rule trigger.
| |
3 | Navigate to the PL/SQL Tab.
| |
4 | Navigate to the General Tab.
| |
5 | Let’s test the new Rule!
In the video, we perform two transactions resulting in the creation of two new records. NOTE: As we continue developing the “Equipment Checkout” system, we will add additional Rules and Automations to support our desired business logic. It’s important to consider the enabled rules in place when adding any additional Rules and Automations. |
|
Automations
Automations provide a way for users to set up automatic actions in their system without having to use SQL code to build rules in order to control and manage data. Automations are a combination of a Trigger and a Filter-Action where the Trigger initiates the Automation and the Filter-Action determines what happens.
For the complete guide on using Automations in the Vizion Platform, check out the User Guide section: https://onevizion.atlassian.net/wiki/spaces/USER/pages/279609607
When do you use an Automation instead a Rule?
Automations can be created without writing any PL/SQL, making them quicker and easier to implement for most Administrators. You can automate many actions within the Vizion Platform using the Automations feature, however there are some cases which require Rules, such as creating new Trackor records.
Case Study: Automations
For the Equipment Checkout app, we will build several automations.
Automate status updates at the Transaction and Asset when criteria is met. (Available, Ready for Checkout, Repair Needed, In Service, Out of Service, etc.)
Benefit: Statuses are kept in line across Trackor Types and do not rely on human updates.
Automate the population of date field when Asset is checked out, when Asset is checked in, and of the due date field (+5 days) when Asset is checked out.
Benefit: Automated saving of dates of actions in the system ensures that the dates are entered and accurate and removes steps for users.
Automate the calculation of Duration to show the length of time between check out and check in dates.
Benefit: Provides a data point that will be useful for reporting.
Automate the setting of Return Past Due flag.
Benefit: Flag will be used as a trigger for notifications.
Automate Repair status updates as tech is assigned, sent for repair date and returned from repair dates are entered. Save Approved Date and Approved By when Repair Approved is checked.
Benefit: Automated status updates ensures accuracy and removes steps for users.
For the example, we will walk through the build out of the first automation listed above, which updates Transaction status. This automation has four triggers (actions in the app which cause the automation to run), four values that the status may be updated to, and utilizes stop on filter match.
Build an Automation | ||
---|---|---|
1 | Navigate to Dev Center > Application Process Management > Automation. The screen will open the Automation page. |
|
2 |
|
|
3 |
For this Automation, we have three Field Updated (After) and one Trackor Created (After) triggers. | |
4 |
|
|
5 |
The automation is complete. | |
6 | Watch the Transaction Status update based on the automation parameters. |
|
Rollups
A rollup is a type of Automation that allows you to count or “rollup” child items on the parent record. This type of Automation can also copy a field from a child record onto the parent or check a yes/no checkbox Field based on child data. This can be helpful when viewing data in a grid, preventing multiple rows for each child, or when building reports or dashboards.
Case Study: Rollups
For the Equipment Checkout app, we will build rollups of Asset Items on the Assignee parent, showing for each person, the number of Assets Checked Out, Assets Returned, Assets Past Due, Assets Returned Damaged, and a Damage Percent.
Let’s walk through the build out of the Assets Returned field. This field should display the sum of all the Assets that the person has checked out and returned for all time. To build this rollup, we will add new helper fields and build two Automations.
Build Assets Returned Rollup Field | ||
---|---|---|
1 | In order to sum the total number of returned (check in complete) assets, we need a field on each Transaction that displays either a 0 or 1 (when completed) and a Field that displays the sum on the Assignee record. Follow instructions here on how to add a field. For the example, we will add:
|
|
2 | Next, we add an Automation that populates EC-TRN:Asset Checked In field with a 0 or 1. This follows the same process as the Automations example above, with different Triggers and Filters. See Rollup Transaction Automation video. | |
3 | Then, we add another Automation that sums the child Transaction fields with a 1 into the Assignee Field EC-AT:Assets Returned. The process repeats, building on the Transaction level Field and Automation from the last step, as it is used as the Trigger in this Automation. Additionally, this time we use a Formula and not a Constant Value on the Filter. See Rollup Assignee Automation video. |
|
4 | The Rollup is complete! In the video, you can see that there is now a value in the field that correlates with the number of completed Transactions for the Assignee. Look at Field History > Call Stack to see the flow of the field update. First there is a manual update to check out, then all three Automations trigger - one updates the Transaction Status, one updates the EC-TRN:Asset Checked In to 1, and one sums up all the Transactions with a 1. |
|
Notifications
Notifications are used to send automated emails when certain trigger events happen. The emails can include information from the Vizion Platform and be formatted using HTML.
Case Study: Notifications
For the Equipment Checkout app, we are going to notify the Assignee via e-mail when the Asset Item they have checked out on the Transaction Trackor Type is +1 day after the due date. This notification is triggered by the Return Past Due flag field that we built as part of an Automation.
Notification User Experience Demo:
Before we create our Notification, let’s review how the Notification works from an end user’s perspective.
In this case, when the Field EC-TRN:Return Past Due = “Yes” on the Transaction record, the system sends a Notification E-mail to the E-mail Address value listed on field “EC-TRN:Email Address“.
Add a Notification | ||
---|---|---|
1 | Navigate to Dev Center > Build Applications > Notifications. The screen will open the Notifications page. | |
2 | Press Add to open a create new Notification window. Based on steps detailed in the Video of the below section, we will populate fields and make updates in order to create our new Global Notification. |
|
Configure a Notification | ||
---|---|---|
1 | Create a Name for your Notification |
|
2 | Set your Scope to “Global” | |
3 | Check boxes for:
| |
4 | Notification Type = “Trackor Updated” | |
5 | Primary Trackor Type = “Transaction” | |
6 | Create a Subject using static text and values from the Attributes field selections.
| |
7 | Create a Message using static text and values from the Attributes fields.
Note: It might help to increase the size of this window while working in it. | |
8 | Press Apply to save, then continue. | |
9 | Click on the Filter to define the conditions of which records will be triggered by the Notification. Set your desired parameters and press OK. | |
10 | Select the Field(s) that will trigger the Notification by pressing the “+” icon. | |
11 | Press OK after selecting. | |
12 | Press Apply on the Notification to save. | |
13 | Click on the User Filter to define which users will receive an e-mail.
| |
14 | Click on Select Recipients using SQL.
| |
15 | Check the Enable box to make the Notification active. | |
16 | Press OK to save and close the window. It is now enabled and assigned to Admin Users. Further assignments can be completed by assigning to Security Roles, reviewed in the Security section. | |
17 | As showcased in our User Experience Demo, video, recipients of the Notification will receive an E-Mail in HTML format detailing information about the Asset Item that is checked out and assigned to them. |
Hide Tab Elements
Hide Tab Elements is a dynamic feature in the Vizion Platform that conditionally hides certain fields within a tab, based on the value of a designated trigger field. This capability, accessible through the Hide Tab Elements admin page, enhances the customizability and user experience in Trackor/Task and Workflow forms. This feature streamlines the interface, ensuring that users only see the most relevant fields for their tasks.
Case Study: Hide Tab Elements
For the Equipment Checkout app, Hide Tab Elements will be utilized on the Transaction Trackor Type. We will hide check in fields when the status is “Ready for Checkout” and hide check out fields when the status is “Checked Out”. If the Asset Status is “Out of Service”, we will hide all the fields at the Transaction.
Configure Hide Tab Elements | ||
---|---|---|
1 | Navigate to Dev Center > Design Applications > Hide Tab Elements. Click Add on the Hide Tab Elements page. |
|
2 | Select the Trackor Type, then the Applet, then the Tab. For the example, we select EC_Transaction, Transaction, then General Info. | |
3 | Now select the field that will be the trigger field. For the example, we select TRN:Status. Since Status is a Drop-Down, we also need to select the trigger value, Ready for Check Out in this case. | |
4 | Now the General Info Tab is displayed and you will select the fields that should be hidden when the trigger is met. In the example, we will hide everything below the line at the bottom of the CHECK OUT section (including the line itself.) Hold CTRL to select multiple Fields. | |
5 | Click Apply to save and confirm the correct fields are selected. Click OK to exit and see the new item on the Hide Tab Elements list. | |
6 | Because we have two more scenarios where we wish to hide Fields, we will Add two more Hide Tab Elements with different triggers. When the Status is Checked Out, hide the CHECK OUT section. When the Status is Out of Service, hide everything because the Asset cannot be checked in or out until its back in service. | |
7 | Now when we go to the Transactions Trackor Record, different Fields will be hidden depending on the value in TRN:Status. See the screenshots to see how the same Tab in the app looks in each case. |
Continue Training