Skip to main content
Skip table of contents

Many-to-Many Relationship Between Objects and References

The ability to use a Many to many (m2m) relationship was in demand years ago. Now, this functionality is available in DCM 5.0 GA + versions.

M2M was implemented as part of AppBase's ability to support many-to-many relationships.  Speaking in DB language this functionality is implemented via a third table.

Let's see the example below How to start to work with m2m?


Data Model Builder

DCM supports systems and other reference objects to relate to a business object. The ability to set the cardinality is available only when the object is added to the mode. If you need to change the cardinality, you MUST delete the old relationship, add a new one, and set the new cardinality. Any change to cardinality needs to be deployed. MDM has some restrictions to set a cardinality for objects (see Limitations below).

  1. Add the Reference Object to the model.
  2. Change the Cardinality to 'Many to many' between the Business Object (Exclusive Split) and the Reference Object (Lawyers-External Party).

Form Builder

This component is a field that can be added to a Form and it works with many values.

  1. Add the new attribute (Lawyers BO) to the form Section.
  2. Set the necessary Properties.

  3. Check it on Preview.

Search Builder

This component is a tag field in a search panel.

  1. Add a new attribute to a grid and/or search sections.
  2. Set necessary properties for m2m column in a grid
    .....

Page Builder

  1. Create a new detail page or clone the default one.
  2. Add the field from the MDM Summary Field in the Toolbox to the Summary panel
  3. Configure the settings of the widget
  4. Set the new Detail Page for the case type
  5. In runtime, the detail page will look like this

Limitations

  1. A reference object as view couldn't reference via m2m relationship.
  2. A reusable object as view couldn't reference via m2m relationship.




JavaScript errors detected

Please note, these errors can depend on your browser setup.

If this problem persists, please contact our support.