在BAPI_ACC_DOCUMENT_POST中传递销售订单编号时出现问题

2020-09-22 04:32发布

         点击此处--->   EasySAP.com群内免费提供SAP练习系统(在群公告中)

加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)


亲爱的

在通过bapi BAPI_ACC_DOCUMENT_POST创建客户预付款(f-29)时,遇到一个问题,请输入销售订单号,因为这在我们的系统中是必需的。 但是我在BAPIACAR09中没有这样的字段,因此我无法传递BAPI。 请提出一些解决方案。

         点击此处--->   EasySAP.com群内免费提供SAP练习系统(在群公告中)

加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)


亲爱的

在通过bapi BAPI_ACC_DOCUMENT_POST创建客户预付款(f-29)时,遇到一个问题,请输入销售订单号,因为这在我们的系统中是必需的。 但是我在BAPIACAR09中没有这样的字段,因此我无法传递BAPI。 请提出一些解决方案。

付费偷看设置
发送
5条回答
大简至美
1楼-- · 2020-09-22 05:03

亲爱的Omprakash,


我最近发布了一个有关扩大使用BAPI_ACC_DOCUMENT_POST

的博客。

在此处检查解决方案,以及如何解决本文中的问题。

最好的问候

Gabriel Coleti

宇峰
2楼-- · 2020-09-22 05:11

尊敬的Omprakash,


首先,您可以实现BAdI BADI_ACC_DOCUMENT(接口IF_EX_ACC_DOCUMENT)。 我在其中发布了BAdI的源代码。


第二,您可以使用EXTENSION2表,如下所示:

wa_extension2-structure ='ACCOUNTGL'。 "这是您要在其中添加销售订单的BAPI输入参数表

wa_extension2-valuepart1 ='0000000020'。 "这是您要在其中添加销售订单的订单项ID

wa_extension2-valuepart2 ='C_ACCIT'。 "这是您要在其中添加销售订单的BAdI表

wa_extension2-valuepart3 ='KDAUF'。 "这里是BAdI的字段-KDAUF是销售订单

wa_extension2-valuepart4 ='1140000347'。 "这是销售订单号


最诚挚的问候,


Gabriel Coleti

亦是此间程序员
3楼-- · 2020-09-22 05:21

检查OSS注释561175是否对您有帮助。 另外,您可以尝试使用BAPI_PAYMENTREQUEST_CREATE

Violet凡
4楼-- · 2020-09-22 05:01

亲爱的Lakshmipathi,

请共享一些示例代码以传递BAPI_PAYMENTREQUEST_CREATE。 这样对我有很大帮助。


此致

Om

渐行渐远_HoldOn
5楼-- · 2020-09-22 05:10

亲爱的加布里埃尔,

感谢您的宝贵意见,BADI实现是在扩展中传递值的唯一方法。

这是我的代码,我正在尝试传递扩展中的数字,但未传递,

lwa_bapi_docheader-obj_type ='BKPFF'。
lwa_bapi_docheader-obj_key ='$'。
lwa_bapi_docheader-obj_sys = sy-mandt。
lwa_bapi_docheader-bus_act ='RFBU'。
= sy-uname。
lwa_bapi_docheader-header_txt ='HEADER TEXT BAPI'。
lwa_bapi_docheader-comp_code ='9000'。
lwa_bapi_docheader-doc_date = sy-基准。
lwa_bapi_docheader-pstng_date =
lwa_bapi_docheader-ref_doc_no ='REF DOC NO BAPI'。
lwa_bapi_docheader-doc_type ='DZ'。
lwa_bapi_docheader-AC_DOC_NO =``。

CLEAR lwa_bapi_acctgl。
* -itemno_acc ='0000000010'。
* lwa_bapi_acctgl-gl_account ='0000112315'。
* lwa_bapi_acctgl-comp_code ='9000'。
* lwa_bapi_acctgl-pstng_date = sy-datum。
-lwa_gtext_lite_m ='ITEM TEXT BAPI'。
* lwa_bapi_acctgl-S_ORD_ITEM ='000010'。
* lwa_bapi_acctgl-DOC_TYPE ='DZ'。
* lwa_bapi_acctgl-BUS_AREA ='1400'。
* lwa_bapi_acct ='O11151'。
*附加lwa_bapi_acctgl T O lt_bapi_acctgl。


lwa_bapi_acctgl-itemno_acc ='0000000020'。
lwa_bapi_acctgl-gl_account ='0000112315'。 -datum。
lwa_bapi_acctgl-item_text ='ITEM TEXT BAPI'。
* lwa_bapi_acctgl-CUSTOMER ='0000070033'。
lwa_bapi_acctgl-DOC_TYPE ='DZ'。
lwa_bapi_acctgl-1400。
lwa_bapi_acctgl-PROFIT_CTR ='O11151'。
* lwa_bapi_acctgl-SALES_ORD ='1140000347'。
附加lwa_bapi_acctgl至lt_bapi_acctgl。

