Top Method Summary
Options Name Purpose
ApplyAttributesFromJson (JsonObject) Applies attribute values from a JSON attributes object to the loaded dsDesignAttributeValue records Notes : Iterates the keys of poAttrObject. For each key matching an eDesignAttributeValue record the corresponding typed value field is updated and IsInherited is set to false. Tracking changes must be enabled on dsDesignAttributeValue before calling this method. @param poAttrObject JsonObject keyed by AttributeLabel; each value is a JsonObject with a "value" key */
CollectInstanceInput (JsonArray, character) Flattens the nested instances JSON array into ttInstanceInput Notes : The InstanceName is treated as unique key. ParentInstanceName is derived from nesting. @param poInstances JsonArray with instances @param pcParentInstanceName The parent instance name for the current level */
DeleteLinks (character) Deletes eSmartLink records for the given repository object master that are not present in ttLinkInput Notes : ttLinkInput is prepared in UpdateRepositoryObject @param pcObjectMasterGuid The object master guid of the container */
DeleteObjectInstances (character) Deletes eSmartObjectInstance records for the given repository object master that are not present in ttInstanceInput Notes : Also deletes eSmartLink records that reference the deleted instance to avoid dangling references @param pcObjectMasterGuid The object master guid of the container */
DeletePages (character) Deletes eSmartPage records for the given repository object master that are not present in ttPageInput Notes : ttPageInput is prepared in UpdateRepositoryObject @param pcObjectMasterGuid The object master guid of the container */
Progress.Json.ObjectModel.JsonObject GetDataSourceFields (character) Returns details about a repository data source and its fields Notes : The result contains the IDataSourceInfo properties and a field map keyed by short field name @param pcDataSourceName The data source name to inspect @return JsonObject containing data source details and field metadata */
Progress.Json.ObjectModel.JsonObject GetEventDetails () Returns the event details from the current dsDesignAttributeValue dataset Notes : The result is a JsonObject keyed by AttributeLabel, each entry contains a value and optional metadata @return JsonObject containing event details */
Progress.Json.ObjectModel.JsonArray GetObjectInstances (character, character, AttributeValueBusinessEntity, logical) Returns the object instances for a container and parent instance guid Notes : This method is recursive and walks the eSmartObjectInstance hierarchy @param pcContainerObjectMasterGuid The ObjectMasterGuid of the container (object master) @param pcParentInstanceGuid The parent instance guid (empty string for root) @param poAttributes The AttributeValueBusinessEntity instance used to retrieve design attributes @param plIncludeLayoutPosition Include LayoutPosition attribute (in MetaForm or MetaControlGroup container) @return JsonArray containing one JsonObject per instance */
Progress.Json.ObjectModel.JsonArray GetObjectLinks () Returns the links of the currently loaded repository object Notes : Iterates the eSmartLink temp-table. Resolves LinkType name from LinkTypeGuid. @return JsonArray containing link details */
Progress.Json.ObjectModel.JsonArray GetObjectPages () Returns the pages of the currently loaded repository object Notes : Iterates the eSmartPage temp-table @return JsonArray containing page details */
INTEGER GetPageSequence (character) Returns the page sequence for a page guid Notes : Uses the already retrieved eSmartPage temp-table @param pcPageGuid The page guid to resolve @return The PageSequence value or 0 when not found */
Progress.Json.ObjectModel.JsonObject GetPropertyDetails (character) Returns the property details from the current dsDesignAttributeValue dataset Notes : The result is a JsonObject keyed by AttributeLabel, each entry contains a value and optional metadata @param pcObjectTypeGuid The ObjectTypeGuid of the object master or object instance @return JsonObject containing property details */
Progress.Json.ObjectModel.JsonObject GetRepositoryAttributeDetails () Returns repository attribute details for all attributes Notes : Reads all records from the AttributeBusinessEntity and returns a JsonObject keyed by AttributeLabel @return JsonObject containing one entry per repository attribute */
Progress.Json.ObjectModel.JsonObject GetRepositoryObject (character) Returns details about a repository object master Notes : Uses ObjectMasterDatasetModel and enriches the result with design-time attributes and events @param pcObjectName The object name to load @return JsonObject containing object details */
UpdateLinks (character, JsonObject) Updates or creates links for the repository object master and prepares ttLinkInput Notes : Reads the 'links' JsonArray from the provided object @param pcObjectMasterGuid The object master guid of the container @param poObject The repository object JSON */
UpdateObjectInstanceAttributes (character, JsonArray, AttributeValueBusinessEntity) Saves instance attribute overrides for all instances in poInstances Notes : Recursively processes nested instances. For each instance with an "attributes" key, loads design attributes via GetObjectInstanceDesignAttributes, applies JSON values via ApplyAttributesFromJson, and persists via StoreObjectInstanceDesignAttributes. Must be called after SaveChanges so instance records exist in the database. @param pcObjectMasterGuid The GUID of the container object master @param poInstances The JsonArray of instance objects @param poAttributeEntity The AttributeValueBusinessEntity */
UpdateObjectInstances (character, JsonObject, ISmartRepositoryService) Updates or creates object instances for the repository object master and prepares ttInstanceInput Notes : Reads the nested 'instances' JsonArray from the provided object and sets ParentInstanceGuid based on nesting @param pcObjectMasterGuid The object master guid of the container @param poObject The repository object JSON @param poRepository Repository service used for resolving object masters */
UpdateObjectMasterAttributes (character, JsonObject, AttributeValueBusinessEntity) Saves object master attribute overrides from the "attributes" key of the input JSON Notes : Loads current design attributes via GetObjectMasterDesignAttributes, applies values from the JSON using ApplyAttributesFromJson, then persists overrides via StoreObjectMasterDesignAttributes. Must be called after SaveChanges so the object master record exists in the database. @param pcObjectMasterGuid The GUID of the object master @param poObject The repository object JSON @param poAttributeEntity The AttributeValueBusinessEntity */
UpdatePages (character, JsonObject) Updates or creates pages for the repository object master and prepares ttPageInput Notes : Reads the 'pages' JsonArray from the provided object @param pcObjectMasterGuid The object master guid of the container @param poObject The repository object JSON */
Progress.Json.ObjectModel.JsonObject UpdateRepositoryObject (JsonObject) Updates or creates a repository object master and synchronizes its pages, instances and links Notes : The input JSON is expected to follow the structure returned by GetRepositoryObject. The method loads dsObjectMaster, enables TrackingChanges, applies changes and calls SaveChanges when needed. @param poObject The updated repository object JSON @return JsonObject with basic update result information */


