As MDM provides an excellent Data Modeling Environment, there’s often in addition to the data modeling task the need to define Business Logic, so that a company can handle their Master Data efficiently. Examples, where business logic is advantageous, are e.g.
To make sure required fields and other fields that are required when another field has a particular value all have a non-NULL value
To make sure records syndicated with Client systems, can be processed successfully by the client system
To compare the values of different fields to make sure the relative values are legal (e.g. Price > Cost)
For this, MDM uses the concept of validations, which are basically Excel-like formulas that return a TRUE or FALSE value as the result of the validation.
How can a validation be called ?
Validations can currently only be used in the MDM Data Manager, where they can be performed on each type of table. For each valuation called, the results of the valuation for each record are displayed in an additional column.
Valuations can be performed manually or automatically. Automatic exeuted valuations can display either:
Warning message => you can continue your work and even save the record despite the validation error
Error message => saving of the record isn’t possible, as long as the error persists
What are Validation properties and validation expressions ?
The validation expression is a formula, which can reference fields, perform arithmetic, string, and logical operations, can call built-in functions, and even reference other previously defined validations. In general the rule of thumb is not to make the formula too complex. A better approach would be to keep the formulas simple and make them reusable so that other validation formulars can call them. To do this, you have to specify the validation as callable. If you’re using category specific valuations, the category specific attributes can also be included in the valuation formula.
Many different validations can be called in one single step, when they’re grouped together. In this case, you just call the validations group, and MDM calls all validations belonging to this group automatically. The content of a valuation expression can only refer to the current record, it’s not possible to define a valuation, which refers to other data records.
How can I bring over validation relevant Data from Client Systems ?
It’s especially important to bring customizing settings of the connected Client systems to MDM, to ensure Data Integrity for later syndication.
Take as an example the Object Type Product from R/3. When maintaining products, many fields are maintained in dependency of a plant, e.g. Quality Management specific fields. As the plant data is defined in customizing of R/3, we have to make sure that this customizing data is transferred also to MDM for Data consistency. For the SAP delivered Standard objects (Material, Supplier, Customer, Employee), there’s fortunately a strategy in place to transfer the R/3 customizing settings to MDM. During system setup or when connecting a new client system to MDM, this step should be performed.
In a two-step procedure, first the customizing settings in R/3 are written into an XML-File and second the XML-File is processed with the MDM Import Manager to store the customizing settings in MDM.
If you need to see the existing R/3 related business logic in MDM the strategy would be to create appropriate validations to represent each relevant business rule in R/3 into MDM.