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