Method Detail
Top

ApplyAttributesFromJson (JsonObject)

Purpose: Applies attribute values from a JSON attributes object to the loaded dsDesignAttributeValue records
Notes : Iterates the keys of poAttrObject. For each key matching an eDesignAttributeValue record
the corresponding typed value field is updated and IsInherited is set to false.
Tracking changes must be enabled on dsDesignAttributeValue before calling this method.

Parameters:
poAttrObject Progress.Json.ObjectModel.JsonObject
JsonObject keyed by AttributeLabel; each value is a JsonObject with a "value" key
Top

CollectInstanceInput (JsonArray, character)

Purpose: Flattens the nested instances JSON array into ttInstanceInput
Notes : The InstanceName is treated as unique key. ParentInstanceName is derived from nesting.

Parameters:
poInstances Progress.Json.ObjectModel.JsonArray
JsonArray with instances
pcParentInstanceName CHARACTER
The parent instance name for the current level
Top

DeleteLinks (character)

Purpose: Deletes eSmartLink records for the given repository object master that are not present in ttLinkInput
Notes : ttLinkInput is prepared in UpdateRepositoryObject

Parameters:
pcObjectMasterGuid CHARACTER
The object master guid of the container
Top

DeleteObjectInstances (character)

Purpose: Deletes eSmartObjectInstance records for the given repository object master that are not present in ttInstanceInput
Notes : Also deletes eSmartLink records that reference the deleted instance to avoid dangling references

