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?
What is a potential drawback of using custom properties?
What is a potential drawback of using custom properties?
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?
What action should be taken if custom properties begin to degrade performance?
What action should be taken if custom properties begin to degrade performance?
Signup and view all the answers
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?
Signup and view all the answers
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?
Signup and view all the answers
What is a crucial first step before deciding to implement custom properties?
What is a crucial first step before deciding to implement custom properties?
Signup and view all the answers
What does the 'UniqueId' column represent?
What does the 'UniqueId' column represent?
Signup and view all the answers
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?
Signup and view all the answers
Which data type is used for the 'Value' column?
Which data type is used for the 'Value' column?
Signup and view all the answers
What information is stored in the 'CreatedBy' column?
What information is stored in the 'CreatedBy' column?
Signup and view all the answers
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?
Signup and view all the answers
What is the requirement for the 'ParentTable' column?
What is the requirement for the 'ParentTable' column?
Signup and view all the answers
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?
Signup and view all the answers
Which column indicates if a property is required?
Which column indicates if a property is required?
Signup and view all the answers
What does the ControlType column represent?
What does the ControlType column represent?
Signup and view all the answers
Which of the following is not a required field in the configuration?
Which of the following is not a required field in the configuration?
Signup and view all the answers
What purpose does the HintText column serve?
What purpose does the HintText column serve?
Signup and view all the answers
Which property indicates whether translation services are included?
Which property indicates whether translation services are included?
Signup and view all the answers
What data type is used for the creation timestamp of a property?
What data type is used for the creation timestamp of a property?
Signup and view all the answers
Which column is used to describe the property through a label?
Which column is used to describe the property through a label?
Signup and view all the answers
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?
Signup and view all the answers
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?
Signup and view all the answers
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?
Signup and view all the answers
What does the IsCustomProperty field indicate?
What does the IsCustomProperty field indicate?
Signup and view all the answers
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?
Signup and view all the answers
What information does the ModifiedOn field capture?
What information does the ModifiedOn field capture?
Signup and view all the answers
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?
Signup and view all the answers
What is the purpose of the AppDict.EntityConfiguration?
What is the purpose of the AppDict.EntityConfiguration?
Signup and view all the answers
What does the 'CanCreate' bit signify in relation to an entity?
What does the 'CanCreate' bit signify in relation to an entity?
Signup and view all the answers
Which of the following roles is NOT automatically assigned to custom properties?
Which of the following roles is NOT automatically assigned to custom properties?
Signup and view all the answers
What data type is used for the 'RoleName' column?
What data type is used for the 'RoleName' column?
Signup and view all the answers
Which bit describes whether an object from the entity can be deleted?
Which bit describes whether an object from the entity can be deleted?
Signup and view all the answers
What does the 'PropertyConfigurationId' represent?
What does the 'PropertyConfigurationId' represent?
Signup and view all the answers
Which of the following roles has permission to interact with property configurations?
Which of the following roles has permission to interact with property configurations?
Signup and view all the answers
What is the required status of the 'Id' column?
What is the required status of the 'Id' column?
Signup and view all the answers
Which permissions are stored in AppDict.PropertyPermission?
Which permissions are stored in AppDict.PropertyPermission?
Signup and view all the answers
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.