Define and create custom System Properties
System Properties are a must-have for every script developer when dealing with instance-specific configurations or other configurations that will change frequently.
In SAP Sourcing, the definition of System Properties reside in Property Metadata (system.property_metadata) table.
Creating a new Property Metadata can be done via workbook template (csv/xls).
The structure of the workbook template is as follows:
APP_ID : required
– property Set
– *recommendation* use custom to keep track of your created properties
PROP_ID : required
– property Name
PROP_TYPE : required
– value should be -1
DATA_TYPE : optional
– value -1 for simple string property values
– value 5 for password property values (system will store encrypted version of value)
EDIT_MODE : optional
– value READ_WRITE – property can be edited by system/enterprise/administrator users
– value READ_ONLY – property is read-only
– value SYSTEM_ONLY – property can be edited only by system user
– value ENTERPRISE_ONLY – property can be edited by enterprise/administrator users
DESCRIPTION : optional
– reference to localised resource for property description
– *recommendation* always create a localised resource and don’t be greedy with the details
Steps to create a Property Metadata:
Step 1: Create Localised Resource
Step 2: Prepare csv workbook for Property Metadata:
APP_ID | PROP_ID | PROP_TYPE | DATA_TYPE | EDIT_MODE | DESCRIPTION |
custom | messaging.enhanced.emailRestrictToAddresses | -1 | -1 | ENTERPRISE_ONLY | custom$messaging.enhanced.emailRestrictToAddresses |
Step 3: Import Property Metadata:
Setup -> System Administration -> Import Data (Property Metadata)
Step 4: Create your newly-defined System Property
Step 5: Fetch your property value in a script
IapiSystemUtilities.getSystemProperty(session, “custom”, “messaging.enhanced.emailRestrictToAddresses“, “”);
Bogdan Toma
Greetings Bogdan,
Well articulated.
Regards,
Mayank