Parameters:
pcObjectMasterGuid CHARACTER
The object master guid of the container
Top

DeletePages (character)

Purpose: Deletes eSmartPage records for the given repository object master that are not present in ttPageInput
Notes : ttPageInput is prepared in UpdateRepositoryObject

Parameters:
pcObjectMasterGuid CHARACTER
The object master guid of the container
Top

Progress.Json.ObjectModel.JsonObject GetDataSourceFields (character)

Purpose: Returns details about a repository data source and its fields
Notes : The result contains the IDataSourceInfo properties and a field map keyed by short field name

Parameters:
pcDataSourceName CHARACTER
The data source name to inspect
Returns Progress.Json.ObjectModel.JsonObject
JsonObject containing data source details and field metadata
Top

Progress.Json.ObjectModel.JsonObject GetEventDetails ()

Purpose: Returns the event details from the current dsDesignAttributeValue dataset
Notes : The result is a JsonObject keyed by AttributeLabel, each entry contains a value and optional metadata

Returns Progress.Json.ObjectModel.JsonObject
JsonObject containing event details
Top

Progress.Json.ObjectModel.JsonArray GetObjectInstances (character, character, AttributeValueBusinessEntity, logical)

Purpose: Returns the object instances for a container and parent instance guid
Notes : This method is recursive and walks the eSmartObjectInstance hierarchy

Parameters:
pcContainerObjectMasterGuid CHARACTER
The ObjectMasterGuid of the container (object master)
pcParentInstanceGuid CHARACTER
The parent instance guid (empty string for root)
poAttributes Consultingwerk.SmartFramework.Repository.Class.AttributeValueBusinessEntity
The AttributeValueBusinessEntity instance used to retrieve design attributes
plIncludeLayoutPosition LOGICAL
Include LayoutPosition attribute (in MetaForm or MetaControlGroup container)
Returns Progress.Json.ObjectModel.JsonArray
JsonArray containing one JsonObject per instance
Top

Progress.Json.ObjectModel.JsonArray GetObjectLinks ()

Purpose: Returns the links of the currently loaded repository object
Notes : Iterates the eSmartLink temp-table. Resolves LinkType name from LinkTypeGuid.

Returns Progress.Json.ObjectModel.JsonArray
JsonArray containing link details
Top

Progress.Json.ObjectModel.JsonArray GetObjectPages ()

Purpose: Returns the pages of the currently loaded repository object
Notes : Iterates the eSmartPage temp-table

Returns Progress.Json.ObjectModel.JsonArray
JsonArray containing page details
Top

INTEGER GetPageSequence (character)

Purpose: Returns the page sequence for a page guid
Notes : Uses the already retrieved eSmartPage temp-table

Parameters:
pcPageGuid CHARACTER
The page guid to resolve
Returns INTEGER
The PageSequence value or 0 when not found
Top

Progress.Json.ObjectModel.JsonObject GetPropertyDetails (character)

Purpose: Returns the property details from the current dsDesignAttributeValue dataset
Notes : The result is a JsonObject keyed by AttributeLabel, each entry contains a value and optional metadata

Parameters:
pcObjectTypeGuid CHARACTER
The ObjectTypeGuid of the object master or object instance
Returns Progress.Json.ObjectModel.JsonObject
JsonObject containing property details
Top

Progress.Json.ObjectModel.JsonObject GetRepositoryAttributeDetails ()

Purpose: Returns repository attribute details for all attributes
Notes : Reads all records from the AttributeBusinessEntity and returns a JsonObject keyed by AttributeLabel

Returns Progress.Json.ObjectModel.JsonObject
JsonObject containing one entry per repository attribute
Top

