on 04-10-2015 7:44 AM
Hello Expert,
My requirement is that I want to transfer the entries from custom table(ZABC) from ECC to custom table(ZABC) in CRM. Also when ever there is any change in ECC table is should update in CRM table also through DELTA load.
Now for this I did refer some post in SCN like the below one and I was able do the INITIAL load successfully i.e. the data was transfer from ECC to CRM table but there were no BDOC created in SMW01. Also DELTA load is not triggering at all.
In brief I did the below steps let me know if I am missing something..
CRM System,:
1) Created Z table "ZABC" in CRM
2) Created Customizing Object in R3AC3
Object Name: Y_ABC
Object Class: CUSTOMIZING
Linked BDoc Type: Y_ZBDOC
R3 to CRM : Y_MAP_BAPIMTCS
3) CREATE BDOC in SBDM -->Y_ZBDOC
4) Execute Report SMOF_FILL_CRMATAB
Source Site Name : OLTP
Objectname : Y_ABC
ECC system:
1) create table ZABC in ECC
2) Create FM YMD_EXT_ABC
3) Customizing entries:
Table: CRMSUBTAB
CONSUMER: CRM
OBJNAME : Y_ABC
UP OR DOWN:D
MOD NAME : Z_EXTRACT_MODULE
OBJCLASS CUSTOMIZING
Now when i do the INITIAL load for Y_ABC in R3AS then it works and data is transfer from ECC-->CRM but i cannot see any BDOC in SMW01 created and hence no DELTA is triggered.
Function: Y_MAP_BAPIMTCS
*"----------------------------------------------------------------------
*"*"Local Interface:
*" IMPORTING
*" REFERENCE(I_BAPICRMDH2) LIKE BAPICRMDH2 STRUCTURE BAPICRMDH2
*" REFERENCE(I_OBJ_CLASS) LIKE SMOFOBJECT-OBJCLASS
*" EXPORTING
*" REFERENCE(E_DO_NOT_CALL_GDH) LIKE SMOF_PARA-XFELD
*" TABLES
*" TI_BAPIMTCS STRUCTURE BAPIMTCS
*" T_MESSAGES STRUCTURE BAPICRMMSG
*" TI_KEY_INFO STRUCTURE BAPICRMKEY
*" TI_OTHER_INFO STRUCTURE BAPIEXTC
*" TO_SMO0GENSB STRUCTURE SMO0GENSB
*" CHANGING
*" REFERENCE(E_OBJ_NAME) LIKE SMOFOBJECT-OBJNAME
***LOGIC****
***** read table BAPIMTCS and UPDATE in ZABC table in CRM
****************************************************************************************************************************************
Function: Z_EXTRACT_MODULE
*"----------------------------------------------------------------------
*"*"Local Interface:
*" IMPORTING
*" REFERENCE(I_OBJ_NAME) TYPE OBJ_NAME
*" REFERENCE(I_BAPICRMDH1) TYPE BAPICRMDH1
*" EXPORTING
*" REFERENCE(E_STATUS) TYPE STATUS_EXT
*" TABLES
*" ET_BAPIMTCS STRUCTURE BAPIMTCS
*"----------------------------------------------------------------------
**LOGIC**
**SELECT from ZABC table
**MAP the Z_ABC entry to BAPIMTCS
**did the below code..
call function 'CRS_FILL_CRMDH2_FROM_DH1'
EXPORTING
i_bapicrmdh1 = ls_bapicrmdh1
i_lastblock = lv_lastblock
i_blockno = lv_blkno
i_recordno = lv_recno
IMPORTING
e_bapicrmdh2 = ls_bapicrmdh2.
ls_bapicrmdh2-dwnloadtyp = 'D'. " Delta Download
ls_bapicrmdh2-delta_op = 'U'. " Update
ls_bapicrmdh2-uploadstat = 'S'. " Success of download
*Transfer data to CRM
CALL FUNCTION 'CRS_SEND_TO_SERVER'
CAN anyone tell if I am missing any steps??// for DELTA.
Regards,
Jan
Hi Jan,
all the steps seems absolutely fine too me.
Thanks,
Prem,
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
Hello Experts,
The BDOC are now generated in SMW01 in CRM there was some code issue which I corrected.
But if I make any changes in Z Table in ECC then the DELTA is not getting trigger. I am maintaining the records in ECC via SM30, so when i clcik on SAVE it should called "CRS_SEND_TO_SERVER" which will call the corresponding Bdoc in CRM.
So what I want to know is do I need to do some kind of enhancement spot on SM30->SAVE event and then call FM "CRS_SEND_TO_SERVER" to trigger the DELTA load????
Any help will be really appreciate. Thanks.
Regards,
Hemant
Hello Expert,
Any one who can help me..
To activate the auto DELTA load do i need to create some entry in table TBE31? in CRM or in ECC
I tried to create some entry SM30-->TBE31
but it don't know what EVENT i need to enter. i tried to create event in TBE01 but its gives error message "
Regards,
Jan
Hello Jan,
As far I know, there is no Delta Load for standard customizing objects.
Delta download will be automatically activated for business objects (transaction :R3AC1) once initial load is done.
Check transaction :R3AC4. There is a flag to Activate/Inactivate Delta Load.
Regarding ECC, generally there will be an event registered in table TBE31 to trigger delta load.
Check in table TBE31 with FM: CRS_MATERIAL_COLLECT_DATA. This FM will send only the delta and also responsible for calling the middleware via CRS_SEND_TO_SERVER.
Hope this helps!
Best Regards,
Shanthala.
Hello Shanthala,
First of Thanks very much for your reply.
Yes you correct DELTA load should be automatically registered after INITIAL Load and with this the entry will be created in TBE31 table in ECC correct?
In R3AC4 i can see my OBJECT class but when I select this OBJECT class and go to "Events by Object Class" there are no entries and may be this is the cause why no DELTA is triggered?
OR how the TBE31 table is auto filled during INITIA load, I know I am missing some customizing but not sure what?
Can you please guide me what it may be. Thanks.
Regards,
Jan
Hello Jan,
As far I know, automatic registration for auto delta happens only for standard business objects like MATERIAL, BUPA_MAIN etc.
Can you please try this:
SE16-->TBE31 create new entry with custom FM with APPL= BC-MID.
You also need to write the logic to extract the delta for the custom table in above registered FM.
And at the end call MW that is CRS_SEND_TO_SERVER. Check any standard delta modules like
*COLLECT*DATA*
Also, you need to trigger the event specified in above table upon change in the table entry.
I have really not tried these out. May be you can give a try.
Best Regards,
Shanthala.
Hello Shanthala,
I am trying to create an entry in Table TBE31 in ECC, but what will be the EVENT?
EVENT = ??
APPLK = BC-MID
FUNCT = Z_XX_XX
Yes on change of entry in table I have written the logic and also called the CRS_SEND_TO_SERVER but DELTA not triggerd may be bcoz of no entry in TBE31.
Regards,
Hemant
Hello Shanthala,
Sorry I am troubling you again, I tried but its always giving below error message.
I guess first I need to create an DATA Element wit EV* but then this will be standard do I need to take the Access key to create this or is there any other way?
Regards,
Jan
User | Count |
---|---|
5 | |
1 | |
1 | |
1 | |
1 | |
1 | |
1 | |
1 | |
1 | |
1 |
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.