Fulcrum Data Events allow you to design your own custom behaviors and workflows for your data collection process. From advanced data validation and dynamic lookups to alerts and filtering, Data Events provide a powerful framework for rule-based data collection tailored to your own workflow needs.
We’ve recently added some enhancements to the framework in the form of new functions and actions you can now leverage within your app’s workflows.
New Event Triggers
We’ve added several new triggers to our growing set of event listeners. These scriptable triggers can listen for record, field, repeatable, or media events, and complete a variety of custom actions. New event triggers include:
- unload-record & unload-repeatable — Triggers when the record editor is closed.
- cancel-record & cancel-repeatable — Triggers when canceling out of an edit session.
- focus & blur — Triggers when you select (focus) or deselect (blur) a Text or Numeric field.
In addition to these triggers, we’ve added several highly requested functions.
Data Event Functions
- MESSAGEBOX(), PROMPT(), & CONFIRM() — These new functions enable dynamically displaying messages to the user and reacting to user input. These additions, in conjunction with the numerous other Data Event functions, let you build detailed flows for data entry to validate content and/or require users to confirm decisions during the data entry process.
- ISPORTRAIT() & ISLANDSCAPE() — For photos and videos, this checks the content to see if it was captured in portrait or landscape mode. Helpful for automatic QA of data if you require users to take photos in landscape mode, for example.
Calculation Expression Functions
- FORMATADDRESS() — Takes a Fulcrum address field and appends all the elements into a nicely formatted street address. Useful for calculation fields used in PDF reports or for accessing addresses through the API.
- STRING() — Convert any data into a string, primarily for dates and integers. If you pass a photo or video field, it’ll return the ID.
- FIELDS() & FIELDNAMES() — Returns the child fields or field names of a section or repeatable.
In addition to those new functions, we’ve also made improvements to a couple of existing functions:
- DATEVALUE() can now construct a full datetime from a Date field and a Time field combined.
- REPEATABLEVALUES() has been improved to support fetching of nested data.
When we introduced Data Events back in early 2016, we knew it would have a profound impact on how data collection operations could be customized. We were excited to see how our innovative community of users would leverage this powerful functionality and have been listening to your feedback to prioritize these improvements.
Be sure to update your mobile apps to the latest version of Fulcrum (Android v2.27.5, iOS v2.17.0) to start leveraging these features today!