*为客户填写帐户应收帐款 '0000000010'。
lwa_bapi_acctrcv-customer ='0000070033'。
lwa_bapi_acctrcv-item_text ='ITEM TEXT BAPI'。
lwa_bapi_acctrcv-sp_gl_ind ='A'。
lwa_bapi_acctrcv-。
lwa_bapi_acctrcv-COMP_CODE ='9000'。
lwa_bapi_acctrcv-TAX_CODE ='00'。
* lwa_bapi_acctrcv-RES_DOC ='1140000347'。
*清除lwa_bapi_acctrcv。
* lwa_bapi_item 0000000020'。
* * lwa_bapi_acctrcv-customer ='0000070033'。
* lwa_bapi_acctrcv-item_text ='ITEM TEXT BAPI'。
* lwa_bapi_acctrcv-sp_gl_ind ='A'。
* lwa_bapi_acctrcv-pymt_cur_ * lwa_bapi_acctrcv-COMP_CODE ='9000'。
* lwa_bapi_acctrcv-TAX_CODE ='00'。



APPEND lwa_bapi_acctrcv至lt_bapi_acctrcv。

*填充量
清除lwa_curra的金额
lwa_currencyamount-itemno_acc ='0000000010'。 "'0000900000'。
lwa_currencyamount-currency ='INR'。
lwa_currencyamount-amt_doccur ='-10000.00'。
APPEND lwa_currencyamount至lt_currencyamount。



CLWA lwa_currencyamount。
> lwa_currencyamount-itemno_acc ='0000000020'。"'0000900000'。
lwa_currencyamount-currency ='INR'。
lwa_currencyamount-amt_doccur ='10000.00'。
追加lwa_currencyamount至lt_currencyamount。


******************************************税收计算
金额=10000。
*数据:tax_item1类型i。
描述表lt_currencyamount LINES item_no。
描述表lt_bapi_acctgl LINES tax_item。
描述表lt_bapi_acctrcv LINES tax_item1 1.
tax_item1。 TYPE Bukrs,
TAX_CODE TYPE mwskz,
I_CURRENCY_KEY TYPE WAERS,
I_INVOICE_AMOUNT TYPE DMBTR。
i_companycode = 9000.
TAX_CODE ='00'。
I_CURRENCY_KEY ='INR'。< br> I_INVOICE_AMOUNT =10000。
描述表lt_currencyamount LINES item_no。
致电 功能'CALCULATE_TAX_FROM_GROSSAMOUNT'
导出
i_bukrs = i_companycode
i_mwskz = TAX_CODE
* I_TXJCD =''
i_waers = I_CURRENCY_KEY

i_wrbtr = I_INVO e_fwnav = lv_f1
e_fwnvv = lv_f2
e_fwste = lv_f3
e_fwast = lv_f4
表格
t_mwdat = t_mwdat。
如果sy-subrc <> 0.
* MESS -MSGID类型SY-MSGTY编号SY-MSGNO
*与SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4。
ENDIF。

在t_mwdat到wa_mwdat的循环不是最初的。
tax_item = tax_item +1。
wa_accounttax-itemno_acc = tax_item。
wa_accounttax-cond_key = wa_mwdat-kschl。
wa_accounttax-acct_key = wa_mwdat-ktosl = wa_account_acc = tax_item 。
wa_accounttax-taxjurcode_deep = wa_mwdat-txjcd_deep。 '00'。

附加wa_accounttax TO lt _accounttax。
CLEAR:wa_accounttax。

lwa_currencyamount-itemno_acc = tax_item。
lwa_currencyamount-curr_type ='00'。
lwa_currencyamount-currency ='INR'。
lwa_currencyamount-amt_doccur wa_mwdat-wmwst。" wa_gldata-invoice_amount *(-1)。
lwa_currencyamount-amt_base = wa_mwdat-kawrt。" wa_gldata-invoice_amount。
APPEND lwa_currencyamount TO <_>货币金额。

wa_extension1-field1 ='1'。
wa_extension1-field2 ='VBEL2'。
wa_extension1-field3 ='4329812323'。
将wa_extension1添加到lt_extension1。
*清除:p_base_amount,wa_extension1。

数据:ls_zzz类型 标头行的标准访问表,
i_ext2类型标头行的bapiparex标准表。
*清除i_ext2。
*
i_ext2-structure ='ACCIT'。
*
ls_zzz-posnr = 1.
**
** ls_zzz-awref_reb ='123654'。
**
** ls_zzz-aworg_reb ='654654'。
**
** ls_zzz-aubel ='0000001364'。 " KDAUF
*
ls_zzz-kdauf ='1140000344'。" KDAUF
*
将ls_zzz移至i_ext2-valuepart1。
*
附录i_ext2。
**** ****************************************************** ******************
呼叫功能'BAPI_ACC_DOCUMENT_POST'
导出
documentheader = lwa_bapi_docheader
表格
accountgl = lt_bapi_acctgl
accountreceivable = lt_bapi_acctrcv
货币金额= lt_currencyamount
* ACCOUNTTAX = lt_accounttax
* EXTENSION1 = lt_extension1
EXTENSION2 = i_ext2
return = lt_return。

呼叫功能'BAPI_TRANSACTION_
WAIT ='X'。

此致

Om prakash

一周热门 更多>