Hello Dinesh,
The table CRMFILTAB in ECC and the table SMOFFILTAB in CRM are not supposed to be the same.
Let me explain the reason to you:
ECC rable CRMFILTAB is used only for data being sent from ECC to CRM. This is because filtering is always performed in the source system. For instance, object CUSTOMER_MAIN is only valid for data transfer from ECC to CRM (also can be seen from the flow tab in R3AC1). Therefore, the filter settings defined for CUSTOMER_MAIN should be updated in ECC table CRMFILTAB.
CRM table SMOFFILTAB is only read for data selection on the CRM side.
When you save filter settings in transaction R3AC1 you have to select the source site in the dropdown. When doing this for CUSTOMER_MAIN you only have the option to select OLTP as the source site. It follows that only the filtering table on the OLTP system (ie table CRMFILTAB on ECC) should be updated.
An exmaple of where SMOFFILTAB would be used is when an initial laod is performed of, say, BUPA_MAIN from CRM to ECC. Then, when updating the filters you can select CRM as the source site. In this case, the filtering is done on hte CRM system and CRM table SMOFFILTAB is used.
Also, filtering in R3AC1 on data sent from the CRM is used only for initial load (or request), which works the same way as an initial load. For delta changes made on the CRM side, data can only be restricted using filter criteria in the admin console (tr SMOEAC).
Hope my answer helps you.
Best regards,
Julin Xin