Hot on the heals of the GA release for Expressions, I’m thrilled to announce the launch of the Public Preview for Apps and Data Service Integration. Just like Data Service’s existing integration with Studio, you can now import entities directly into Apps and interact with them natively. With the new integration you can:
- Build faster apps
- Centralize your automation data into a single source of truth
- Ensure that critical business information is not being left on user or robot machines, file shares, or other storage services
- Bring powerful no-code data modeling and storage capabilities to your automations and apps
To help you understand some of the amazing new capabilities introduced with direct Data Service integration, we’ve put together a sample Todo list app - backed entirely by Data Service.
- Import UiTodoSchema.json (2.8 KB) into Data Service.
For details about how to do this, check out @Karan’s recent post on Schema Export/Import.
- Download the UiTodo.uiapp template (447.3 KB)
- Navigate to Apps in Automation Cloud and click ‘Build a new app’
- Name your app (eg: ‘UiTodo’), click the ‘Import from file’ link, and select the
.uiapptemplate you downloaded earlier.
- Tell App Studio where to find your recently imported Entity…
- When you import an app template that uses external dependencies (like processes, entities, storage buckets, etc) any missing dependencies will be flagged on the Tree View.
- Since you’ve already uploaded the
TodoEntity this app depends on, Apps will automatically suggest which Entity to use when replacing this dependency in your app.
Before walking through this app in detail, try running it first to familiarize yourself with the runtime experience! You won’t have any data to start, so why not go ahead and create some todo items for yourself
The Homepage allows you to create new todo items and view outstanding items.
The top of the page is a small form that allows you to enter a new Todo item (and some optional details). The ‘Clicked On’ event for the Add button uses the new Create/Update Entity Record rule to push a new record to Data Service:
The Todo list itself is displayed as a single-column table, which is linked to the Todo entity using a
Filter function to only show the end user records that where (1) created by the current user and (2) have not yet been completed.
When you select an item from the Todo list, you can edit it or add Todo details. To save these details, we use the same Create/Update Entity Record rule as before, only this time instead of specifying the entity type we want to create, we use the
Lookup function to update a specific record. In this case it’s the entity record
Id that is equal to the Id of the selected record in our Todo table (
When updating a record, you can choose to only pass in fields that you wish to update, and that’s exactly what we do for the ‘Clicked On’ event for the “Mark Complete” button:
The Archive page allows you to view completed items, mark them incomplete, or delete them from Data Service entirely. Similar to the homepage, there is a single-column table here that contains completed todo items.
To delete an entity record, we use the Delete Entity Record rule (big surprise there ). Similar to our update scenarios, we use the Lookup function to get the entity record that we want to delete:
Now that Apps can read/write directly to Data Service there are some really interesting new architecture patterns. (ps I can’t be the only one that gets excited saying “new architecture patterns”?!)
Backend Systems <-> Unattended Robots <-> Data Service <-> Apps
This is a great option if you want to have a speedy runtime experience and don’t need your data to be real-time. You can use Unattended Robots to pull data from pretty much anywhere into Data Service where it can be easily queried by Apps. Apps then performs operations directly on Data Service and then your Unattended Robots are triggered to write data back to whatever system of record. (Or you can do a 1-time ingestion of data into Data Service and use that and your system of record)
Robots <-> Data Service <-> Apps <-> More Robots!
Want 2-way communication between Apps and your Robots? You can now do this for Attended processes How? Attended processes write data to Data Service and send incremental status updates. When the apps receives a status message it loads in data from Data Service, allowing you to read rich data from the process while the process is still executing!
To recap, with the public preview release of Apps + DS we’ve introduced 3 new expressions to help you retrieve data from Data Service:
Filteryour data where the fields match a given condition.
Sortyour data so that it is ordered by a specific field or fields.
Lookupget the first record that matches a given condition.
We’ve also introduced two new rules for create/update/delete operations:
To learn more, check out the detailed documentation:
- During the public preview, we don’t support pagination. You’ll be limited to retrieving a maximum of 1000 records.
- Custom List does not yet support using expressions for Filtering/Sorting data.
- File and Choice Set fields are unsupported
Your feedback is important to us!
We’re excited to learn from you! Share your ideas, use cases, suggestions and questions with us.
We can’t wait to see what you build