Progress.Json.ObjectModel.JsonObject GetRepositoryObject (character)

Purpose: Returns details about a repository object master
Notes : Uses ObjectMasterDatasetModel and enriches the result with design-time attributes and events

Parameters:
pcObjectName CHARACTER
The object name to load
Returns Progress.Json.ObjectModel.JsonObject
JsonObject containing object details
Top

UpdateLinks (character, JsonObject)

Purpose: Updates or creates links for the repository object master and prepares ttLinkInput
Notes : Reads the 'links' JsonArray from the provided object

Parameters:
pcObjectMasterGuid CHARACTER
The object master guid of the container
poObject Progress.Json.ObjectModel.JsonObject
The repository object JSON
Top

UpdateObjectInstanceAttributes (character, JsonArray, AttributeValueBusinessEntity)

Purpose: Saves instance attribute overrides for all instances in poInstances
Notes : Recursively processes nested instances. For each instance with an "attributes"
key, loads design attributes via GetObjectInstanceDesignAttributes, applies JSON
values via ApplyAttributesFromJson, and persists via StoreObjectInstanceDesignAttributes.
Must be called after SaveChanges so instance records exist in the database.

Parameters:
pcObjectMasterGuid CHARACTER
The GUID of the container object master
poInstances Progress.Json.ObjectModel.JsonArray
The JsonArray of instance objects
poAttributeEntity Consultingwerk.SmartFramework.Repository.Class.AttributeValueBusinessEntity
The AttributeValueBusinessEntity
Top

UpdateObjectInstances (character, JsonObject, ISmartRepositoryService)

Purpose: Updates or creates object instances for the repository object master and prepares ttInstanceInput
Notes : Reads the nested 'instances' JsonArray from the provided object and sets ParentInstanceGuid based on nesting

Parameters:
pcObjectMasterGuid CHARACTER
The object master guid of the container
poObject Progress.Json.ObjectModel.JsonObject
The repository object JSON
poRepository Consultingwerk.SmartFramework.Repository.ISmartRepositoryService
Repository service used for resolving object masters
Top

UpdateObjectMasterAttributes (character, JsonObject, AttributeValueBusinessEntity)

Purpose: Saves object master attribute overrides from the "attributes" key of the input JSON
Notes : Loads current design attributes via GetObjectMasterDesignAttributes, applies values
from the JSON using ApplyAttributesFromJson, then persists overrides via
StoreObjectMasterDesignAttributes. Must be called after SaveChanges so the
object master record exists in the database.

Parameters:
pcObjectMasterGuid CHARACTER
The GUID of the object master
poObject Progress.Json.ObjectModel.JsonObject
The repository object JSON
poAttributeEntity Consultingwerk.SmartFramework.Repository.Class.AttributeValueBusinessEntity
The AttributeValueBusinessEntity
Top

UpdatePages (character, JsonObject)

Purpose: Updates or creates pages for the repository object master and prepares ttPageInput
Notes : Reads the 'pages' JsonArray from the provided object

Parameters:
pcObjectMasterGuid CHARACTER
The object master guid of the container
poObject Progress.Json.ObjectModel.JsonObject
The repository object JSON
Top

Progress.Json.ObjectModel.JsonObject UpdateRepositoryObject (JsonObject)

Purpose: Updates or creates a repository object master and synchronizes its pages, instances and links
Notes : The input JSON is expected to follow the structure returned by GetRepositoryObject.
The method loads dsObjectMaster, enables TrackingChanges, applies changes and calls SaveChanges when needed.

Parameters:
poObject Progress.Json.ObjectModel.JsonObject
The updated repository object JSON
Returns Progress.Json.ObjectModel.JsonObject
JsonObject with basic update result information


Temp-Table Detail


©2006-2026 Consultingwerk Ltd.         info@consultingwerk.de         http://www.consultingwerk.de       13.04.2026 10:29:21