Podcast
Questions and Answers
What should be considered before deciding to use a custom property to store data?
What should be considered before deciding to use a custom property to store data?
- If the data should remain in an external system instead. (correct)
- The size of the data in gigabytes.
- If the data is already stored in the configured system.
- Whether the data is needed for every user action.
What is a potential drawback of using custom properties?
What is a potential drawback of using custom properties?
- They can lead to a loss in application performance. (correct)
- They can enhance application performance at all times.
- They eliminate the need for a database schema.
- They are always required regardless of the situation.
How can one view more properties of Configured Commerce objects that are not visible by default?
How can one view more properties of Configured Commerce objects that are not visible by default?
- By disabling the Master Edit Mode.
- By accessing the ERP system directly for full visibility.
- By enabling Master Edit Mode from the Debug Tools menu. (correct)
- By consulting the Configured Commerce documentation.
What action should be taken if custom properties begin to degrade performance?
What action should be taken if custom properties begin to degrade performance?
What is one possible solution if standard properties cannot adequately store the required data?
What is one possible solution if standard properties cannot adequately store the required data?
When should you consider utilizing a standard property instead of creating a custom property?
When should you consider utilizing a standard property instead of creating a custom property?
What is a crucial first step before deciding to implement custom properties?
What is a crucial first step before deciding to implement custom properties?
What does the 'UniqueId' column represent?
What does the 'UniqueId' column represent?
Why might it be beneficial to store data in standard properties that are currently not used?
Why might it be beneficial to store data in standard properties that are currently not used?
Which data type is used for the 'Value' column?
Which data type is used for the 'Value' column?
What information is stored in the 'CreatedBy' column?
What information is stored in the 'CreatedBy' column?
Which column contains the date and time when the custom property was last modified?
Which column contains the date and time when the custom property was last modified?
What is the requirement for the 'ParentTable' column?
What is the requirement for the 'ParentTable' column?
Which data type is used for the unique identifier of the property configurations?
Which data type is used for the unique identifier of the property configurations?
Which column indicates if a property is required?
Which column indicates if a property is required?
What does the ControlType column represent?
What does the ControlType column represent?
Which of the following is not a required field in the configuration?
Which of the following is not a required field in the configuration?
What purpose does the HintText column serve?
What purpose does the HintText column serve?
Which property indicates whether translation services are included?
Which property indicates whether translation services are included?
What data type is used for the creation timestamp of a property?
What data type is used for the creation timestamp of a property?
Which column is used to describe the property through a label?
Which column is used to describe the property through a label?
What data type is used for the property that indicates the username of the creator?
What data type is used for the property that indicates the username of the creator?
Which field identifies if a property can be edited when viewing entity details?
Which field identifies if a property can be edited when viewing entity details?
What is the maximum length of the ToolTip field that serves as a description for the property?
What is the maximum length of the ToolTip field that serves as a description for the property?
What does the IsCustomProperty field indicate?
What does the IsCustomProperty field indicate?
Which of the following indicates the data type used to store the property value?
Which of the following indicates the data type used to store the property value?
What information does the ModifiedOn field capture?
What information does the ModifiedOn field capture?
Which field indicates if the property can be viewed when editing entity details?
Which field indicates if the property can be viewed when editing entity details?
What is the purpose of the AppDict.EntityConfiguration?
What is the purpose of the AppDict.EntityConfiguration?
What does the 'CanCreate' bit signify in relation to an entity?
What does the 'CanCreate' bit signify in relation to an entity?
Which of the following roles is NOT automatically assigned to custom properties?
Which of the following roles is NOT automatically assigned to custom properties?
What data type is used for the 'RoleName' column?
What data type is used for the 'RoleName' column?
Which bit describes whether an object from the entity can be deleted?
Which bit describes whether an object from the entity can be deleted?
What does the 'PropertyConfigurationId' represent?
What does the 'PropertyConfigurationId' represent?
Which of the following roles has permission to interact with property configurations?
Which of the following roles has permission to interact with property configurations?
What is the required status of the 'Id' column?
What is the required status of the 'Id' column?
Which permissions are stored in AppDict.PropertyPermission?
Which permissions are stored in AppDict.PropertyPermission?
Study Notes
Custom Properties
- Before using a custom property, consider if the data needs to be managed in Configured Commerce, displayed in the Storefront, or only managed in the ERP or PIM.
- If the data doesn't meet these criteria, consider keeping it in an external system and not storing it in the platform.
- Check if Configured Commerce provides a standard property to store the required data - many standard properties are hidden by default. Enable Master Edit Mode from the Debug Tools menu to view them all.
- If no standard property exists, explore if a currently unused standard property can be repurposed, even if its name doesn't match the data.
- Performance benefits might outweigh naming inconsistencies.
Custom Endpoint
- If custom properties are the best solution, consider creating a custom endpoint to retrieve only necessary custom properties for performance optimization.
- This can be used for specific pages like product detail pages, separating custom property requests from main product API requests.
Custom Database Table
- If a custom endpoint isn't sufficient, create a custom database table specifically for custom properties. This offers a more organized solution than storing custom properties in a generic string value table.
Database Schema
- The Configured Commerce Application Dictionary (AppDict) manages the database schema for custom properties and security.
AppDict.PropertyConfiguration
- Stores custom property definitions.
- Each record is associated with the AppDict.EntityConfiguration table.
- Key columns:
- Id: Unique identifier.
- EntityConfigurationID: Unique identifier of the entity the property is associated with.
- Name: Unique name of the property used in code.
- Label: Descriptive text for the property.
- ControlType: Specifies the UI control representing the property.
- IsRequired: Indicates if the property is required.
- IsTranslatable: Indicates if the property is part of translation services.
- HintText: Contextual help text for the property.
- PropertyType: Underlying datatype used to store the property value.
- IsCustomProperty: Marks the property as a custom property.
- CanView: Determines if the property can be viewed when editing or viewing the entity details.
- CanEdit: Determines if the property can be edited when editing or viewing the entity details.
AppDict.EntityConfiguration
- Stores information about entities and their extendability within the platform.
- Key columns:
- CanCreate: Indicates if an object from the entity can be created.
- CanDelete: Indicates if an object from the entity can be deleted.
AppDict.PropertyPermission
-
Stores permissions related to custom properties.
-
The following roles are automatically assigned by default:
- ISC_System
- ISC_Integration
- ISC_Admin
- ISC_ContentAdmin
- ISC_User
- ISC_ContentApprover
- ISC_ContentEditor
-
Key columns:
- Id: Unique identifier.
- PropertyConfigurationId: Unique identifier of the property configuration.
- RoleName: The name of the role allowed to interact with the property.
AppDict.PropertyExtension
- Key columns:
- Id: Unique identifier.
- ParentID: The unique ID of the extended record.
- Name: The name of the custom property.
- Value: The value of the object's custom property.
- CreatedOn: The date and time the property was created.
- CreatedBy: The username who created the property.
- ModifiedOn: The date and time the property was modified.
- ModifiedBy: The username who modified the property.
- ParentTable: The SQL table name of the entity that was extended.
Studying That Suits You
Use AI to generate personalized quizzes and flashcards to suit your learning preferences.
Related Documents
Description
This quiz focuses on the management of custom properties and the creation of custom endpoints within Configured Commerce. You will learn when to use custom properties, explore performance optimization techniques, and understand the role of standard properties. Perfect for anyone working with eCommerce platforms.