smartforms例子

*&---------------------------------------------------------------------*
*& Report ZMMR018
*&---------------------------------------------------------------------*
*& 库存盘点清单导出
*&---------------------------------------------------------------------*
REPORT ZMMR018.
*----------------------------------------------------------------------*
*  Defination
*----------------------------------------------------------------------*
"Data table
TYPES:
  BEGIN OF TP_T001L,
    WERKS TYPE T001L-WERKS,
    LGORT TYPE T001L-LGORT,
    LGOBE TYPE T001L-LGOBE,
  END OF TP_T001L,

  BEGIN OF TP_T001W,
    WERKS TYPE T001W-WERKS,
    NAME1 TYPE T001W-NAME1,
  END OF TP_T001W,

  BEGIN OF TP_MARD,
    MATNR TYPE MARD-MATNR,
    WERKS TYPE MARD-WERKS,
    LGORT TYPE MARD-LGORT,
    LGPBE TYPE MARD-LGPBE, "库存仓位
    LABST TYPE MARD-LABST, "非限制使用库存
    INSME TYPE MARD-INSME, "质检库存
    SPEME TYPE MARD-SPEME, "已冻结库存
  END OF TP_MARD,

  BEGIN OF TP_ISEG,
    IBLNR TYPE ISEG-IBLNR,  "凭证号码
    ZEILI TYPE ISEG-ZEILI,  "行号
    GJAHR TYPE ISEG-GJAHR,
    WERKS TYPE ISEG-WERKS,  "工厂
    LGORT TYPE ISEG-LGORT,  "库存地点
    MATNR TYPE ISEG-MATNR,  "物料编码
    ERFME TYPE ISEG-ERFME,  "单位
    BUCHM TYPE ISEG-BUCHM,  "账面数量
    ERFMG TYPE ISEG-ERFMG,  "实盘数
    BSTAR TYPE ISEG-BSTAR,  "库存类型
    SOBKZ TYPE ISEG-SOBKZ,  "特殊库存
    KDAUF TYPE ISEG-KDAUF,  "销售订单数
    KDPOS TYPE ISEG-KDPOS,  "销售订单中的条款数
    LIFNR TYPE ISEG-LIFNR,  "供应商帐户号
    KUNNR TYPE ISEG-KUNNR,  "客户的帐户编号
    GIDAT TYPE IKPF-GIDAT,  "计划盘点日期
    ZLDAT TYPE IKPF-ZLDAT,  "实际盘点日期
    XNULL TYPE ISEG-XNULL,  "零盘点
  END OF TP_ISEG,

  BEGIN OF TP_EQBS,
    MATNR TYPE ISEG-MATNR,  "物料编码
    WERKS TYPE ISEG-WERKS,  "工厂
    LGORT TYPE ISEG-LGORT,  "库存地点
    EQUNR TYPE EQBS-EQUNR,  "序列号
    KDAUF TYPE EQBS-KDAUF, "销售订单号
    KDPOS TYPE EQBS-KDPOS, "销售订单项目号
    KUNNR TYPE EQBS-KUNNR, "客户编号
*    12/30/17 09:37:41  增加库存类型
    LBBSA TYPE EQBS-LBBSA, "货物移动的库存类型
*    12/30/17 09:37:41  增加库存类型
*    BSTAR TYPE SER07-BSTAR,  "库存类型
  END OF TP_EQBS,

  BEGIN OF TP_SER07,
    OBKNR    TYPE SER07-OBKNR,  "对象列表编号
    IBLNR    TYPE SER07-IBLNR,  "库存盘点凭证
    ZEILI    TYPE SER07-ZEILI,  "行号
    MJAHR    TYPE SER07-MJAHR,  "财年
    OLTPI    TYPE SER07-OLTPI,  "对象清单功能 - 库存盘点
    WERK     TYPE SER07-WERK,  "工厂
    LAGERORT TYPE SER07-LAGERORT,  "库存地点
    SERNR    TYPE OBJK-SERNR,   "序列号
    BSTAR    TYPE SER07-BSTAR,  "库存类型
  END OF TP_SER07,

  BEGIN OF TP_MSLB,  "供应商特殊库存
    MATNR TYPE MSLB-MATNR,
    WERKS TYPE MSLB-WERKS,
    SOBKZ TYPE MSLB-SOBKZ,
    LBLAB TYPE MSLB-LBLAB,
    LBINS TYPE MSLB-LBINS, "质检库存

