sap alv单表查询

这是一个使用SAP ABAP编程的示例,演示了如何进行ALV单表查询。通过定义数据类型和表格,选择选项,以及调用ALV Grid显示查询结果。用户可以筛选物料、工厂和供应商信息,查询结果包含物料描述、工厂、有效日期等字段。
摘要由CSDN通过智能技术生成

REPORT  ZMMR1115.

TYPE-POOLSSLIS.

TABLES:MAKT,

       T001W.

DATAG_GRID TYPE LVC_S_GLAY,

      G_FIELDCAT TYPE SLIS_FIELDCAT_ALV,

      G_LAYOUT TYPE SLIS_LAYOUT_ALV,

      LG_FIELDCAT TYPE SLIS_T_FIELDCAT_ALV.

TYPES:BEGIN OF LT_INTABLE,

  MAKTX TYPE MAKT-MAKTX,

NAME1 TYPE T001W-NAME1.

TYPESEND OF LT_INTABLE.

TYPESBEGIN OF LT_MAKT,

  MATNR TYPE MAKT-MATNR,

  MAKTX TYPE MAKT-MAKTX.

TYPESEND OF LT_MAKT.

TYPESBEGIN OF LT_T001W,

WERKS TYPE T001W-WERKS,

NAME1 TYPE T001W-NAME1.

TYPESEND OF LT_T001W.

DATAGT_INTABLE TYPE STANDARD TABLE OF LT_INTABLE,

      GW_INTABLE TYPE LT_INTABLE,

      GT_MAKT TYPE STANDARD TABLE OF LT_MAKT,

      GW_MAKT TYPE LT_MAKT,

      GT_T001W TYPE STANDARD TABLE OF LT_T001W,

      GW_T001W TYPE LT_T001W.

SELECTION-SCREEN BEGIN OF BLOCK BLK1.

SELECT-OPTIONSS_MATNR FOR MAKT-MATNR,"物料

                S_WERKS FOR T001W-WERKS,"工厂

S_LIFNR FOR T001W-LIFNR.

SELECTION-SCREEN END OF BLOCK BLK1.

INITIALIZATION .

AT SELECTION-SCREEN.

START-OF-SELECTION.

  PERFORMLT_MAKT,

           LT_MATNR,

           LT_WERKS,

           LT_LIFNR.

END-OF-SELECTION.

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

*&      Form  lt_makt

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

*       text

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

FORM LT_MAKT.

  SELECT MATNR

    WERKS

    LIFNR

    INTO CORRESPONDING FIELDS OF TABLE GT_INTABLE

    FROM EORD

    WHERE MATNR IN S_MATNR

    AND WERKS IN S_WERKS

  AND LIFNR IN S_LIFNR.

ENDFORM.                    "lt_makt

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

*&      Form  lt_matnr

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

*       text

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

FORM LT_MATNR.

  G_LAYOUT-COLWIDTH_OPTIMIZE 'X'.

  G_LAYOUT-ZEBRA 'X'.

ENDFORM.                    "lt_matnr

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

*&      Form  lt_werks

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

*       text

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

FORM LT_WERKS.

  PERFORM  MATNR_MATNR USING ' MATNR ' ''  ''  ' 物料编码  ' .

  PERFORM  MATNR_MATNR USING ' MAKTX ' ''  ''  ' 物料描述  ' .

  PERFORM  MATNR_MATNR USING ' WERKS ' ''  ''  ' 工厂  ' .

  PERFORM  MATNR_MATNR USING ' NAME1 ' ''  ''  ' 工厂描述  ' .

  PERFORM  MATNR_MATNR USING ' VDATU ' ''  ''  ' 有效起始日 ' .

  PERFORM  MATNR_MATNR USING ' BDATU ' ''  ''  ' 有效至 ' 11  .

  PERFORM  MATNR_MATNR USING ' LIFNR ' ''  ''  ' 供应商编码 ' 13  .

  PERFORM  MATNR_MATNR USING ' NAME  ' ''  ''  ' 供应商 ' 15  .

  PERFORM  MATNR_MATNR USING ' EKORG ' ''  ''  ' 采购组织 ' 17  .

  PERFORM  MATNR_MATNR USING ' EKOTX ' ''  ''  ' 采购组织描述 ' 19  .

ENDFORM.                    "lt_werks

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

*&      Form  matnr_matnr

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

*       text

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

*      -->FIELDNAME      text

*      -->REF_FIELDNAME  text

*      -->REF_TABNAME    text

*      -->FIELDTEXT      text

*      -->COL_POS        text

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

FORM MATNR_MATNR USING FIELDNAME REF_FIELDNAME REF_TABNAME FIELDTEXT  COL_POS .

  G_FIELDCAT-REF_TABNAME  REF_TABNAME .

  G_FIELDCAT-FIELDNAME  REF_FIELDNAME .

  G_FIELDCAT-FIELDNAME FIELDNAME.

  G_FIELDCAT-SELTEXT_S FIELDTEXT.

  G_FIELDCAT-SELTEXT_L FIELDTEXT.

  G_FIELDCAT-SELTEXT_M FIELDTEXT.

  G_FIELDCAT-REPTEXT_DDIC FIELDTEXT.

  G_FIELDCAT-COL_POS COL_POS.

  G_FIELDCAT-NO_ZERO 'X'.

  APPEND G_FIELDCAT TO LG_FIELDCAT.

  CLEAR G_FIELDCAT.

ENDFORM.                    "matnr_matnr

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

*&      Form  lt_lifnr

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

*       text

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

FORM LT_LIFNR.

  G_GRID 'X'.

  CALL FUNCTION 'REUSE_ALV_GRID_DISPLAY'

    EXPORTING

      I_CALLBACK_PROGRAM SY-REPID

      I_GRID_SETTINGS    G_GRID

      IS_LAYOUT          G_LAYOUT

      IT_FIELDCAT        LG_FIELDCAT

      I_SAVE             'X'

    TABLES

      T_OUTTAB           GT_INTABLE.

  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.                    "lt_lifnr

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Korea Zou

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值