Business logic is a part of program or application, essentially a set of business rules and workflows that direct the interaction between user interface and data.
Here are some simple examples of what we understand as business logic in Resco Mobile CRM:
- Validate email address, postal code, telephone number
- Calculate the duration of an event (actual end – actual start)
- Hide a field or disable it, depending on a condition
- Populate fields on a child entity based on the parent
- Modify an order to add a special discount
- Find out how many appointments are associated to an account
Levels of business logic in Resco Mobile CRM
- Built-in / hard-coded
- Reused server-side logic
- Rules (Form, View, Calendar, Map, …)
See Rules editor for more information about rules.
Rules are formed in a simple scripting language. Essentially, you combine conditions and steps.
You don't write scripts, you build them using buttons and selecting values from a drop-down menu.
Objects in rules
Rules allow you to evaluate and modify parameters of various objects:
- Entity – edit/create/delete records
- Form – modify what's displayed on a form
- Tabs – modify all the tabs of a form
- Variables / shared variables – Save a value as a variable to use later in a rule, display, or use in a different rule
- Configuration – currently logged-in user, URL, online/offline status, etc.
- Relationship – determine whether a form is opened via associated view
Form rules describe sequences of steps that are executed on form-related events. They allow you to for example to customize edit form user interface (hide or disable fields, assign values, etc.).
- On Load
- These rules are checked when you open a form. You can use these rules for example to apply custom format to certain records.
- On Change
- These rules are checked when you open a form or modify any field. Example: simple form validation.
- On Save
- These rules are checked when you save a record. For example, saving a record can automatically also update a field in a parent record.
Rules also control the behavior of commands: when should a command be displayed and what should it do.
- On Can Execute rule defines when the command will be available for the user.
- On Execute rule defines the actions that the command performs.
- Row Script
- On Save, On Change
- These events are used in conjunction with editable lists, where they play similar role as on the form.
- Button Click
- Cell Click