'BAPI_QUOTATION_CREATEFROMDATA2'导入数据时,订单数量为0
2009-12-07 17:33
357 查看
各位,我用下面的程序导入报价(VA21),数据时已经导入了。但是报价的数量为0.不知是哪里没有传递参数?
还是缺少什么条件??
*&---------------------------------------------------------------------*
*& Report ZSD_TEST
*&
*&---------------------------------------------------------------------*
*&
*&
*&---------------------------------------------------------------------*
REPORT zsd_test.
DATA:
header LIKE bapisdhd1,
headerx LIKE bapisdhd1x,
g_vbeln LIKE vbak-vbeln,
it_retmsg LIKE TABLE OF bapiret2 WITH HEADER LINE,
it_item LIKE TABLE OF bapisditm WITH HEADER LINE,
it_itemx LIKE TABLE OF bapisditmx WITH HEADER LINE,
it_partners LIKE TABLE OF bapiparnr WITH HEADER LINE,
it_sch LIKE TABLE OF bapischdl WITH HEADER LINE,
it_condition LIKE TABLE OF bapicond WITH HEADER LINE.
headerx-updateflag = 'I'.
headerx-doc_type = 'X'.
headerx-sales_org = 'X'.
headerx-distr_chan = 'X'.
headerx-division = 'X'.
headerx-req_date_h = 'X'.
headerx-qt_valid_f = 'X'.
headerx-qt_valid_t = 'X'.
header-doc_type = 'ZQTC'.
header-sales_org = '1060'.
header-distr_chan = 'ET'.
header-division = '60'.
*header-war_date = sy-datum."销售里担保.
header-req_date_h = sy-datum + 15."请求交货日期
header-qt_valid_f = sy-datum. "报价/询价有效从
header-qt_valid_t = '99991231'. "投标/报价截止的日期(有效日)
*header-ref_1 = '货到付款'.
*header-telephone = '110'.
*header-pmnttrms = 'Y000'.
*header-currency = 'CNY'.
*header-price_date = sy-datum + 2.
it_partners-partn_role = 'AG'.
it_partners-partn_numb = '0000000086'."售达方
APPEND it_partners.
*& 初始化项目
it_itemx-updateflag = 'I'.
it_itemx-itm_number = 10.
it_itemx-material = 'X'.
it_itemx-plant = 'X'.
it_itemx-target_qty = 'X'.
it_itemx-target_qu = 'X'.
it_item-itm_number = '10'.
it_item-material = '12303700370000000D'.
it_item-plant = '1000'.
it_item-target_qty = '11'.
it_item-target_qu = 'PCS'.
*it_item-store_loc = 'R950'.
APPEND it_item.
*it_itemx-updateflag = 'I'.
*it_itemx-itm_number = 20.
*it_itemx-material = 'X'.
*it_itemx-plant = 'X'.
*it_itemx-target_qty = 'X'.
*it_itemx-target_qu = 'X'.
*
*it_item-itm_number = '20'.
*it_item-material = '123070204600000010'.
*it_item-plant = '1000'.
*it_item-target_qty = '21'.
**it_item-target_qu = 'PCS'.
**it_item-store_loc = 'R950'.
*APPEND it_item.
**& 首日起,订单数量
*it_sch-itm_number = '000010'.
*it_sch-req_date = sy-datum.
*it_sch-dlv_date = sy-datum.
*it_sch-req_qty = '11'."数量
*APPEND it_sch.
*
*it_sch-itm_number = '000020'.
*it_sch-req_date = sy-datum.
*it_sch-dlv_date = sy-datum.
*it_sch-req_qty = '21'."数量
*APPEND it_sch.
*
**& 抬头的条件价格
*it_condition-currency = 'CNY'.
*it_condition-cond_type = 'ZP00'.
*it_condition-cond_value = '11'.
*APPEND it_condition.
*
**&项目的金额,一定要加上货币,否则会乘以10倍
*it_condition-itm_number = '000010'.
*it_condition-cond_type = 'ZP00'.
*it_condition-roundoffdi = '1.000'.
*it_condition-currency = 'CNY'.
*APPEND it_condition.
*
*it_condition-itm_number = '000020'.
*it_condition-cond_type = 'ZP00'.
*it_condition-roundoffdi = '22.000'.
*it_condition-currency = 'CNY'.
*APPEND it_condition.
CALL FUNCTION 'BAPI_QUOTATION_CREATEFROMDATA2'
EXPORTING
quotation_header_in = header
quotation_header_inx = headerx
IMPORTING
salesdocument = g_vbeln
TABLES
return = it_retmsg
quotation_items_in = it_item
quotation_items_inx = it_itemx
quotation_partners = it_partners
* quotation_schedules_in = it_sch
* quotation_conditions_in = it_condition
.
IF sy-subrc = 0.
READ TABLE it_retmsg WITH KEY type = 'E'.
IF sy-subrc <> 0.
CALL FUNCTION 'BAPI_TRANSACTION_COMMIT' .
WRITE: 'sale order document:',g_vbeln.
*取意向订单对应的状态对象编号
DATA:g_objnr LIKE vbak-objnr.
SELECT SINGLE objnr INTO g_objnr
FROM vbak
WHERE vbeln = g_vbeln.
* IF sy-subrc = 0.
*
* CALL FUNCTION 'STATUS_CHANGE_EXTERN'
* EXPORTING
* objnr = g_objnr
* user_status = 'E0004'.
* ENDIF.
CALL FUNCTION 'BAPI_TRANSACTION_COMMIT'
EXPORTING
wait = 'X'.
ENDIF.
ENDIF.
还是缺少什么条件??
*&---------------------------------------------------------------------*
*& Report ZSD_TEST
*&
*&---------------------------------------------------------------------*
*&
*&
*&---------------------------------------------------------------------*
REPORT zsd_test.
DATA:
header LIKE bapisdhd1,
headerx LIKE bapisdhd1x,
g_vbeln LIKE vbak-vbeln,
it_retmsg LIKE TABLE OF bapiret2 WITH HEADER LINE,
it_item LIKE TABLE OF bapisditm WITH HEADER LINE,
it_itemx LIKE TABLE OF bapisditmx WITH HEADER LINE,
it_partners LIKE TABLE OF bapiparnr WITH HEADER LINE,
it_sch LIKE TABLE OF bapischdl WITH HEADER LINE,
it_condition LIKE TABLE OF bapicond WITH HEADER LINE.
headerx-updateflag = 'I'.
headerx-doc_type = 'X'.
headerx-sales_org = 'X'.
headerx-distr_chan = 'X'.
headerx-division = 'X'.
headerx-req_date_h = 'X'.
headerx-qt_valid_f = 'X'.
headerx-qt_valid_t = 'X'.
header-doc_type = 'ZQTC'.
header-sales_org = '1060'.
header-distr_chan = 'ET'.
header-division = '60'.
*header-war_date = sy-datum."销售里担保.
header-req_date_h = sy-datum + 15."请求交货日期
header-qt_valid_f = sy-datum. "报价/询价有效从
header-qt_valid_t = '99991231'. "投标/报价截止的日期(有效日)
*header-ref_1 = '货到付款'.
*header-telephone = '110'.
*header-pmnttrms = 'Y000'.
*header-currency = 'CNY'.
*header-price_date = sy-datum + 2.
it_partners-partn_role = 'AG'.
it_partners-partn_numb = '0000000086'."售达方
APPEND it_partners.
*& 初始化项目
it_itemx-updateflag = 'I'.
it_itemx-itm_number = 10.
it_itemx-material = 'X'.
it_itemx-plant = 'X'.
it_itemx-target_qty = 'X'.
it_itemx-target_qu = 'X'.
it_item-itm_number = '10'.
it_item-material = '12303700370000000D'.
it_item-plant = '1000'.
it_item-target_qty = '11'.
it_item-target_qu = 'PCS'.
*it_item-store_loc = 'R950'.
APPEND it_item.
*it_itemx-updateflag = 'I'.
*it_itemx-itm_number = 20.
*it_itemx-material = 'X'.
*it_itemx-plant = 'X'.
*it_itemx-target_qty = 'X'.
*it_itemx-target_qu = 'X'.
*
*it_item-itm_number = '20'.
*it_item-material = '123070204600000010'.
*it_item-plant = '1000'.
*it_item-target_qty = '21'.
**it_item-target_qu = 'PCS'.
**it_item-store_loc = 'R950'.
*APPEND it_item.
**& 首日起,订单数量
*it_sch-itm_number = '000010'.
*it_sch-req_date = sy-datum.
*it_sch-dlv_date = sy-datum.
*it_sch-req_qty = '11'."数量
*APPEND it_sch.
*
*it_sch-itm_number = '000020'.
*it_sch-req_date = sy-datum.
*it_sch-dlv_date = sy-datum.
*it_sch-req_qty = '21'."数量
*APPEND it_sch.
*
**& 抬头的条件价格
*it_condition-currency = 'CNY'.
*it_condition-cond_type = 'ZP00'.
*it_condition-cond_value = '11'.
*APPEND it_condition.
*
**&项目的金额,一定要加上货币,否则会乘以10倍
*it_condition-itm_number = '000010'.
*it_condition-cond_type = 'ZP00'.
*it_condition-roundoffdi = '1.000'.
*it_condition-currency = 'CNY'.
*APPEND it_condition.
*
*it_condition-itm_number = '000020'.
*it_condition-cond_type = 'ZP00'.
*it_condition-roundoffdi = '22.000'.
*it_condition-currency = 'CNY'.
*APPEND it_condition.
CALL FUNCTION 'BAPI_QUOTATION_CREATEFROMDATA2'
EXPORTING
quotation_header_in = header
quotation_header_inx = headerx
IMPORTING
salesdocument = g_vbeln
TABLES
return = it_retmsg
quotation_items_in = it_item
quotation_items_inx = it_itemx
quotation_partners = it_partners
* quotation_schedules_in = it_sch
* quotation_conditions_in = it_condition
.
IF sy-subrc = 0.
READ TABLE it_retmsg WITH KEY type = 'E'.
IF sy-subrc <> 0.
CALL FUNCTION 'BAPI_TRANSACTION_COMMIT' .
WRITE: 'sale order document:',g_vbeln.
*取意向订单对应的状态对象编号
DATA:g_objnr LIKE vbak-objnr.
SELECT SINGLE objnr INTO g_objnr
FROM vbak
WHERE vbeln = g_vbeln.
* IF sy-subrc = 0.
*
* CALL FUNCTION 'STATUS_CHANGE_EXTERN'
* EXPORTING
* objnr = g_objnr
* user_status = 'E0004'.
* ENDIF.
CALL FUNCTION 'BAPI_TRANSACTION_COMMIT'
EXPORTING
wait = 'X'.
ENDIF.
ENDIF.
相关文章推荐
- 'BAPI_QUOTATION_CREATEFROMDATA2'导入数据时,订单数量为0.解决
- oracle 导入数据时对 & 和 ' 特殊字符处理
- MySQL Cluster导入数据表时报错:Got error 708 'No more attribute metadata records (increas
- Sql导入Excel数据提示:Ad Hoc Distributed Queries'STATEMENT'OpenRowset/OpenDatasource
- Sql server 2008 导入excel 数据,提示“The 'Microsoft.ACE.OLEDB.12.0' provider is not registered on the loca”
- .net导入Excel数据遇到问题(SQL Server 阻止了对组件 'Ad Hoc Distributed Queries' 的 STATEMENT 'OpenRowset/OpenDataso)
- BAPI 'BAPI_QUOTATION_CREATEFROMDATA2'
- Oracle数据导入导出imp/exp sp2-0734:未知的命令开头'imp 忽略了剩余行默认分类 解决办法
- MySql - 导入数据时 Table XXX doesn't exist 的解决
- Excel数据导入问题(给数据前面加半角单引号')
- hadoop 集群环境Sqoop 将数据导入mysql问题 many connection errors; unblock with 'mysqladmin flush-hosts'
- 解决MsSQLServer导入数据时遇到【“链接服务器 '(null)' 的 OLE DB 访问接口 'STREAM' 返回了对列 '[!BulkInsert].2SB553' 无效的数据。】
- ASP.NET 3.5's ListView and DataPager—Part3:用ListView控件排序数据
- C#导入Excel数据时出现“&#039;Sheet1$&#039;&amp;…
- Python _X __all__ 模拟 导入'私有'变量 及其注意点和实例
- iOS开发,导入c文件引发的 Unknown type name 'NSString' 问题
- excel数据导入sql server ,"文本被截断"错误
- oracle && mysql 导入导出数据总结
- 'BAPI_REQUIREMENTS_CREATE' --创建月需求计划(MD61)
- varchar 值 '1,220,52转换为数据类型为 int 的列时发生语法错误