PM-RM Integration
PM RM Integration Overview
Product Master and Relationship manager integration is all about managing market definition of product data in a convenient and efficient way. This integration includes mastering of Product data in Reltio and creating and managing market definition hierarchies for products and product groups in Relationship Manager app. Integration between these two product mastering and hierarchy management provides users proper insight which is then used in various ways by clients.
PM RM Integration Insight
Product data is integrated between MDM (Reltio in this case) and IDP Relationship Manager application in several steps as explained below:
-
Data Loaded into Reltio
First thing is product data is mastered in Reltio. To start with, MIDAS product data is loaded into Reltio tenant in this integration. Steps to load product data is explained here MIDAS Data Load.
-
Data Extracted from Reltio to IDP staging tables
Data once loaded into Reltio, it has to be extracted to IDP staging area for further processing. Steps on how to extract data from Reltio to staging is explained here MDM Reltio Extract.
-
Outbound Views for Product Data
View created for Product Master data from staging tables which is then used for creating flat files for downstream and also used for transferring data to RM datamart. Steps to create outbound views explained here MDM PM Extract Outbound Views.
-
Create PM Datamart table
A baseline pipeline taskgroup (Reltio_MDM_PM_RM_DataMart) is provided as part of the release. When this taskgroup is executed, a datamart table (ODP_RM_DATAMART.MED_PRODUCT) is created by taking data from PM outbound views as mentioned in previous step. This datamart table is then used in RM application to generate product hierarchies.
A DID (MDM PM RM Datamart Table) is provided explaining layout of RM datamart table and how it is created from outbound views here Data Interface Documents.
Follow steps below to import Reltio_MDM_PM_RM_DataMart pipeline template:
-
Connect to IDP default s3 bucket and go to the folder <bucket_name>/templates/product.
-
Download the pipeline template file Reltio_MDM_PM_RM_DataMart_<version>.json.
-
If multiple versions for the same pipeline exists then, consider the latest pipeline version.
-
Open the pipeline template Reltio_MDM_PM_RM_DataMart_<version>.json in any text editor and replace all the occurrences of below place holders.
Placeholder
Parameter Value Placehlder Replaceable String
Description __RELTIO_CONNECTION_NAME__
__RELTIO_CONNECTION_NAME__ Reltio Connection name configured in Entity Collection. For example, RELTIO_MDM_PM
Configure_Alternate_Name_Type NULL_VALUE This is an optional place holder.
Replace this placeholder only if specific alternate name type and it'svalue need to be populated to ODP_RM_DATAMART.MED_PRODUCT table.
Example. InternationalName
In views ALTERNATENAME is nested attribute. Multiple columns are concatenating by ^ and rows are ++ character. In this process we take only first row value by splitting ++ and match type value by splitting ^ with our configure value. If type value match then populate name from this nested attribute as ALTERNATE_NAME and input configure value as TYPE otherwise both are null. Configure_Identifier_Type NULL_VALUE This is an optional place holder.
Replace this placeholder only if specific identifier type and it'svalue need to be populated to ODP_RM_DATAMART.MED_PRODUCT table.
Example. ID
In views IDENTIFIER is nested attribute. Multiple columns are concatenating by ^ and rows are ++ character. In this process we take only first row value by splitting ++ and match type value by splitting ^ with our configure value. If type value match then populate ID from this nested attribute as IDENTIFIER and input configure value populate as IDENTIFIER_TYPE otherwise IDENTIFIER is null. Note:
The search strings given above are case-sensitive, do not enclose with any character, replace as it is.
-
Login to IDP platform with valid credentials.
-
Go to Data Pipeline app, click Task Group from Template and import the template using updated template file.
-
After the successful import, a task group with name Reltio_MDM_PM_RM_DataMart is created.
Operational Steps
This pipeline task group consists of 3 steps:
-
Med Product Consolidated View: Creates a view ODP_CORE_STAGING.VW_<RELTIO_CONNECTION_NAME>_CONSOLIDATED_MED_PRODUCT using PM outbound views. Columns and table used from out PM bound views are available in Data Interface Documents.
-
Create Med Product Table from View: Using the view definition created in previous task, table ODP_RM_DATAMART.MED_PRODUCT is created.
-
Populate Data To Med Product: Data from view is populated to table (ODP_RM_DATAMART.MED_PRODUCT)
-
-
Generate Product Hierarchy in RM
Follow RM application user guide to understand how to use and generate product hierarchies in RM and publish them to datamart hierarchy table (ODP_RM_DATAMART.MED_PRODUCT_RM_HIER) and reference table (ODP_RM_DATAMART.MED_PRODUCT_RM_REF).
-
Load PM Hierarchy back to Reltio
Once product hierarchy data is published to RM datamart tables, it is then moved to canonical schema. Canonical schema is used for loading data into Reltio. A baseline pipeline taskgroup (MDM_Load_Reltio_PM_RM) is provided as part of release. This taskgroup can be executed to move data from RM datamart to canocnial schema and then load them to Reltio.
Follow steps below (one time) to import MDM_Load_Reltio_PM_RM pipeline template:
-
Connect to IDP default s3 bucket and go to the folder <bucket_name>/templates/product.
-
Download the pipeline template file MDM_Load_Reltio_PM_RM_<version>.json.
-
If multiple versions for the same pipeline exists then, consider the latest pipeline version.
-
Open the pipeline template MDM_Load_Reltio_PM_RM_<version>.json in any text editor and replace all the occurrences of below place holders.
Placeholder
Replaceable String
__RELTIO_CONNECTION_NAME__
Reltio Connection name configured in Entity Collection. For example, RELTIO_MDM_PM
Relationship_Name_List This is an optional place holder.
Replace this placeholder if user wants to populate specific relationship data, set relationship name otherwise set default value 'ALL_RELATIONSHIPS'.Default value populate all the relationship data.
User can set multiple relationship name value enclosed with single quote with comma separator.
Example: 'Rel 1','Rel 2'
Reltio_Post_Leaf_Relation_with_URI_or_Crosswalk Possible values are URI or Crosswalk. Default value is URI
Depending on the value of this parameter, RMHierarchy relations is posted to reltio with either mdm uri or source id crosswalk.
This parameter is only applicable to leaf node relations that is. ProdGroupToMedProd relations.
If value is URI, then leaf node relations (ProdGrouptoMedProd) are posted to reltio with mdm uri as end object
If value is Crosswalk, then leaf node relations (ProdGrouptoMedProd) are posted to reltio with source id as end object crosswalk.
Example 1: With parameter value as URI, below is the sample json posted to reltio with end object having mdm uri.
Copy{
"attributes": {},
"crosswalks": [
{
"deleteDate": "",
"sourceTable": "ProdGroupToMedProd",
"type": "configuration/sources/RMHierarchy",
"value": "b8a1aa5a9972a6442a3cc966bc65eb6869fb72be731c0c8962f41f46545f4a43"
}
],
"endObject": {
"objectURI": "entities/1mHvDDqy"
},
"startObject": {
"crosswalks": [
{
"deleteDate": "",
"sourceTable": "ProductGroup",
"type": "configuration/sources/RMHierarchy",
"value": "LFR6X5V37RL6YZVA68R3GZLJK2"
}
]
},
"type": "configuration/relationTypes/ProdGroupToMedProd"
}Example 2: With parameter value as Crosswalk, below is the sample json posted to reltio with end object having source id as the crosswalk.
Copy{
"attributes": {},
"crosswalks": [
{
"deleteDate": "",
"sourceTable": "ProdGroupToMedProd",
"type": "configuration/sources/RMHierarchy",
"value": "a7c2c8e6c8ab62677adc6a604f838b84dcbe8ca1d52c2c74c05e77e82815f9d9"
}
],
"endObject": {
"crosswalks": [
{
"deleteDate": "",
"sourceTable": "MedicinalProduct",
"type": "configuration/sources/RMHierarchy",
"value": "RMN9YHY6F8JKYGXUCFNT7BGTWW"
}
]
},
"startObject": {
"crosswalks": [
{
"deleteDate": "",
"sourceTable": "ProductGroup",
"type": "configuration/sources/RMHierarchy",
"value": "FJ2GNUD8BAW8YYB75WK6RJUPFQ"
}
]
},
"type": "configuration/relationTypes/ProdGroupToMedProd"
} -
Login to IDP platform with valid credentials.
-
Go to Data Pipeline app, click Task Group from Template and import the template using updated template file.
-
After the successful import, a task group with name MDM_Load_Reltio_PM_RM is created.
For executing above step, Reltio inbound views should be created for Product Master. This is also a onetime step. Follow instructions below to create PM and RDM inbound views:
-
Connect to IDP default s3 bucket and go to the folder <bucket_name>/templates/product.
-
Download the pipeline template file MDM_Load_Refresh_Reltio_Views_Product_Master_<version>.json.
-
If multiple versions for the same pipeline exists then, consider the latest pipeline version.
-
Login to IDP platform with valid credentials.
-
Go to Data Pipeline app, click Task Group from Template and import the template using updated template file.
-
After the successful import, a task group with name MDM_Load_Refresh_Reltio_Views_Product_Master is created.
-
Execute this taskgroup.
-
Connect to IDP default s3 bucket and go to the folder <bucket_name>/templates/product.
-
Download the pipeline template file MDM_Load_Refresh_Reltio_Views_RDM_<version>.json.
-
If multiple versions for the same pipeline exists then, consider the latest pipeline version.
-
Login to IDP platform with valid credentials.
-
Go to Data Pipeline app, click Task Group from Template and import the template using updated template file.
-
After the successful import, a task group with name MDM_Load_Refresh_Reltio_Views_RDM is created.
-
Execute this taskgroup.
-
See DID of PM-RM Integration in Data Interface Documents.