生产日报表
来源:互联网 发布:淘宝店铺备份在哪里 编辑:程序博客网 时间:2024/04/26 21:45
*&---------------------------------------------------------------------*
*&
Form ZFRM_GOODS_RECEIPT_DATA
*&---------------------------------------------------------------------*
* text
*----------------------------------------------------------------------*
* --> p1 text
* <-- p2 text
*----------------------------------------------------------------------*
FORM zfrm_goods_receipt_data .
"取出查询月期间带销售订单号码有货物移动的生产订单
SELECT * INTO CORRESPONDING FIELDS OF TABLElt_aufm
FROMaufm
WHERE matnrIN s_matnr AND werks EQ s_werks
AND budat >= frist_day AND budat <=last_day
AND ( bwart EQ '101' OR bwart EQ '102' )
AND kdauf NE '' AND kdpos NE ''.
CLEAR lt_aufm.
"删除重复的生产订单号码
LOOP AT lt_aufm.
COLLECTlt_aufm INTO lf_aufm.
ENDLOOP.
ENDFORM. " ZFRM_GOODS_RECEIPT_DATA
*&---------------------------------------------------------------------*
*& Form ZFRM_SALES_ORDER_DATA
*&---------------------------------------------------------------------*
* text
*----------------------------------------------------------------------*
* --> p1 text
* <-- p2 text
*----------------------------------------------------------------------*
FORM zfrm_sales_order_data .
"与销售订单行项目对比那些生产订单属于成品
CLEAR lf_aufm.
LOOP AT lf_aufm.
CLEARlt_matnr.
SELECTSINGLE matnr INTO lt_matnr
FROM vbap
WHERE vbeln EQ lf_aufm-kdauf
AND posnr EQ lf_aufm-kdpos
AND matnr EQ lf_aufm-matnr.
IF sy-subrc= 0.
lt_afpo-matnr = lf_aufm-matnr.
lt_afpo-werks = lf_aufm-werks.
lt_afpo-aufnr = lf_aufm-aufnr.
lt_afpo-kdauf = lf_aufm-kdauf.
lt_afpo-kdpos = lf_aufm-kdpos.
APPEND lt_afpo.
ENDIF.
ENDLOOP.
"删除重复的生产订单号码
CLEAR lt_afpo.
LOOP AT lt_afpo.
COLLECTlt_afpo INTO lm_afpo.
ENDLOOP.
"LM_AFPO数据交换给lt_vbap表
CLEAR lm_afpo.
LOOP AT lm_afpo.
lt_vbap-matnr = lm_afpo-matnr.
lt_vbap-werks = lm_afpo-werks.
lt_vbap-kdauf = lm_afpo-kdauf.
lt_vbap-kdpos = lm_afpo-kdpos.
lt_vbap-kunnr = ''.
lt_vbap-sortl = ''.
lt_vbap-edatu = ''.
lt_vbap-kwmeng = ''.
lt_vbap-menge = ''.
lt_vbap-mng02 = ''.
APPENDlt_vbap.
ENDLOOP.
"删除销售订单号码+行项目号重复的数据
CLEAR lt_vbap.
LOOP AT lt_vbap.
COLLECTlt_vbap INTO lm_vbap.
ENDLOOP.
"取出销售订单的客户代码、交货日期、订单数量
CLEAR lm_vbap.
LOOP AT lm_vbap.
SELECTSINGLE kunnr INTO lm_vbap-kunnr
FROM vbpa
WHERE vbeln EQ lm_vbap-kdauf