wip报表.docx

上传人:b****5 文档编号:11570059 上传时间:2023-03-19 格式:DOCX 页数:28 大小:29.23KB
下载 相关 举报
wip报表.docx_第1页
第1页 / 共28页
wip报表.docx_第2页
第2页 / 共28页
wip报表.docx_第3页
第3页 / 共28页
wip报表.docx_第4页
第4页 / 共28页
wip报表.docx_第5页
第5页 / 共28页
点击查看更多>>
下载资源
资源描述

wip报表.docx

《wip报表.docx》由会员分享,可在线阅读,更多相关《wip报表.docx(28页珍藏版)》请在冰豆网上搜索。

wip报表.docx

wip报表

*&---------------------------------------------------------------------*

*& Report ZPP007

*&---------------------------------------------------------------------*

*& Program ID  :

ZPP008

*& T-Code          :

ZP012

*& Created By      :

Lee

*& Date            :

2018.2.28

*& Desc.           :

WIP报表(不含金额)

*&---------------------------------------------------------------------*

REPORT zpp008.

TABLES:

 afko,afpo,resb,jest,pordarch,tj02t,mara,mkpf,mseg,mbew.

DATA:

 BEGIN OF itab OCCURS 0,

        aufnr  LIKE afko-aufnr, "Order Number

        model  LIKE afpo-matnr, "Material for Order

        gmein  LIKE afpo-meins,

        psmng  LIKE resb-enmng, "Order quantity

        wemng  LIKE resb-enmng, "Qty of goods received

        posnr  LIKE resb-posnr,

        matnr  LIKE resb-matnr, "Material Number

        maktx  LIKE makt-maktx,

        meins  LIKE resb-meins, "Base Unit of Measure

        usage  TYPE p DECIMALS 6, "Usage

        bdmng  LIKE resb-bdmng, "Requirement Quantity

        enmng  LIKE resb-enmng, "Quantity withdrawn

        dmbtr  LIKE mseg-dmbtr, "MSEG LOCAL AMOUNT

        openq  LIKE resb-enmng, "Open qty

        erfmg  LIKE resb-enmng, "(F/G燛ntry燪ty)

        wipqty LIKE resb-enmng, "WIP Qty

        wipamt LIKE mseg-dmbtr, "WIP LOCAL AMOUNT

        sepqty LIKE resb-enmng, "特别发料   总发料数量

        wip2   LIKE resb-enmng, "WIPQTY不含特别发料的

        "WIPAM2 LIKE MSEG-DMBTR, "WIP LOCAL AMOUNT 2

      END OF itab.

TYPE-POOLS:

 slis.

DATA:

 gt_fieldcat TYPE slis_t_fieldcat_alv,

      gs_fieldcat TYPE slis_fieldcat_alv,

      xevents     TYPE slis_t_event,

      ls_event    TYPE slis_alv_event,

      gt_event    TYPE slis_t_event,

      gs_event    TYPE slis_alv_event,

      alv_layout  TYPE slis_layout_alv,

      slis_ev_top TYPE slis_formname VALUE 'TOP-OF-PAGE',

      gv_colpos   TYPE int2.

DATA:

 v_repid TYPE sy-repid.

DATA:

 gs_tabname_header TYPE slis_tabname.

SELECTION-SCREEN BEGIN OF BLOCK pd WITH FRAME TITLE TEXT-123.

PARAMETERS:

 plant TYPE afpo-dwerk OBLIGATORY DEFAULT '1001'.    "工厂

SELECT-OPTIONS:

    p_grund   FOR mseg-grund, "移动原因

    prodno    FOR afpo-aufnr,   "订单

    itemcode  FOR afpo-matnr,   "物料

    startdt   FOR afko-gstrp.   "基本开始日期

PARAMETERS:

  cutoff  TYPE sy-datum DEFAULT sy-datum,

  wip_tol TYPE p DECIMALS 3 DEFAULT 1.

SELECTION-SCREEN END OF BLOCK pd.

*PARAMETERS:

 p_all AS CHECKBOX.

START-OF-SELECTION.

  PERFORM get_order_data.

*  IF p_all EQ 'X'.

*    PERFORM get_all_data.

*  ELSE.

*    PERFORM get_order_data.

*  ENDIF.

  gs_tabname_header = 'ITAB'.

  v_repid = sy-repid.

*  PERFORM build_fieldcat.

  PERFORM alv_display.

*&---------------------------------------------------------------------*

