Data objects define the logical data layer and hold data for your application. A data object simplifies the organization of the properties, data pages, transforms, and other elements your application needs to get the right data at the right time.
For example, you could use a Customer data object to manage customer contact information. The data object might include the customer's name, email, phone number, and so on. You can also reference a data object from a case type to add the data object and all of its fields to a view.
You can define the following sources for your data object:
- Pega – If you choose to connect the data object to the Pega database, Pega Platform creates the following artifacts that you need for your integration:
- A table in the Pega database to store the data for the data object
- A database table record to map your class to the new table
- A report definition to browse data of the type stored in the table
- Three data pages that your application uses to access the data: a read-only single object data page, a savable single object data page, and a read-only list data page
- REST – If you choose a system other than Pega, Pega Platform creates one data page that is defined from your REST API, and the following artifacts:
- Data layer
- Data class for the new data object
- Data object properties
- Data object is added to the application
- Integration layer
- Integration class
- Connect REST rule
- A new application setting is created for the authentication profile
- A new application setting is created for the base URL
- Response data transform
- Response JSON data transform
- Data layer
The Data Object wizard creates all artifacts when you finish the wizard, except when you add a property in the Data Mapping page. The new property is created immediately. If you cancel or close the wizard, the property persists; it is not deleted.
Use the following topics to create a data object, to connect a data object to a system of record, and to save data to a system of record.
- Creating a data object
Use data objects to simplify the organization of the information that your application needs to process a case. For example, configure an Onboarding application to provide orientation course suggestions to new hires based on department. In the Onboarding application, a Courses data object might include fields such as Course ID, Course Title, Department, Duration, and Description.
- Creating a data type in Dev Studio
Define the logical data layer of your application by creating data types to manage and hold data. In addition, reference data types from case types to add all of its fields to a form when you configure the view for a step.
- Omitting history snapshots for data types
To improve performance and manage your resources efficiently, you can choose not to take history snapshots when you develop data types. Every time a value in a data type changes, before you implement the change, the system takes a snapshot of the previous instance in case you need to restore the data type to the previous state. With multiple changes, omitting the snapshot can save you time and resources.
- Viewing test cases for a data type
You can view, run, and add test cases for a data type in the Data Designer.
- Reusing CRM data types
Use Customer Relationship Management (CRM) core data types to bring your data into your application. These data types are useful, for example, when you want to use Pega Platform as both an application and a system of record in your cloud environment.
- Connecting a data object to a system of record
You typically connect a data object to a system of record when you first create a data object. For example, for an Employee data object, you might connect to a system of record that populates the data object with employee information fields, such as Name, Department, or Start Date. However, you can connect an existing data object to a system of record after creation by completing the following steps.
- Creating a data object and connecting it to a system of record using REST
Add data objects to your application to define and store data, for example, customer addresses, then integrate them with data from an external source using REST.
- Data Object wizard errors
Error messages are displayed in the Data Object wizard for invalid user inputs, invalid system-generated inputs, and environment issues. Learn about the conditions that might cause an error to be displayed.
- Locked ruleset processing in the Data Object wizard
You cannot add a data object to a locked ruleset because the Data Object wizard cannot generate the rules. Learn how the Data Object wizard handles locked ruleset processing
- Updating connections and field mappings for a data object
To keep connection details current, reconnect data pages to a data source when connection details have changed. You can update existing connection details and field mappings, for example, if the authentication method has changed, or the schema of the data being sent has changed.
- Adding records to a data object
Define the data to populate the fields in a data object by adding a record.
- Simulating data
To avoid development delays, use simulated data when a data source is unavailable.
- Integration systems
An integration system is a system that can be used when creating data types, integration connectors, and databases to indicate the system of record. Integration systems make system configuration easier because they are reusable and selectable when creating data types, integration connectors, and databases.
- Updating a data record
Keep data current by updating data records.
- Importing updates from a file
To make changes to your data more quickly, update data records in bulk by importing updates from a .csv file.
- Creating local data storage
Local data storage lets you store data records for a data type without having to manually create or maintain database tables. Local data storage is used with a data type's record editor.
- Fixing database table generation
After running the Local Data Storage wizard, you may see a warning that the system could not generate a dedicated database table for the data type.