Question

I am new with MDS, and I have a question about one to many relation mapping in MDS

I have a product, contains descriptions in multiple languages. I have created two entities with derived hierarchy structure: product (P_ID, P_name)and Addtional description(P_ID, P_Name_in_German, P_name_in_English).

Additonal description is a drop down from product table from MDS UI, but I only want to populate info that releated with its same P_ID. How can I achieve that? Can I use business rules here and how it should look like?

(2012 Master data service' web interface)

Was it helpful?

Solution

I have also faced a similar problem. I have decided to add multiple fields for languages and apply business rules for them. Let's see how it would work for your entity:

Product entity
{
  Code
  Name
  Name_in_English (text)
  Name_in_German (text)
  Default_language (domain based, points to Languages entity)
}
Languages entity
{
  Code
  Name
}

Add values to the Languages entity:

Code = "EN", Mane = "EN"
Code = "DE", name = "DE"

Now we need to add the following business rules to the Product entity:

BR1:
{
  IF Condition - Equals: Default_language equals "EN"
  THEN Action - Change value: Name = Name_in_English
}
BR2:
{
  IF Condition - Equals: Default_language equals "DE"
  THEN Action - Change value: Name = Name_in_German
}

After that You will see the product names in your product entity only in proper language which is chosen by drop-down field Default_language.

The second option: If You want user to see only the Name field and don't want him to see additional fields, You can hide those fields (Name_in_English and Name_in_German) by setting their width to zero. Moreover, You can use attribute groups to separate two modes of view:

first mode (for the regular user) - You see only Code and Name
second mode (for the administrator) - You see fields: Name_in_English, Name_in_German, Default_language.

For it to work You need to create two attribute groups:

1) attribute group "EN" (add attributes Name and Code to the group)
2) attribute group "DE" (add attributes Name_in_English, Name_in_German, Default_language to the group)

Hope something of that is helpful!

OTHER TIPS

You're missing something. You said you have a derived hierarchy structure but you don't show a domain based attribute on the Additional description entity with a pointer back to the Product entity. Perhaps you were thinking that the P_ID for Additional Description is the pointer back but it isn't (based on your explanation). It is the entity Code identifier for the Additional Description entity and not the key you need that points back to Product. Perhaps you meant One to One. One to Many implies you have a separate Parent_P_ID back to the Product entity.

Add the Domain Based Parent_P_ID attribute to the Additional Description entity and then reconstruct your derived hierarchy structure. This may not be that helpful because I think you have left something out of the explanation of what you are trying to do.

Hi Cocunuts, We can not assign derived hierarchy to entities in MDS 2012,but we can achieve this in MDS 2016 , Your Domain based attribute(Drop down) cannot be further filtered in MDS 2012.

Licensed under: CC-BY-SA with attribution
Not affiliated with StackOverflow
scroll top