*    12/30/17 11:08:47  增加供应商
    LIFNR TYPE MSLB-LIFNR, "供应商
*    12/30/17 11:08:47  增加供应商
  END OF TP_MSLB,

  BEGIN OF TP_MSKU,  "客户的特殊库存
    MATNR TYPE MSKU-MATNR,
    WERKS TYPE MSKU-WERKS,
    SOBKZ TYPE MSKU-SOBKZ,
    KULAB TYPE MSKU-KULAB,
    KUINS TYPE MSKU-KUINS, "质检库存

*    12/30/17 11:08:47  增加客户编号
    KUNNR TYPE MSKU-KUNNR, "客户编号
*    12/30/17 11:08:47  增加客户编号

  END OF TP_MSKU,

  BEGIN OF TP_MSKA,  "销售订单库存
    MATNR TYPE MSKA-MATNR,
    WERKS TYPE MSKA-WERKS,
    LGORT TYPE MSKA-LGORT,
    SOBKZ TYPE MSKA-SOBKZ, "特殊库存标识
    KALAB TYPE MSKA-KALAB,
    KAINS TYPE MSKA-KAINS, "质检库存
    KASPE TYPE MSKA-KASPE, "冻结库存
  END OF TP_MSKA,

  BEGIN OF TP_DOWN,
    STR TYPE STRING,
  END OF TP_DOWN,

  BEGIN OF TP_OUT,
    CHECKBOX,
    IBLNR    TYPE ISEG-IBLNR,  "凭证号码
    ZEILI    TYPE ISEG-ZEILI,  "行号
    WERKS    TYPE ISEG-WERKS,  "工厂
    LGORT    TYPE ISEG-LGORT,  "库存地点
    LGOBE    TYPE T001L-LGOBE, "仓储地点的描述
    LGPBE    TYPE MARD-LGPBE,   "仓位
    MATNR    TYPE STRING,  "物料编码
    MAKTX    TYPE MAKT-MAKTX,  "物料描述
    ERFME    TYPE ISEG-ERFME,  "单位
    BUCHM    TYPE STRING,  "账面数量
    ERFMG    TYPE STRING,  "实盘数
    BSTAR    TYPE ISEG-BSTAR,  "库存类型
    SERNR    TYPE OBJK-SERNR,  "序列号
    SOBKZ    TYPE ISEG-SOBKZ,  "特殊库存
    TSKCH    TYPE STRING,      "特殊库存编号
    GIDAT    TYPE IKPF-GIDAT,  "计划盘点日期
    ZLDAT    TYPE IKPF-ZLDAT,  "实际盘点日期
    ZPYPK    TYPE CHAR10,      "盘盈盘亏标记
  END OF TP_OUT.

DATA:
  GT_T001L TYPE TABLE OF TP_T001L,
  GT_T001W TYPE TABLE OF TP_T001W,
  GT_MAKT  TYPE TABLE OF MAKT,
  GT_MARD  TYPE TABLE OF TP_MARD,
  GT_MSLB  TYPE TABLE OF TP_MSLB,
  GT_MSKU  TYPE TABLE OF TP_MSKU,
  GT_MSKA  TYPE TABLE OF TP_MSKA,
  GT_SER07 TYPE TABLE OF TP_SER07,
  GT_EQBS  TYPE TABLE OF TP_EQBS,
  GT_EQBS2 TYPE TABLE OF TP_EQBS,
  GT_ISEG  TYPE TABLE OF TP_ISEG,
  GT_DOWN  TYPE TABLE OF TP_DOWN,
  GT_PRINT TYPE TABLE OF ZMMS013,
  GT_OUT   TYPE TABLE OF TP_OUT.

