点击此处---> 群内免费提供SAP练习系统(在群公告中)
加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)
嗨,
我尝试使用MAINTAIN_BAPI方法使用类CMD_EI_API创建客户。 当我不提供客户销售详细信息时,就可以成功创建客户。 当我提供销售详细信息时,它会误解合作伙伴功能。
我的代码:
报告ZTEST_CUST75_CC。
数据:wa_header类型cmds_ei_header,
wa_central_data类型为cmds_ei_vmd_central_data,
wa_central_datax类型cmds_ei_vmd_central_data_xflag,
wa_address类型bapiad1vl,
wa_addressx类型bapiad1vlx,
wa_tax_ind_st类型cmds_ei_tax_ind,
wa_tax_ind类型cmds_ei_cmd_tax_ind,
wa_bankdetail_st类型cvis_ei_cvi_bankdetail,
wa_bankdetail类型cvis_ei_bankdetail,
wa_s_company_code类型cmds_ei_company,
wa_t_company_code类型cmds_ei_company_t,
wa_s_functions类型为cmds_ei_functions,
wa_t_functions类型CMDS_EI_FUNCTIONS_T,
wa_functions类型为cmds_ei_cmd_functions,
wa_s_sales_data类型为cmds_ei_sales,
wa_t_sales_data类型为cmds_ei_sales_t,
wa_sales_data类型为cmds_ei_cmd_sales,
wa_customer类型cmds_ei_extern,
wa_customers输入cmds_ei_main,
wa_correct类型cmds_ei_main,
wa_defective类型的cmds_ei_main,
wa_mes_correct类型cvis_message,
wa_mes_error类型cvis_message,
wa_t_corr_cust类型CMDS_EI_EXTERN_T,
wa_s_corr_cust类似于wa_t_corr_cust行。
数据:return_t类型bapiret2_t,
return_s类型bapiret2,
g_kunnr类型kunnr。
数据:wa_t_phone类型CVIS_EI_PHONE_T,
wa_s_phone类似于wa_t_phone的行,
wa_t_fax类型CVIS_EI_FAX_T,
wa_s_fax类似于wa_t_fax的行,
wa_t_email类型CVIS_EI_SMTP_T,
wa_s_email类似于wa_t_email的行,
wa_comm类型CVIS_EI_CVI_COMMUNICATION。
常量:c_update类型c值'M',
c_insert类型c值'I'。
选择开始。
清除:wa_customer,wa_s_company_code。
wa_customer-header-object_task = c_insert。
******************开始填充地址******************
wa_address-name ='NAVTEQ测试标致NSO经销商'。
wa_address-city ='Veldhoven'。
wa_address-postl_cod1 ='5503LB'。
wa_address-street ='De Run'。
wa_address-country ='CZ'。
wa_address-langu ='E'。
wa_address-sort1 ='SORT1'。
wa_address-sort2 ='Sort2'。
wa_address-TRANSPZONE ='0000000001'。
*直接分配地址数据
wa_customer-central_data-address-postal-data = wa_address。
wa_addressx-name ='X'。
wa_addressx-city ='X'。
wa_addressx-postl_cod1 ='X'。
wa_addressx-street ='X'。
wa_addressx-country ='X'。
wa_addressx-langu ='X'。
wa_addressx-sort1 ='X'。
wa_addressx-sort2 ='X'。
wa_addressx-TRANSPZONE ='X'。
*直接分配地址数据
wa_customer-central_data-address-postal-datax = wa_addressx。
*******************填充地址的结尾*******************
**直接分配帐户组
wa_customer-central_data-central-data-ktokd ='0001'。"'OKRA'。
wa_customer-central_data-central-datax-ktokd ='X'。
wa_customer-central_data-central-data-STCD1 ='8291004247'。
wa_customer-central_data-central-datax-stcd1 ='X'。
*******************通讯详细信息开始******************
*如果i_meth_id ='电话'。
wa_s_phone-contact-task = c_insert。
wa_s_phone-contact-data-telephone ='040-1234567'。
wa_s_phone-contact-datax-telephone ='X'。
将wa_s_phone附加到wa_t_phone。
* wa_comm-PHONE-current_state ='X'。
wa_comm-PHONE-PHONE = wa_t_phone []。
* elseif i_meth_id ='Fax'。
wa_s_fax-contact-task = c_insert。
wa_s_fax-contact-data-fax ='1234567891'。
wa_s_fax-contact-datax-fax ='X'。
将wa_s_fax附加到wa_t_fax。
* wa_comm-FAX-current_state ='X'。
wa_comm-FAX-FAX = wa_t_fax []。
* elseif i_meth_id ='电子邮件'。
wa_s_email-contact-task = c_insert。
wa_s_email-contact-data-e_mail = 'e.shivakrishna@gmail.com '。
wa_s_email-contact-datax-e_mail ='X'。
将wa_s_email附加到wa_t_email。
* wa_comm-SMTP-current_state ='X'。
wa_comm-SMTP-SMTP = wa_t_email []。
* endif。
*直接分配接触介质数据
wa_customer-central_data-address-communication = wa_comm。
*******************通讯结束细节********************
***************客户公司代码详细信息的开头*************
wa_s_company_code-task = c_insert。
wa_s_company_code-data_key-bukrs ='3000'。
wa_s_company_code-data-zuawa ='009'。
wa_s_company_code-data-akont ='0000140555'。
wa_s_company_code-data-zterm ='Z30'。
wa_s_company_code-data-xzver ='X'。
将wa_s_company_code附加到wa_t_company_code。
wa_customer-company_data-current_state ='X'。
wa_customer-company_data-company = wa_t_company_code []。
*****************客户公司代码结尾*************
******************客户销售详细信息开始*****************
wa_s_sales_data-task = c_insert。
wa_s_sales_data-data_key-vkorg ='3000'。" i_sales_org。
wa_s_sales_data-data_key-vtweg ='01'。
wa_s_sales_data-data_key-spart ='30'。
wa_s_sales_data-data-versg ='1'。
wa_s_sales_data-datax-versg ='X'。
wa_s_sales_data-data-kalks ='3'。
wa_s_sales_data-datax-kalks ='X'。
wa_s_sales_data-data-kdgrp ='MC'。
wa_s_sales_data-datax-kdgrp ='MC'。
wa_s_sales_data-data-vsbed ='02'。
wa_s_sales_data-datax-vsbed ='X'。
wa_s_sales_data-data-waers ='EUR'。
wa_s_sales_data-datax-waers ='X'。
wa_s_sales_data-data-ktgrd ='02'。
wa_s_sales_data-datax-ktgrd ='X'。
* wa_s_sales_data-data-zterm ='Z30'。" i_pay_term。
* wa_s_sales_data-datax-zterm ='X'。
******合作伙伴角色详细信息开始*****
wa_s_sales_data-functions-current_state ='X'。
wa_s_functions-task = c_insert。
wa_s_functions-data_key-parvw ='RE'。
wa_s_functions-data_key-parza ='000'。
wa_s_functions-data-knref ='交单'。
wa_s_functions-datax-knref ='X'。
* wa_s_functions-data-partner =''。
* wa_s_functions-datax-partner ='X'。
将wa_s_functions附加到wa_t_functions。
清除wa_s_functions。
wa_s_functions-task = c_insert。
wa_s_functions-data_key-parvw ='AG'。
wa_s_functions-data_key-parza ='000'。
wa_s_functions-data-knref ='卖给聚会'。
wa_s_functions-datax-knref ='X'。
* wa_s_functions-data-partner =''。
* wa_s_functions-datax-partner ='X'。
将wa_s_functions附加到wa_t_functions。
清除wa_s_functions。
wa_s_functions-task = c_insert。
wa_s_functions-data_key-parvw ='RG'。
wa_s_functions-data_key-parza ='000'。
wa_s_functions-data-knref ='付款人'。
wa_s_functions-datax-knref ='X'。
* wa_s_functions-data-partner =''。
* wa_s_functions-datax-partner ='X'。
将wa_s_functions附加到wa_t_functions。
清除wa_s_functions。
wa_s_functions-task = c_insert。
wa_s_functions-data_key-parvw ='WE'。
wa_s_functions-data_key-parza ='000'。
wa_s_functions-data-knref ='参加聚会的船'。
wa_s_functions-datax-knref ='X'。
wa_s_functions-data-partner =''。
wa_s_functions-datax-partner ='X'。
将wa_s_functions附加到wa_t_functions。
wa_s_sales_data-functions-functions = wa_t_functions []。
******合作伙伴角色结束的详细信息******
将wa_s_sales_data附加到wa_t_sales_data。
wa_sales_data-current_state ='X'。
wa_sales_data-sales = wa_t_sales_data []。
*直接分配销售数据
wa_customer-sales_data = wa_sales_data。
*******************客户结束销售详细信息******************
将wa_customer附加到wa_customers-customers。
调用方法cmd_ei_api => maintain_bapi
导出
* iv_test_run = p_test
* iv_collect_messages ='X'
is_master_data = wa_customers
导入
es_master_data_correct = wa_correct
es_message_correct = wa_mes_correct
es_master_data_defective = wa_defective
es_message_defective = wa_mes_error。
如果wa_mes_error-is_error是初始的。
提交工作。
wa_t_corr_cust [] = wa_correct-customers []。
将表wa_t_corr_cust读入wa_s_corr_cust索引1。
如果sy-subrc eq为0。
g_kunnr = wa_s_corr_cust-header-object_instance-kunnr。
endif。
写道://"客户已创建:",g_kunnr。
其他。
return_t = wa_mes_error-messages。
在return_t循环进入return_s,其中type ='E'。
写入:/"错误:",return_s消息。
结束循环。
endif。
请让我知道我错了。????
我猜测问题是所有PARZA值都设置为000。此字段是合作伙伴计数器,我认为它们应该全部不同,即001、002、003、004。/p>
但是,感谢您的发帖,我正在考虑使用此类/方法,您的代码看起来像是一个很好的模型!
您好,我正在尝试放置ICMS Taxpayer (KNA1-ICMSTAXPAY)来自巴西的税收纳入了此"客户创建"结构,但我很幸运,我无法找到一种方式来包含此信息,它不在任何结构中。
一周热门 更多>