Object Groups in the R-COM Gateway
Object Groups in R-COM Gateway provide a structured way to store, manage, and reuse persistent data inside automated workflows.
In many automation scenarios, reacting to an event is not enough. A workflow may also need to know which asset was scanned, where it was last seen, whether it already exists, or whether a specific combination of values is unique. Object Groups solve this by acting as a persistent data layer for workflow-related entities.
An Object Group defines both:
- The collection of Objects that belong to that group.
- The structure that each Object must follow.
For example, an Object Group named MedicalEquipment can store individual equipment records, where each record contains attributes such as equipment ID, status, assigned department, and maintenance date.
Key Concepts
Object
An Object is a single data record inside an Object Group. It represents a real-world entity, asset, item, person, or process-related concept.
Examples:
| Use Case | Object Example |
|---|---|
| Warehouse management | A pallet, product, container, or returnable transport item |
| Healthcare | A patient, infusion pump, medical device, or room |
| Asset tracking | A tool, machine, vehicle, or tagged asset |
| Inventory management | A product, stock item, or storage location |
Example Object data:
{
"product_id": "PRD001",
"location": "Aisle-3",
"status": "Available",
"last_scanned_at": "2025-05-15T10:23:00Z"
}
In this example:
| Attribute | Description |
|---|---|
| product_id | Unique identifier for the product |
| location | Current or last known location |
| status | Current state of the product |
| last_scanned_at | Timestamp of the last scan event |
Object Group
An Object Group is a named collection of Objects that share the same structure.
For example, a MedicalEquipment Object Group may contain records for all medical devices in a hospital. Each equipment record follows the same attribute structure, such as equipment ID, name, location, status, and maintenance date.
Object Structure
The Object Structure defines the attributes available for each Object in the Object Group.
You can think of the Object Structure as a database table definition. Each attribute behaves like a column, and each Object behaves like a row in that table.
Example:
| Column Name | Data Type |
|---|---|
| equipment_id | String |
| name | String |
| location | String |
| maintenance_due | Date |
| is_active | Boolean |
Every Object created inside this Object Group must follow this structure.
Create a New Object Group
Step 1: Navigate to the Object Group Settings
From the main R-COM Gateway dashboard:
- Go to Settings > Client Settings > Object Groups. This page lists all available object groups.
- Click New Object Group to begin.
Create a new object group.
Step 2: Configure Basic Settings
Fill in the following fields when creating a new Object Group:
Set up basic object group informations.
| Setting | Description |
|---|---|
| Unique Object Group Name | Internal system name for the Object Group. This value must be unique within the system. Use a stable technical name such as medicalEquipment, productInventory, or patientRecords. |
| Object Group Name | Display name shown in the R-COM Gateway user interface. This can be user-friendly and may contain spaces, such as Medical Equipment or Product Inventory. |
| Object Group Type | Optional parent group used to organize Object Groups hierarchically. For example, Warehouse can be the parent for ProductInventory and LoadingDocks. |
| Trigger Event on Change | Defines whether an event should be triggered when an Object is created, updated, or deleted. This is useful when other workflows need to react to Object changes. |
| Allow Attachment | Allows users to add attachments when creating or editing Objects from the stock view. |
| Group Required | Requires a valid group selection before a new Object can be created. |
| Description | Optional description explaining the purpose of the Object Group. |
| Icon Image | Optional icon displayed for the Object Group in the R-COM Gateway interface. |
Step 3: Define Object Attributes (Object Structure)
This is where you define the actual data fields (the Object Structure) that each Object in this group will have. You'll typically see a table where you can add and configure these attributes, similar to defining columns in a database table.
setting up object attributes.
Tip: Click the Properties icon (⚙) next to any attribute to open advanced configuration options including validation rules.
Attribute parameters configuration.
Each Object in the group will follow the structure you define here. Below are the configurable fields for each attribute:
| Field | Description |
|---|---|
| Column Name | Internal field name for the attribute. Use lowercase letters, underscores, or camelCase. Avoid spaces and special characters. Examples: product_id, equipmentName, last_scan_time. |
| Data Type | Specifies the kind of data the attribute holds. See the Data Types reference below. |
| Properties | Opens an advanced configuration panel. See the Properties reference below. |
| Allow Null | Indicates whether the attribute may be left empty. Mark essential fields (such as primary IDs) as non-nullable to enforce data completeness. |
| Remove | Click the × icon to delete the attribute from the Object Structure. While updating structure, Referenced columns cannot be modified directly, remove the reference first, then apply changes. |
Data Types
| Data Type | Description | Example |
|---|---|---|
| Number | Whole numeric values | 10, 250, 1000 |
| Decimal | Numeric values with decimals | 12.5, 98.75 |
| String (Max) | Text without a fixed character limit | Long descriptions, comments |
| String (Limit) | Text with a defined maximum length | Product codes, short names |
| Date | Calendar date values | 2026-06-18 |
| Boolean | True / false value | true, false |
| ObjectReference | Links this attribute to another Object within the same client. | |
| Guid | Globally unique identifier | System-generated identifiers |
| Custom | Fixed list or selected custom value | Status values such as Available, In Use, Blocked |
For String (Limit), define the maximum allowed length.
Example:
- Set a limit of
500if the field should accept text up to500characters.
Properties Panel
Clicking the Properties (⚙) icon on any attribute opens the following configuration options:
| Option | Description |
|---|---|
| Column Description | A short explanation of the field's purpose, displayed as documentation and user guidance when working with the Object. |
| Regular Expression | A regex pattern that validates user input before it is saved. |
| Regex Error Message | The message shown when validation fails. Accepts plain text or translation keys (e.g. ERROR.invalid_email). Provides meaningful feedback when input does not match the expected pattern. |
Step 4: Define Unique Constraints
Primary Key Management: Manual primary key management has been removed from the Object Group Designer. All primary key behavior and rules are now handled entirely through Unique Constraints.
Unique Constraints allow you to enforce data integrity rules across one or more attributes in the Object Group. They ensure that no two Objects share the same combination of values for the constrained columns. A Unique Constraint defines one or more attributes that must have a unique value combination across all Objects in the Object Group.
How Unique Constraints Work
- Each unique constraint contains one or more attributes.
- When a new Object is created, R-COM Gateway validates the Object against all configured unique constraints.
- All constraints must pass for a new Object to be successfully added to the group.
- Each constraint spans one or more columns you select.
- Within a single constraint, at least one of the included attribute values must be present for that constraint to be evaluated.
- Multiple constraints are evaluated independently — all must be satisfied simultaneously.
- If any unique constraint fails, the Object is rejected because it would create a duplicate value or duplicate value combination.
Managing Constraints
Unique Constraints configuration.
- Scroll to the Unique Constraints section at the bottom of the Object Attributes screen.
- Click + Add Unique Constraint to create a new constraint row.
- Select one or more attribute columns to include in the constraint using the column picker.
- Repeat for each additional constraint required.
- To remove a constraint, click the × (Remove) button on that constraint row.
Example: A constraint on [EquipmentName + Location] means no two equipment records may share the same name and location simultaneously. A separate constraint on [EquipmentID] ensures the ID is always globally unique.
Final Step: Save Your Object Group
Once you’ve defined the structure and settings:
- Review your configuration.
- Click Create (or Save) to finalize the Object Group.
Example: Creating a "Medical Equipment" Object Group
Goal
Track all medical devices in a hospital environment.
Navigation
Settings > Client Settings > Object Groups > New Object Group
Configuration
- Unique Object Group Name:
MedicalEquipment - Display Name: Medical Equipment
- Parent Group (optional):
HospitalAssets - Trigger Event on Change: Enabled for Update
- Icon: Upload a relevant equipment icon
Attributes
setting up object attributes.
Finalize
Click Create to save.