*&      Form  ALV_DISPLAY

*&---------------------------------------------------------------------*

*       text

*----------------------------------------------------------------------*

FORM alv_display.

* Configure layout of screen

  alv_layout-colwidth_optimize = 'X'.

  alv_layout-zebra             = ''.

  alv_layout-no_min_linesize   = 'X'.

*fieldcat

  PERFORM f_add_fieldcat USING:

  'AUFNR' '' '' '' '生产单号' '' 'X' '' '' '' '' '' '',

  'MODEL' '' '' '' '产品编号' '' '' '' '' '' '' '' '',

  'GMEIN' '' '' '' '单位' '' '' '' '' '' '' '' '',

  'PSMNG' '' '' '' '工单数量' '' '' '' '' '' '' '' '',

  'WEMNG' '' '' '' '已交货数' '' '' '' '' '' '' '' '',

  'POSNR' '' '' '' '项目编号' '' '' '' '' '' '' '' '',

  'MATNR' '' '' '' '物料' '' '' '' '' '' '' '' '',

  'MAKTX' '' '' '' '物料描述' '' '' '' '' '' '' '' '',

  'MEINS' '' '' '' '单位' '' '' '' '' '' '' '' '',

  'USAGE' '' '' '' 'BOM用量' '' '' '' '' '' '' '' '',

  'BDMNG' '' '' '' '工单数量' '' '' '' '' '' '' '' '',

  'ENMNG' '' '' '' '领料数量' '' '' '' '' '' '' '' '',

*  'DMBTR' '' '' '' '领料金额' '' '' '' '' '' '' '' '',

  'OPENQ' '' '' '' '未领料数量' '' '' '' '' '' '' '' '',

  'ERFMG' '' '' '' '已交货数量' '' '' '' '' '' '' '' '',

  'WIPQTY' '' '' '' 'WIP数量' '' '' '' '' '' '' '' ''.

*  'WIPAMT' '' '' '' 'WIP金额' '' '' '' '' '' '' '' ''.

*  'SEPQTY' '' '' '' '特别发料(B)' '' '' '' '' '' '' '' '',

*  'WIP2' '' '' '' 'WIP(C)=A-B' '' '' '' '' '' '' '' ''.

  SORT itab ASCENDING BY aufnr posnr.

  CALL FUNCTION 'REUSE_ALV_GRID_DISPLAY'

    EXPORTING

*     I_INTERFACE_CHECK        = ' '

      i_bypassing_buffer       = 'X'

      i_buffer_active          = ' '

      i_callback_program       = v_repid

      i_callback_top_of_page   = 'TOP-OF-HEAD'

      i_callback_pf_status_set = 'SET_PF_STATUS'

*     I_CALLBACK_USER_COMMAND  = 'USERCOMMAND'

*     I_STRUCTURE_NAME         =

      is_layout                = alv_layout

      it_fieldcat              = gt_fieldcat

      i_save                   = 'A'

      it_events                = gt_event[]

    TABLES

      t_outtab                 = itab

    EXCEPTIONS

      program_error            = 1

      OTHERS                   = 2.

  IF sy-subrc <> 0.

    MESSAGE ID sy-msgid TYPE sy-msgty NUMBER sy-msgno

            WITH sy-msgv1 sy-msgv2 sy-msgv3 sy-msgv4.

  ENDIF.

ENDFORM.                    "ALV_DISPLAY

FORM f_add_fieldcat USING   fieldname

                            ref_tabname

                            qfieldname

                            datatype

                            seitext_l

                            outputlen

                            key

                            do_sum

                            no_out

                            edit

                            checkbox

                            decimals_out

                            lzero.

  ADD 1 TO gv_colpos.

  gs_fieldcat-col_pos = gv_colpos.      "字段显示的列位置

  gs_fieldcat-fieldname = fieldname.    "显示的字段

  gs_fieldcat-ref_tabname = ref_tabname."参考表来显示,字段格式等等

  gs_fieldcat-qfieldname = qfieldname.  "参考计量单位的字段名称

  gs_fieldcat-datatype = datatype.      "字段的类型

  gs_fieldcat-seltext_l = seitext_l.    " 描述

  gs_fieldcat-outputlen = outputlen.    "设置字段的长度

  gs_fieldcat-key = key.                "关键字

  gs_fieldcat-do_sum = do_sum.          "汇总列表

  gs_fieldcat-no_out = no_out.          "输出列

  gs_fieldcat-edit = edit.              "可编辑

  gs_fieldcat-checkbox = checkbox.      "checkbox

  gs_fieldcat-decimals_out = decimals_out.              "小数位

  gs_fieldcat-lzero = lzero.            "输出前导零(仅对NUMC)

  APPEND gs_fieldcat TO gt_fieldcat.

  CLEAR gs_fieldcat.

