点击此处---> 群内免费提供SAP练习系统(在群公告中)
加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)
你好大师,
我遇到了一个问题。我想在标头级别上更新Patner交付方的地址详细信息。
我使用了bapi'BAPI_SALESORDER_CHANGE'。 在此有3个与伙伴相关的参数,即
1.Partners 2.Partnerchanges 3.Partneraddresses
我在所有这些参数中填充了所有相关数据...。然后将所有这些传递给了bapi。 而我也使用了BAPI_TRANSACTION_COMMIT。
它给出了成功的消息,但是当我打开订单时,地址细节未更新。
我按照我们的一位专家建议的示例代码将数据填充到这些参数中。
wa_data是保存excel数据的内部表的工作区。
wa_partneraddresses-name = wa_data-name1。
wa_partneraddresses-name_2 = wa_data-name2。
wa_partneraddresses-C_O_NAME = wa_data-name_co。
wa_partneraddresses-STR_SUPPL1 = wa_data-STR_SUPPL1。
wa_partneraddresses-STR_SUPPL2 = wa_data-STR_SUPPL2。
wa_partneraddresses-street = wa_data-street。
wa_partneraddresses-STR_SUPPL3 = wa_data-STR_SUPPL3。
wa_partneraddresses-DISTRICT = wa_data-city2。
wa_partneraddresses-POSTL_COD1 = wa_Data-POST_CODE1。
wa_partneraddresses-city = wa_data-city1。
wa_partneraddresses-REGION = wa_Data-REGION。
wa_partneraddresses-TEL1_NUMBR = wa_data-TEL_NUMBER。
将wa_partneraddress附加到伙伴地址。
选择单个adrnr kunnr到(adrnr,kunnr)
来自vbpa
其中vbeln = vbeln
和parvw ='WE'。
如果sy-subrc = 0。
wa_partnerchanges-document = vbeln。
wa_partnerchanges-itm_number ='000000'。
wa_partnerchanges-updateflag ='U'。
wa_partnerchanges-partn_role ='WE'。
wa_partnerchanges-refobjtype ='BUS2032'。
wa_partnerchanges-refobjkey = vbeln。
wa_partnerchanges-P_NUMB_OLD = kunnr。
wa_partnerchanges-P_NUMB_NEW = kunnr。
wa_partnerchanges-addr_link = adrnr。
将wa_partnerchanges附加到partnerchanges。
将表partneraddresses读入wa_partneraddresses索引1。
如果sy-subrc = 0。
wa_partneraddresses-addr_no = adrnr。
wa_partneraddresses-COUNTRY ='IN'。
wa_partneraddresses-langu ='E'。
从wa_partneraddresses索引1 TRANSPORTING addr_no国家/地区语言中修改伙伴地址。
endif。
wa_partners-partn_role ='WE'。
wa_partners-partn_numb = kunnr。
将wa_partners附加到合作伙伴。
ENDIF。
请帮助我解决这个问题....
感谢与问候,
R.P。Sastry
嗨
通过填充表参数PARTNERCHANGES满足您的要求
希望这会有所帮助
致谢
Aakash Banga
编辑者:aakash banga,2009年1月21日上午10:27
回答了..Good
嗨,大师,
我解决了我的问题......
我需要填写BAPI_SALESORDER_CHANGE bapi的参数partnerchanges和partneraddress...。
还有另一件事,我们需要在结构partnerchangessay(ADDR_LINK)的一个字段中传递一个虚拟地址号,并在结构partnerchangessay(addr_no)的一个字段中传递相同的数字。 .....出于有用的目的,我粘贴了我的代码............
wa_partnerchanges-document = vbeln。
wa_partnerchanges-itm_number ='000000'。
wa_partnerchanges-updateflag ='U'。
wa_partnerchanges-partn_role ='WE'。
wa_partnerchanges-p_numb_old = kunnr。
wa_partnerchanges-p_numb_new = kunnr。
wa_partnerchanges-addr_link ='9999999999'。
将wa_partnerchanges更改为合作伙伴更改。
wa_partneraddresses-house_no = wa_Adrc-house_num1。
wa_partneraddresses-TIME_ZONE = wa_adrc-TIME_ZONE。
wa_partneraddresses-PO_BOX = wa_adrc-PO_BOX。
wa_partneraddresses-POSTL_COD2 = wa_adrc-POST_CODE2。
wa_partneraddresses-POSTL_COD3 = wa_adrc-POST_CODE3。
wa_partneraddresses-tel1_ext = wa_adrc-TEL_EXTENS。
wa_partneraddresses-FAX_NUMBER = wa_adrc-FAX_NUMBER。
wa_partneraddresses-FAX_EXTENS = wa_adrc-FAX_EXTENS。
wa_partneraddresses-comm_type = wa_adrc-DEFLT_COMM。
wa_partneraddresses-addr_no ='9999999999'。
wa_partneraddresses-country = wa_adrc-country。
wa_partneraddresses-langu = wa_adrc-langu。
将wa_partneraddresses附加到伙伴地址。
我正在关闭线程。
已回答
一周热门 更多>