Skip to Content
0
Former Member
Mar 13, 2007 at 10:34 PM

RFC BAPI_BUPA_ADDRESS_CHANGE

42 Views

Hi

I have problems with changing data in an IDES test system. Just to education purposes I tried to change the CITY of an Business Partner.

I queried the AddressGUID and filled the structure ADDRESSDATA only with the CITY field.

After that I did a BAPI_TRANSACTION_COMMIT.

What happened was, that the previous name is no longer there but the new value is empty.

Is there an conceptional thing I am missing?

I am doing that from Ruby, but I think the problem is more in understanding the update/change mechanism of ABAP, which is the reason I haven't put it to the Ruby forum. Anyways, here is the code

rfc = SAP::Rfc.new(:ashost => "iwdf3018.wdf.sap.corp" , :sysnr => "50" ,:lang => "EN" , :client => "800" , :user => "++" , :passwd => "++" , :trace => "0" )
iface = rfc.discover("BAPI_BUPA_ADDRESSES_GET")
iface.BUSINESSPARTNER.value = "0000002036"
rfc.call(iface)
addrGUID = iface.STANDARDADDRESSGUID.value
...
iface = rfc.discover("BAPI_BUPA_ADDRESS_CHANGE")
iface.BUSINESSPARTNER.value = "0000002036"
iface.ADDRESSGUID.value = { "GUID" => addrGUID.unpack("H*") }
iface.ADDRESSDATA.value = { "CITY" => "Beelitz"}
rfc.call(iface)
...
# calling BAPI_TRANSACTION_COMMIT

Can anybody explain to me, what might be wrong in my view on the whole problem domain? How does it work in general to change data using an appropriate RFC?

Thanks

Regards,

Stefan