ENDFORM.

*&---------------------------------------------------------------------*

*&      Form  set_pf_status

*&---------------------------------------------------------------------*

*       text

*----------------------------------------------------------------------*

*      -->RT_EXTAB   text

*----------------------------------------------------------------------*

FORM set_pf_status USING rt_extab TYPE slis_t_extab.

  SET PF-STATUS 'STANDARD'.

ENDFORM. "Set_pf_status

*&---------------------------------------------------------------------*

*&      Form  GENERATE_ALV_HEADER

*&---------------------------------------------------------------------*

*       text

*----------------------------------------------------------------------*

FORM generate_alv_header .

  REFRESH:

 gt_event.

  CALL FUNCTION 'REUSE_ALV_EVENTS_GET'

    EXPORTING

      i_list_type     = 0

    IMPORTING

      et_events       = gt_event

    EXCEPTIONS

      list_type_wrong = 1.

  CLEAR gs_event.

  CLEAR gs_event.

  MOVE 'PF_STATUS_SET' TO gs_event-name.

  MOVE 'WHOLE_TOOLBAR' TO  gs_event-form.

  APPEND gs_event      TO gt_event.

  CLEAR gs_event.

  MOVE 'USER_COMMAND'  TO gs_event-name.

  MOVE 'USER_COMMAND'  TO gs_event-form.

  APPEND gs_event      TO gt_event.

ENDFORM.                    " GENERATE_ALV_HEADER

*&---------------------------------------------------------------------*

*&      Form  top-of-head

*&---------------------------------------------------------------------*

*       text

*----------------------------------------------------------------------*

FORM top-of-head.

  DATA:

 t_header  TYPE slis_t_listheader,

        wa_header TYPE slis_listheader.

  DATA v_value1(18) TYPE c.

  DATA v_value2(18) TYPE c.

  DATA v_info(60) TYPE c.

*-----------------------------------------------------------

  IF plant IS NOT INITIAL.

    v_value1 = plant.

    v_info = v_value1.

    CLEAR wa_header.

    wa_header-typ = 'S'.

    IF sy-langu = '1'.

      wa_header-key = '工厂            '.

    ELSE.

      wa_header-key = 'Plant           '.

    ENDIF.

    wa_header-info = v_info.

    APPEND wa_header TO t_header.

  ENDIF.

*-----------------------------------------------------------

  IF prodno IS NOT INITIAL.

    v_value1 = prodno-low.

    v_value2 = prodno-high.

    CONCATENATE v_value1 ' To ' v_value2 INTO v_info SEPARATED BY space.

    CLEAR wa_header.

    wa_header-typ = 'S'.

    IF sy-langu = '1'.

      wa_header-key = '工单编号        '.

    ELSE.

      wa_header-key = 'Production Order'.

    ENDIF.

    wa_header-info = v_info.

    APPEND wa_header TO t_header.

  ENDIF.

*-----------------------------------------------------------

  IF itemcode IS NOT INITIAL.

    v_value1 = itemcode-low.

    v_value2 = itemcode-high.

    CONCATENATE v_value1 ' To ' v_value2 INTO v_info SEPARATED BY space.

    CLEAR wa_header.

    wa_header-typ = 'S'.

    IF sy-langu = '1'.

      wa_header-key = '产品编号        '.

    ELSE.

      wa_header-key = 'Model Number    '.

    ENDIF.

    wa_header-info = v_info.

    APPEND wa_header TO t_header.

  ENDIF.

*-----------------------------------------------------------

  IF startdt IS NOT INITIAL.

    v_value1 = startdt-low.

    v_value2 = startdt-high.

    CONCATENATE v_value1 ' To ' v_value2 INTO v_info SEPARATED BY space.

    CLEAR wa_header.

    wa_header-typ = 'S'.

    IF sy-langu = '1'.

      wa_header-key = '工单开始日期    '.

    ELSE.

      wa_header-key = 'Order Start Date'.

    ENDIF.

    wa_header-info = v_info.

    APPEND wa_header TO t_header.

  ENDIF.

*---

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 高等教育 > 医学

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1