"Defination for search help
TYPES:
  BEGIN OF TP_IBLNR,
    IBLNR TYPE IKPF-IBLNR,
    GJAHR TYPE IKPF-GJAHR,
  END OF TP_IBLNR.
DATA:GT_IBLNR TYPE TABLE OF TP_IBLNR.
"select option types
DATA:
  TP_IBLNR TYPE ISEG-IBLNR,
  TP_GJAHR TYPE ISEG-GJAHR,
  TP_MATNR TYPE ISEG-MATNR,
  TP_WERKS TYPE ISEG-WERKS,
  TP_LGORT TYPE ISEG-LGORT,
  TP_BUDAT TYPE ISEG-BUDAT. "凭证中的过帐日期
"ALV
DATA:
  WA_LAYO TYPE LVC_S_LAYO,
  WA_FCAT TYPE LVC_S_FCAT,
  GT_FCAT TYPE LVC_T_FCAT.

DATA: BEGIN OF IT_LBBSA OCCURS 0,
        LBBSA TYPE EQBS-LBBSA, "货物移动的库存类型
        BSTAR TYPE SER07-BSTAR,  "库存类型
      END OF IT_LBBSA.

*----------------------------------------------------------------------*
*  Screen Defination
*----------------------------------------------------------------------*
SELECT-OPTIONS:
S_IBLNR FOR TP_IBLNR ,  "库存盘点凭证
S_GJAHR FOR TP_GJAHR NO INTERVALS,  "财年
S_MATNR FOR TP_MATNR ,  "物料编号
S_WERKS FOR TP_WERKS ,  "工厂
S_LGORT FOR TP_LGORT ,  "库存地点
S_BUDAT FOR TP_BUDAT .  "过帐日期
*----------------------------------------------------------------------*
*  Screen Events
*----------------------------------------------------------------------*
INITIALIZATION.

AT SELECTION-SCREEN ON VALUE-REQUEST FOR S_IBLNR-LOW .
  PERFORM FRM_F4_IBLNR USING 'S_IBLNR-LOW' 'IBLNR'.

AT SELECTION-SCREEN ON VALUE-REQUEST FOR S_IBLNR-HIGH.
  PERFORM FRM_F4_IBLNR USING 'S_IBLNR-HIGH' 'IBLNR'.

START-OF-SELECTION.
  PERFORM FRM_GET_DATA.
  PERFORM FRM_EDIT_DATA.
  PERFORM FRM_DISPLAY_DATA.
*&---------------------------------------------------------------------*
*& Form FRM_F4_IBLNR
*&---------------------------------------------------------------------*
*& text
*&---------------------------------------------------------------------*
FORM FRM_F4_IBLNR USING SFNAME FIELD.
  IF GT_IBLNR IS INITIAL.
    SELECT IBLNR GJAHR FROM IKPF INTO TABLE GT_IBLNR.
  ENDIF.

  CALL FUNCTION 'F4IF_INT_TABLE_VALUE_REQUEST'
    EXPORTING
      RETFIELD    = FIELD
      DYNPPROG    = SY-REPID
      DYNPNR      = SY-DYNNR
      DYNPROFIELD = SFNAME
      VALUE_ORG   = 'S'
    TABLES
      VALUE_TAB   = GT_IBLNR. "存储搜索帮助内容的内表
  IF SY-SUBRC <> 0.
    MESSAGE '没有相关搜索帮助' TYPE 'I'.
  ENDIF.

ENDFORM.
*&---------------------------------------------------------------------*
*& Form FRM_GET_DATA
*&---------------------------------------------------------------------*
*& text
*&---------------------------------------------------------------------*
FORM FRM_GET_DATA .
  DATA:LT_ISEG TYPE TABLE OF TP_ISEG.

  "库存盘点凭证
  SELECT B~IBLNR "库存盘点凭证
         B~ZEILI "盘点凭证项目号
         B~GJAHR "财年
         B~WERKS "工厂
         B~LGORT "库存地点
         B~MATNR "物料编号
         B~ERFME "输入单位(库存盘点)
         B~BUCHM &#
  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值