SD通过BAPI创建交货单的问题(不允许业务对象 BUS2032 )

在使用BAPI_SALESORDER_CREATEFROMDAT2创建交货单时遇到错误"不允许业务对象 BUS2032 和销售凭证类别 L 的组合"。解决方案是改用SD_SALESDOCUMENT_CREATE函数,并进行参数调整。调整后问题得到解决。

   在通过BAPI创建交货单时,报“不允许业务对象 BUS2032 和销售凭证类别 L 的组合”错误。在查度娘后,提示需要重新引用BAPI。经过测试方案通过,但需要作些参数修改。特总结如下:

原来的用:'BAPI_SALESORDER_CREATEFROMDAT2'

       CALL FUNCTION 'BAPI_SALESORDER_CREATEFROMDAT2'
    EXPORTING
    order_header_in      = it_header2
*         ORDER_HEADER_INX     = it_headerX
    IMPORTING
    salesdocument        = docno2
    TABLES
    

### 关于使用 BAPI 在 SAP 中创建交货单的信息 在 SAP 系统中,`BAPI_DELIVERY_CREATEFROMSALESORDER` 是用于基于销售订单创建交货单的主要 BAPI 函数模块。以下是该函数的一些关键点以及示例代码: #### 1. **主要输入参数** - `SALESDOCUMENT`: 销售订单号。 - `ITEMINCLUSION`: 定义哪些项目应被包含到交货单中的结构体集合。 #### 2. **返回值** - `DELIVERNUMBER`: 创建交货单单号。 - `RETURN`: 返回的消息列表,其中可能包括错误或警告消息。 #### 3. **ABAP 示例代码** 以下是一个简单的 ABAP 示例代码,展示如何使用 `BAPI_DELIVERY_CREATEFROMSALESORDER` 来创建交货单: ```abap DATA: lt_item_inclusion TYPE TABLE OF bapi_vbelv_e, ls_item_inclusion LIKE LINE OF lt_item_inclusion, lv_delivery_number TYPE vbeln. FIELD-SYMBOLS: <fs_return> TYPE bapiret2. " 设置要包含的销售订单项 ls_item_inclusion-itemnumber = '000010'. " 假设这是销售订单的第一项 APPEND ls_item_inclusion TO lt_item_inclusion. " 调用 BAPI CALL FUNCTION 'BAPI_DELIVERY_CREATEFROMSALESORDER' EXPORTING salesdocument = '1234567890' " 替换为实际的销售订单编号 IMPORTING deliverynumber = lv_delivery_number TABLES iteminclusion = lt_item_inclusion EXCEPTIONS document_not_found = 1 creation_failed = 2 OTHERS = 3. IF sy-subrc <> 0. WRITE: / 'Error creating delivery'. ELSE. WRITE: / 'Delivery created successfully with number:', lv_delivery_number. ENDIF. " 处理返回消息 READ TABLE et_return ASSIGNING <fs_return> WITH KEY type = 'E'. IF sy-subrc = 0. WRITE: / 'Error message:', <fs_return>-message. ENDIF. ``` 此代码片段展示了如何设置必要的输入参数并调用 BAPI 函数来创建交货单[^6]。 #### 4. **注意事项** - 如果某些特定条件未满足,则可能会触发异常。例如,如果指定的销售订单存在,则会抛出 `document_not_found` 异常。 - 需要在事务码 SE37 或者通过程序调用来验证具体的实现细节依赖关系。 --- ###
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值