Customer Relationship Management Blogs by Members
Find insights on SAP CRM and other customer relationship management products and topics in blog posts from community members and share your own perspective.
Showing results for 
Search instead for 
Did you mean: 
Former Member
0 Kudos

Adapter Object Parent :

   The parent object of the adapter object, is a mandatory condition that we need to follow. Normally when we are moving the relevant data from the R3 to CRM or CRM to R3, we will just directly do the normal load of Adapter Object (Initial Load). Some times to make the system conveyance /business scenarios make us to move the data with the relevant filtering. if systems are configured well, objects moves softly and most probably we will get only BDoc error issues, other than this no great issues will not come.

For Example , we can see the adapter Object MATERIAL and its parent object tab.

Parent Objects :

Object Name  :MATERIAL

Parent Object s:  DNL_CUST_PROD0


We can see list of the Parent Adapter Objects in table SMOFOBJPAR.

  But when we are running the load which is having the parent object, we need to check first all respective adapter object moved. If the parent adapter object not moved properly, then we will get the error as below.

Parent not O.K.: (Here we will get the parent object which is not moved properly)

Eg : Parent not O.K.: Customer_main

        Parent not O.K.:MATERIAL.

For this issue, we need to run the Parent Objects first. Sometimes we have to skip the parent adapter object to align with the business scenarios. In this case we need to remove the parent adapter objects accordingly.

  Now take an example for the CUST_MAT_INFO, which is the Customer Material Information Record move from ECC to CRM. Check the SMOFOBJPAR table with the CUST_MAT_INFO. You can see the Parent details.

Now try to download the CUST_MAT_INFO object.

In your case BP is moving from CRM to ECC,then customer_main will be replaced else BUPA_MAIN has to moved. So If your case considering ECC to CRM,then no need to run the below program.

  This program just delete and modifies the table SOMFOBJPAR  and program is not big deal too.


*** This Report replaces the Parent object BUPA_MAIN by CUSTOMER_MAIN***


Data: ls_smofobjpar type smofobjpar.

* Filling the work area to update the table

ls_smofobjpar-objname = 'CUST_MAT_INFO'.

ls_smofobjpar-parentobj = 'CUSTOMER_MAIN'.

* Removing the parent object from the table

delete from smofobjpar where parentobj = 'BUPA_MAIN'.

modify smofobjpar from ls_smofobjpar.

IF sy-subrc = 0.

WRITE : 'Done'.



Even though you are getting the issue with another object parent not ok,then remove that also. Make sure your business scenarios satisfies first.


*** This report removes CUSTOMER_MAIN***


* Removing the parent object from the table

delete from smofobjpar where parentobj = 'CUSTOMER_MAIN'.

IF sy-subrc = 0.

WRITE : 'Done'.



So that we can remove the parent adapter object.

Here removing the entry from a table is not a big deal but understanding the significance of the deletion, aligning to the SAP Frameworks with Business requirement is more important.


Now run the CUST_MAT_INFO, It will work for sure. 🙂