文章目录
1 Instruction
Cwms send data to sap and posting(The movemoment type is 643). And interface is
webservice.
2 code
FUNCTION ZCWMS_SRV_0009_IN.
*"----------------------------------------------------------------------
*"*"Local interface:
*" IMPORTING
*" VALUE(ITB_CWMS_IN) TYPE ZTA_CWMS009 OPTIONAL
*" EXPORTING
*" VALUE(MBLNR) TYPE MBLNR
*" VALUE(ZEBELN) TYPE ZEBELN
*" VALUE(REID) TYPE CHAR1
*" VALUE(REMSG) TYPE CHAR200
*" VALUE(VBELN) TYPE VBELN
*"----------------------------------------------------------------------
DEFINE add_pre_zero.
call function 'CONVERSION_EXIT_ALPHA_INPUT'
EXPORTING
input = &1
IMPORTING
output = &1.
END-OF-DEFINITION.
DEFINE delete_pre_zero.
CALL FUNCTION 'CONVERSION_EXIT_ALPHA_OUTPUT'
EXPORTING
INPUT = &1
IMPORTING
OUTPUT = &1.
END-OF-DEFINITION.
*&---------------------------------------------------------------------*
*& Form FRM_GET_KYL
*&---------------------------------------------------------------------*
* text
*----------------------------------------------------------------------*
* -->P_WERKS text
* -->P_LGORT text
* -->P_MATNR text
* -->P_MENGE text
*----------------------------------------------------------------------*
" FRM_GET_KYL
" 采购订单创建交货单BAPI使用的参数定义
DATA:
L_DELIVERY TYPE VBELN_VL,
L_NUM_DELIVERIES TYPE VBNUM,
LT_STOCK_TRANS_ITEMS TYPE STANDARD TABLE OF BAPIDLVREFTOSTO,
LT_DELIVERIES TYPE STANDARD TABLE OF BAPISHPDELIVNUMB,
LT_CREATED_ITEMS TYPE STANDARD TABLE OF BAPIDLVITEMCREATED,
LT_RETURN TYPE STANDARD TABLE OF BAPIRET2,
WA_RETURN LIKE BAPIRET2,
LT_PROT TYPE STANDARD TABLE OF PROTT,
LT_BAPIOBDLVITEMCHG LIKE STANDARD TABLE OF BAPIOBDLVITEMCHG WITH HEADER LINE,
LT_BAPIOBDLVITEMCHG_C LIKE STANDARD TABLE OF BAPIOBDLVITEMCTRLCHG WITH HEADER LINE,
LT_ITEM_DATA_SPL TYPE STANDARD TABLE OF /SPE/BAPIOBDLVITEMCHG.
DATA:
WA_HEADER_DATA TYPE BAPIOBDLVHDRCHG,
WA_HEADER_CONTROL TYPE BAPIOBDLVHDRCTRLCHG,
WA_ITEM_DATA_SPL TYPE /SPE/BAPIOBDLVITEMCHG,
WA_STOCK_TRANS_ITEMS TYPE BAPIDLVREFTOSTO,
WA_CREATED_ITEMS TYPE BAPIDLVITEMCREATED,
WA_DELIVERIES TYPE BAPISHPDELIVNUMB,
WA_VBKOK TYPE VBKOK,
L_EF_ERROR_ANY_0 TYPE XFELD.
"MIGO收货BAPI参数定义
DATA: GT_GOODSMVT_HEADER LIKE BAPI2017_GM_HEAD_01,
GT_GOODSMVT_ITEM LIKE BAPI2017_GM_ITEM_CREATE OCCURS 0 WITH HEADER LINE,
GT_RETURN LIKE BAPIRET2 OCCURS 0 WITH HEADER LINE.
DATA: GT_GOODSMVT_HEADRET LIKE BAPI2017_GM_HEAD_RET,
GOODSMVT_CODE_TMP TYPE BAPI2017_GM_CODE.
DATA: L_RETURN LIKE BAPIRET2.
DATA:lv_meins like mara-meins,"基本计量单位
lv_usnam LIKE MKPF-USNAM,
lv_MBLNR LIKE MKPF-MBLNR,"物料凭证
lv_MJAHR like MKPF-MJAHR, "会计年度
lv_VBELN like LIPS-VBELN,
lv_POSNR like LIPS-POSNR,
lv_kyl like ZTCWMS016-MENGE, "可用量
lv_MENGE like ZTCWMS016-MENGE,"总数量
lv_LFIMG like lips-LFIMG,"交货单总数
lv_dn like lips-VBELN,"交货号
p_guid LIKE ZTCWMS016-guid,
GT_ZTCWMS016 LIKE TABLE OF ZTCWMS016 , " 日志内表
GW_ZTCWMS016 LIKE LINE OF GT_ZTCWMS016,
GT_ZTCWMS018 LIKE TABLE OF ZTCWMS016 WITH HEADER LINE , " 日志内表
GW_ZTCWMS018 LIKE LINE OF GT_ZTCWMS018.
DATA: GT_ZTCWMS017 LIKE TABLE OF ZTCWMS017 WITH HEADER LINE, " 原始数据表
GW_ZTCWMS017 LIKE LINE OF GT_ZTCWMS017.
DATA: BEGIN OF gw_ekpo, "采购凭证项目内表
EBELN LIKE ekpo-EBELN,
EBELP LIKE ekpo-EBELP,
MATNR LIKE ekpo-MATNR,
MENGE like ekpo-MENGE, "订单数量
MENGE1 like ekpo-MENGE, "交货单数量
MENGE2 like ekpo-MENGE, "还未交货数量
END OF gw_ekpo.
DATA: gt_ekpo LIKE STANDARD TABLE OF gw_ekpo with HEADER LINE.
DATA: wa_cwms_in LIKE ZST_CWMS009 .
DATA: gv_uname LIKE sy-uname.
DATA: lv_sum type ekpo-menge,
lv_str type string,
lv_str1 type string.
DATA: BEGIN OF gw_ekpo1, " 准备收货采购订单行项目表
EBELN LIKE ekpo-EBELN,
EBELP LIKE ekpo-EBELP,
MENGE like ekpo-MENGE,
matnr like ekpo-matnr,
owerks like zst_cwms009-owerks,
iwerks like zst_cwms009-iwerks,
olgort like zst_cwms009-olgort,
ilgort like zst_cwms009-ilgort,
END OF gw_ekpo1.
DATA: gt_ekpo1 LIKE STANDARD TABLE OF gw_ekpo1 WITH HEADER LINE ,
gt_ekpo2 LIKE STANDARD TABLE OF gw_ekpo1 WITH HEADER LINE .
DATA: BEGIN OF gw_sum, "
iwerks like ZTCWMS017-iwerks, "工

本文详细阐述了在SAP系统中,如何通过Web服务接口接收外部数据,进行采购订单的收货、创建交货单、更新库位以及执行交货过账的过程。涉及数据校验、库存可用量检查、BAPI调用等多个关键步骤,并对可能出现的问题进行了处理和记录。
最低0.47元/天 解锁文章
2295

被折叠的 条评论
为什么被折叠?



