cancel
Showing results for 
Search instead for 
Did you mean: 

Values not updated in CRM ,CRM_BADI_BUPA_MOBILE_CHANGE for Sybasemobile

Former Member
0 Kudos

Hi All,

We are unable to make changes in CRM

Implemented the Change BADI CRM_BADI_BUPA_MOBILE_CHANGE (For language and timezone fields).

please check my previous post.

On mobile made changes for these fields ,checked in DOE ,CE structures ,they are not updated with new values.

checked the FM CRM_BUPA_MOBILE_CHANGE ,BADI is getting triggerd.

How the dat flows ..mobile->doe ->crm ?(for update values)?

Thanks,

Anitha.

Accepted Solutions (1)

Accepted Solutions (1)

sivasatyaprasad_yerra
Active Contributor
0 Kudos

Yes. Flow is correct

Mobile -> DOE -> CRM. Based on CRM, DOE will decide whether to confirm the changes or not.

If CRM accepts the change, then Confirmation will be sent to the device.

If CRM rejects the change, then Rejection will be sent to the device.

1. Do you see any error in message monitoring for this message?

2. Did you receive Confirmation / Rejection for this message? (This can be check in session monitoring)

3. Did CRM contains the changes whatever you have done?

Regards,

Siva.

Former Member
0 Kudos

Hi siva,

How can get the message displayed.

in CRM values are not updated.

what is session monitoring?

Thanks,

Anitha.

sivasatyaprasad_yerra
Active Contributor
0 Kudos

Assign role: SAP_SDOE_ESDBR_DWLD to user to check session monitoring.

You will get link Session monitoring for DOE Connector in user menu.

Session monitoring is the one, where you can check entire communication happened between DOE & SUP servers.

Check if you see any update from device to DOE in session monitoring?

Former Member
0 Kudos

Hi Siva,

There is no error in message monitoring.

Also in Session monitoring there is a success message. When I check the logs it displays the following message:

u201CEntry posted into Queue MMW_RR_RR014013005 for Dep. LinkQ Realignmentu201D .

But changes are not updated in DOE and CRM.

When I check the message I can check the message with updated details. SO updates are coming to DOE, but not getting updated in CRM and CDS tables.

Thanks

Former Member
0 Kudos

Hi siva ,

The custom field is geeting changed ,but the adreess fields are not i.e timezone and language.

data:

wa type BAPIBUS1006_ADDRESS,

wa-TIME_ZONE = 'EGYPT'.

wa-LANGUISO = 'EN'.

CALL FUNCTION 'BAPI_BUPA_ADDRESS_CHANGE'

EXPORTING

BUSINESSPARTNER ='0000000147'

  • ADDRESSGUID =

ADDRESSDATA = wa

  • ADDRESSDATA_X =

  • DUPLICATE_MESSAGE_TYPE =

  • ACCEPT_ERROR = ' '

TABLES

  • BAPIADTEL =

  • BAPIADFAX =

  • BAPIADTTX =

  • BAPIADTLX =

  • BAPIADSMTP =

  • BAPIADRML =

i need to understand the bapi correctly..

please help in this regard.

Thanks,

Anitha.

what parameters i need to import?

Please help me

Former Member
0 Kudos

Hi Anitha,

Why dont you directly try to execute the function module via SE37 transaction. You dont have to update everytime from device to check exactly what parameters are correct for the function module.

I guess, ADDRESSDATA_X holds the paramters which are actually changed.

One more important thing you need to remember is, you are calling the Address Update FM with your local variable "wa type BAPIBUS1006_ADDRESS" with only your two values. But what happens if there are already some existing values in that structure.

So you always have to perform a Address read operation and get existing values first and then change only the ones you need and finally execute the change function module.

Hope you got my point.

Best Regards,

Siva.

Former Member
0 Kudos

Hi Siva ,

I'm still not clear about the point u mentioned.

im calling this change bapi in the BADI .

Need to change two values...

one BP can be assigned many address no's .

and do i need to pass the values to Address_x ?

it changes the standard address of the BP?

Thanks,

Anitha.

Former Member
0 Kudos

Hi Anitha,

My point was,

Lets say the change address function module that you want to execute takes a structure as input with some 10 parameters in it.

Now you are creating a local structure in your code which will have empty values. Now you will update a couple of parameters and try to call the funciton module.

But the problem here is, out of those 10 paramters in the structure the BP might be already having some fields with values. If you dont perform a read operation and then update, then it is so possible that you are updating the 2 fields properly but all the remaining fields will also be updated with null values. Because API doesn't know that you are only dealing with 2 fields. What ever values are passed in the structure, the API simply tries to update with those values.

The code in your BADI implementation should be :

******************

Data: wa_address type ADDRESS_XXXX;

Call FM addressread

Input should be partner number

output should be wa_address

now change those 2 fields...like

wa_address-time_zone = BADI values

second field.

Finally call the FM ADDRESS_CHANGE.

****************

I currently do not have access to the CRM system. So I asked you to execute directly in SE37 to see the minimum required paramters for that API.

Best Regards,

Siva.

Former Member
0 Kudos

Hi siva,

Thanks for the information.

data : ls_address TYPE bapibus1006_address,

CALL FUNCTION 'BUPA_ADDRESS_READ_DETAIL'

EXPORTING

iv_partner =ls_ce_bupa_hdr-partner

iv_xaddress = 'X'

IMPORTING

es_address = ls_address

EXCEPTIONS

no_partner_specified = 1

no_valid_record_found = 2

OTHERS = 3.

loop at ce_bupa_header into ls_ce_bupa_hdr.

IF ls_ce_bupa_hdr-FIELD_NAME = 'LanguageKey'.

ls_address-languiso = ls_ce_bupa_hdr-FIELD_VALUE.

elseIF ls_ce_bupa_hdr-FIELD_NAME = 'ZTIME_ZONE'.

ls_address-time_zone = ls_ce_bupa_hdr-FIELD_VALUE.

endif.

endloop.

CALL FUNCTION 'BUPA_ADDRESS_CHANGE'

EXPORTING

IV_PARTNER =ls_ce_bupa_hdr-partner

  • IV_PARTNER_GUID =

  • IV_ADDRNUMBER =

  • IV_ADDRGUID =

  • IS_ADDRESS =

IS_ADDRESS_X =ls_address

  • IV_DUPLICATE_MESSAGE_TYPE =

  • IV_ACCEPT_ERROR = ' '

U mean to say this?.

Will try executing and come back.

Thanks.

Anitha.

Former Member
0 Kudos

Hi Anitha,

Yes you got me right this time.

Best Regards,

Siva.

Former Member
0 Kudos

Hi siva ,

I just performed executing the FM in se37 ,

wa1-CITY = 'hyderabad'.

wa2-CITY = 'I'.

CALL FUNCTION 'BAPI_BUPA_ADDRESS_CHANGE'

EXPORTING

BUSINESSPARTNER = '0000000001'

ADDRESSGUID = 'DF9AF13AAABD58F182D5001372F65D25'

ADDRESSDATA = wa1

ADDRESSDATA_X = wa2

giving error "An address with GUID DF9AF13AAABD58F182D5001372F65D25 does not exist for business partner 0000000001."

Thanks,

Anitha.

Former Member
0 Kudos

Hi Anitha,

Unfortunately, I do not have access to any CRM system now to help you.

From the error it looks like it is not a valid Address guid for that business partner. And one more thing I observed is you are passing I in wa2 structure where as it has to be 'X' in capital.

Also please check this thread once "

Best Regards,

Siva.

Answers (0)