2020-08-31 22:16发布
加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)
大家好,
我能够使用类VMD_EI_API和方法MAINTAIN_BAPI创建供应商主记录,但无法使用同一类更新供应商主记录。
有人可以建议使用此类VMD_EI_API更新供应商主记录的过程吗?
好的:
您在哪里找到困难?
MAINTAIN_BAPI也可以用于更新供应商。 刚刚尝试过,效果很好。
以下是用于更新供应商地址的示例代码:
{代码}数据:lt_vendors类型vmds_ei_extern_t,ls_vendors类型vmds_ei_extern,ls_address类型cvis_ei_address1,gs_vmds_extern类型vmds_ei_main。 ls_vendors-header-object_instance-lifnr = p_lifnr。 "传递要更新的供应商编号ls_vendors-header-object_task ='U'。"表示更新*设置名称ls_address-postal-data-name ='Test'。 "供应商名称ls_address-postal-data-street ='Flat 105,ABS Road'。ls_address-postal-data-postl_cod1 ='400062'。ls_address-postal-data-region ='13'。ls_address-postal-data -country ='IN'。ls_address-postal-data-sort1 = gv_name。ls_address-postal-data-langu = sy-langu *对于提供值的所有字段,将标志值也设置为'X'ls_address -postal-datax-name ='X'。ls_address-postal-datax-street ='X'。ls_address-postal-datax-postl_cod1 ='X'。ls_address-postal-datax-region ='X'。ls_address-postal -datax-sort1 ='X'。ls_address-postal-datax-country ='X'。ls_address-postal-datax-langu ='X'。*表示我们正在更新供应商的地址ls_address-task ='U' *设置供应商的地址ls_vendors-central_data-address = ls_address。APPEND ls_vendors TO lt_vendors。*根据wh设置最终供应商数据 必须更新*注意如果要更新多个供应商...请在LT_VENDORS中维护多个条目gs_vmds_extern-vendors = lt_vendors []。*初始化所有数据vmd_ei_api => initialize()。 *调用供应商更新方法。 调用方法vmd_ei_api => maintain_bapi导出is_master_data = gs_vmds_extern导入es_master_data_correct = gs_vmds_succ es_message_correct = gs_succ_messages es_master_data_defective = gs_vmds_error es_message_defect。 如果gs_err_messages-is_error是INITIAL。 提交工作。 ENDIF。{code}
让我知道您收到什么错误!
感谢Vineesh!
现在,由于我没有在datax字段中设置标志值" X",因此我还能够借助您的代码来更新供应商主数据。
再次非常感谢您。
此致
Alok
嗨Alok,
请查看使用类VMD_EI_API创建供应商的代码
http://scn.sap.com/docs/DOC-42312
如果有帮助/已回答,请关闭该线程。
Srikanth。
此消息已审核。
您好,我在使用vmd_ei_api创建联络人详细信息时遇到错误"地址号码或地址句柄丢失"...。 建议应该通过哪些字段。
阿比吉耶特:
您是否检查了以下链接?
创建供应商-VMD_EI_API
下面的代码集将被检查。...
*设置联系人
刷新:lt_contacts []。
清除ls_contacts。
ls_contacts-task ='I'。 "代表创建联系人
ls_contacts-address_type_3-task ='I'。 "代表创建CP
*指定要获取的联系人号码
*这将仅向我们提供联系人号码
*注意:如果系统中存在注释1749700,则联系人号码可以留空
呼叫功能'BAPI_PARTNEREMPLOYEE_GETINTNUM'
导出
数量='1'
导入
contactid = lv_contactid。
ls_contacts-data_key-parnr = lv_contactid。 "联系人号码
*设置联系人姓名
ls_contacts-address_type_3-postal-data-fullname ='John Doe'。
ls_contacts-address_type_3-postal-data-firstname ='John'。
ls_contacts-address_type_3-postal-data-lastname ='Doe'。
APPEND ls_contacts到lt_contacts。
嗨,我也检查了链接,但问题是记录iare。
1。 如果我按照上述代码使用maintain_bapi创建联系人,则会执行该联系人,但不会在knvk表或xk02 tcode的供应商屏幕中填充值。
2。 如果即时通讯使用维护_bapi编辑联系人,即。 first im使用bdc创建带有必填字段(名称,姓氏,部门和功能)的供应商联系人
第二个添加通信详细信息,例如电话传真或电子邮件(通过使用address_type3结构),其显示错误:"地址编号或地址句柄缺失"。 但是事情是我在供应商的address-> postal(structure)中传递了adrnr。
所以请提示是错误吗?
最多设置5个标签!
好的:
您在哪里找到困难?
MAINTAIN_BAPI也可以用于更新供应商。 刚刚尝试过,效果很好。
以下是用于更新供应商地址的示例代码:
让我知道您收到什么错误!
感谢Vineesh!
现在,由于我没有在datax字段中设置标志值" X",因此我还能够借助您的代码来更新供应商主数据。
再次非常感谢您。
此致
Alok
嗨Alok,
请查看使用类VMD_EI_API创建供应商的代码
http://scn.sap.com/docs/DOC-42312
如果有帮助/已回答,请关闭该线程。
Srikanth。
此消息已审核。
您好,我在使用vmd_ei_api创建联络人详细信息时遇到错误"地址号码或地址句柄丢失"...。 建议应该通过哪些字段。
阿比吉耶特:
您是否检查了以下链接?
创建供应商-VMD_EI_API
下面的代码集将被检查。...
*设置联系人
刷新:lt_contacts []。
清除ls_contacts。
ls_contacts-task ='I'。 "代表创建联系人
ls_contacts-address_type_3-task ='I'。 "代表创建CP
的地址*指定要获取的联系人号码
*这将仅向我们提供联系人号码
*注意:如果系统中存在注释1749700,则联系人号码可以留空
呼叫功能'BAPI_PARTNEREMPLOYEE_GETINTNUM'
导出
数量='1'
导入
contactid = lv_contactid。
ls_contacts-data_key-parnr = lv_contactid。 "联系人号码
*设置联系人姓名
ls_contacts-address_type_3-postal-data-fullname ='John Doe'。
ls_contacts-address_type_3-postal-data-firstname ='John'。
ls_contacts-address_type_3-postal-data-lastname ='Doe'。
APPEND ls_contacts到lt_contacts。
嗨,我也检查了链接,但问题是记录iare。
1。 如果我按照上述代码使用maintain_bapi创建联系人,则会执行该联系人,但不会在knvk表或xk02 tcode的供应商屏幕中填充值。
2。 如果即时通讯使用维护_bapi编辑联系人,即。 first im使用bdc创建带有必填字段(名称,姓氏,部门和功能)的供应商联系人
第二个添加通信详细信息,例如电话传真或电子邮件(通过使用address_type3结构),其显示错误:"地址编号或地址句柄缺失"。 但是事情是我在供应商的address-> postal(structure)中传递了adrnr。
所以请提示是错误吗?
一周热门 更多>