SD_SALESDOCUMENT_CREATE如何使用
时间: 2023-08-02 22:06:20 浏览: 82
SD_SALESDOCUMENT_CREATE是一个SAP函数模块,用于创建销售订单(Sales Order)。使用该函数模块需要提供一些必要的输入参数,如下:
1. IV_DOC_TYPE:文档类型,例如OR表示销售订单。
2. IV_SALES_ORG:销售组织
3. IV_DISTR_CHAN:分销渠道
4. IV_DIVISION:销售部门
5. IT_HEADER_IN:销售订单头部数据
6. IT_ITEM_IN:销售订单行项目数据
7. IT_SCHEDULES_IN:销售订单交货计划数据
8. IT_PARTNERS:合作伙伴数据
除了以上必需的输入参数外,还有一些可选的输入参数,如IT_PRICING等。
以下是一个简单的使用示例:
```
DATA: lv_doc_type TYPE char2 VALUE 'OR',
lv_sales_org TYPE vkorg_d VALUE '1000',
lv_distr_chan TYPE vtweg_d VALUE '10',
lv_division TYPE spart_d VALUE '00',
lt_header_in TYPE TABLE OF bapisdhd1,
lt_item_in TYPE TABLE OF bapisditm,
lt_schedules_in TYPE TABLE OF bapischdl,
lt_partners TYPE TABLE OF bapiparnr,
ls_header_in LIKE LINE OF lt_header_in,
ls_item_in LIKE LINE OF lt_item_in,
ls_schedules_in LIKE LINE OF lt_schedules_in,
ls_partners LIKE LINE OF lt_partners,
lt_return TYPE TABLE OF bapiret2,
ls_return LIKE LINE OF lt_return.
ls_header_in-doc_type = lv_doc_type.
ls_header_in-sales_org = lv_sales_org.
ls_header_in-distr_chan = lv_distr_chan.
ls_header_in-division = lv_division.
APPEND ls_header_in TO lt_header_in.
ls_item_in-material = 'M-001'.
ls_item_in-plant = '1000'.
ls_item_in-target_qty = 10.
ls_item_in-net_value = 1000.
APPEND ls_item_in TO lt_item_in.
CALL FUNCTION 'SD_SALESDOCUMENT_CREATE'
EXPORTING
salesdocument = ''
testrun = ''
IMPORTING
sdheader = ''
sditem = ''
sdpartners = ''
TABLES
return = lt_return
headerin = lt_header_in
itemin = lt_item_in
schedulesin = lt_schedules_in
partners = lt_partners.
IF sy-subrc NE 0.
" 销售订单创建失败
ENDIF.
```
在以上示例中,我们创建了一个销售订单,包含一个销售订单头部和一个销售订单行项目。我们将销售订单头部和行项目数据存储在内部表中,并通过这些内部表作为输入参数调用SD_SALESDOCUMENT_CREATE函数模块来创建销售订单。如果创建成功,返回的SDHEADER和SDITEM参数将包含新创建的销售订单数据。如果创建失败,可以通过RETURN表格参数检查错误信息。