***********************************************************************
* Title           : X                           *
* Application     : X                          *
* Subject         : X                           *
* Requested by    : X                           *
* Execution       : X                           *
* Ref no:         : X                           *
* Author          : X                           *
* Req Date        : X                           *
***********************************************************************
*                 设计主要逻辑与原理说明                          *
***********************************************************************
* 1.XXX            *
*   XXX            *
*   XXX            *
*                                                                     *
***********************************************************************
* MODIFICATIONS (latest entry at the top)                             *
* ------------------------------------------------------------------- *
* REL  DATE    NAME (COMPANY)   DESCRIPTION               TASK-NO     *
* ---  ----    ---- ---------     -----------             -------     *
* *
***********************************************************************
REPORT  YTST_CX_0001 NO STANDARD PAGE HEADING
                     LINE-COUNT 65
                     LINE-SIZE 135
                     MESSAGE-ID YTCX_01.

*----------------------------------------------------------------------
*                          TYPE-POOLS
*----------------------------------------------------------------------
TYPE-POOLS: SLIS.   "ALV
*----------------------------------------------------------------------
*                          TABLES/Structure
*----------------------------------------------------------------------
TABLES: MARA,
        MBEW.

*----------------------------------------------------------------------
*                          TYPES
*----------------------------------------------------------------------
TYPES:BEGIN OF T_ITAB,
      MATNR LIKE MARA-MATNR,
      ERSDA LIKE MARA-ERSDA,
      MATKL LIKE MARA-MATKL,
      LBKUM LIKE MBEW-LBKUM,
      SALK3 LIKE MBEW-SALK3,
     END OF T_ITAB.

*----------------------------------------------------------------------
*                          Internal table
*----------------------------------------------------------------------
DATA:ITAB TYPE TABLE OF T_ITAB WITH HEADER LINE.
DATA:G_LEN TYPE I.

*======================================================================
*                          SELECTION-SCREEN
*======================================================================
SELECTION-SCREEN BEGIN OF BLOCK BLOK WITH FRAME TITLE TXT1.
SELECT-OPTIONS: MATNR FOR MARA-MATNR.

SELECTION-SCREEN END OF BLOCK BLOK.

*----------------------------------------------------------------------
*  INITIALIZATION
*----------------------------------------------------------------------
INITIALIZATION.

TXT1 = '请输入选择条件'.

*&G1 初始化数据
  PERFORM FRM_INITIAL.

*----------------------------------------------------------------------
*  AT SELECTION-SCREEN
*----------------------------------------------------------------------
AT SELECTION-SCREEN.

*G2 权限检查部分
  PERFORM FRM_CHECK_AUTHOR.

*======================================================================
*                          MAIN PROGRAM
*======================================================================
*  START-OF-SELECTION
*----------------------------------------------------------------------
START-OF-SELECTION.
*&G3 获取数据
  PERFORM FRM_GET_DATA.
*&G4 ALV展示输出
  PERFORM FRM_ALV_OUTPUT.

*======================================================================
*  END-OF-SELECTION
*----------------------------------------------------------------------
END-OF-SELECTION.
**&G3 获取数据
*  PERFORM FRM_GET_DATA.
**&G4 ALV展示输出
*  PERFORM FRM_ALV_OUTPUT.

TOP-OF-PAGE.

END-OF-PAGE.

*&---------------------------------------------------------------------*
*&      Form  FRM_INITIAL
*&---------------------------------------------------------------------*
*       text
*----------------------------------------------------------------------*
*  -->  p1        text
*  <--  p2        text
*----------------------------------------------------------------------*
FORM FRM_INITIAL .

ENDFORM.                    " FRM_INITIAL

*&---------------------------------------------------------------------*
*&      Form  FRM_CHECK_AUTHOR
*&---------------------------------------------------------------------*
*       text
*----------------------------------------------------------------------*
*  -->  p1        text
*  <--  p2        text
*----------------------------------------------------------------------*
FORM FRM_CHECK_AUTHOR .

ENDFORM.                    " FRM_CHECK_AUTHOR

*&---------------------------------------------------------------------*
*&      Form  FRM_GET_DATA
*&---------------------------------------------------------------------*
*       text
*----------------------------------------------------------------------*
*  -->  p1        text
*  <--  p2        text
*----------------------------------------------------------------------*
FORM FRM_GET_DATA .

SELECT MARA~MATNR
         MARA~ERSDA
         MARA~MATKL
         MBEW~LBKUM
         MBEW~SALK3
    INTO TABLE ITAB
    FROM MARA
    JOIN MBEW ON ( MARA~MATNR = MBEW~MATNR AND MBEW~BWKEY = '1000' )
   WHERE MARA~MATNR IN MATNR
   ORDER BY MARA~MATNR.

DESCRIBE TABLE ITAB LINES G_LEN.
  IF G_LEN EQ 0.
    MESSAGE E000 WITH '没有找到符合条件的数据!'.
  ELSE.
    MESSAGE S002 WITH '找到符合条件数据' G_LEN '条!'.
  ENDIF.

ENDFORM.                    " FRM_GET_DATA

*&---------------------------------------------------------------------*
*&      Form  FRM_ALV_OUTPUT
*&---------------------------------------------------------------------*
*       text
*----------------------------------------------------------------------*
*  -->  p1        text
*  <--  p2        text
*----------------------------------------------------------------------*
FORM FRM_ALV_OUTPUT .
DATA:IT_FIELDCAT     TYPE SLIS_T_FIELDCAT_ALV,
     IS_VARIANT      LIKE DISVARIANT,
     IT_EVENTS       TYPE SLIS_T_EVENT,
     IS_LAYOUT       TYPE SLIS_LAYOUT_ALV,"ALV的格式
     I_LIST_COMMENTS TYPE SLIS_T_LISTHEADER,
     I_CALLBACK_PROGRAM TYPE SY-REPID,
     TITLE              TYPE LVC_TITLE,
     IT_SORT            TYPE SLIS_T_SORTINFO_ALV.

PERFORM FIELDCAT_INIT USING IT_FIELDCAT."输出列表控件表头
* PERFORM layout_init USING is_layout.
* PERFORM eventtab_build USING it_events.
  PERFORM E02_LAYOUT_SORT_BUILD CHANGING IT_SORT.

I_CALLBACK_PROGRAM = SY-REPID.
  TITLE = '测试'.

CALL FUNCTION 'REUSE_ALV_GRID_DISPLAY'
    EXPORTING
      I_CALLBACK_PROGRAM = I_CALLBACK_PROGRAM
      I_GRID_TITLE       = TITLE
      IS_LAYOUT          = IS_LAYOUT
      IT_FIELDCAT        = IT_FIELDCAT
      IT_EVENTS          = IT_EVENTS
      IT_SORT            = IT_SORT[]
    TABLES
      T_OUTTAB           = ITAB
    EXCEPTIONS
      PROGRAM_ERROR      = 1
      OTHERS             = 2.
  IF SY-SUBRC <> 0.
  ENDIF.

ENDFORM.                    " FRM_ALV_OUTPUT

*&---------------------------------------------------------------------*
*&      Form  FIELDCAT_INIT
*&---------------------------------------------------------------------*
*       text
*----------------------------------------------------------------------*
*      -->P_IT_FIELDCAT  text
*----------------------------------------------------------------------*
FORM FIELDCAT_INIT USING IT_FIELDCAT TYPE SLIS_T_FIELDCAT_ALV.
  DATA: LS_FIELDCAT TYPE SLIS_FIELDCAT_ALV.

LS_FIELDCAT-FIELDNAME    = 'MATNR'.
  LS_FIELDCAT-REPTEXT_DDIC = '物料号'.
  LS_FIELDCAT-NO_ZERO      = 'X'.
  APPEND LS_FIELDCAT TO IT_FIELDCAT.
  CLEAR LS_FIELDCAT.

LS_FIELDCAT-FIELDNAME    = 'ERSDA'.
  LS_FIELDCAT-REPTEXT_DDIC = '创建日期'.
  APPEND LS_FIELDCAT TO IT_FIELDCAT.
  CLEAR LS_FIELDCAT.

LS_FIELDCAT-FIELDNAME    = 'MATKL'.
  LS_FIELDCAT-REPTEXT_DDIC = '物料组'.
  APPEND LS_FIELDCAT TO IT_FIELDCAT.
  CLEAR LS_FIELDCAT.

LS_FIELDCAT-FIELDNAME    = 'LBKUM'.
  LS_FIELDCAT-REPTEXT_DDIC = '总评估的库存'.
  LS_FIELDCAT-DO_SUM       = 'X'.
  APPEND LS_FIELDCAT TO IT_FIELDCAT.
  CLEAR LS_FIELDCAT.

LS_FIELDCAT-FIELDNAME    = 'SALK3'.
  LS_FIELDCAT-REPTEXT_DDIC = '估价的总库存价值'.
  LS_FIELDCAT-DO_SUM = 'X'.
  APPEND LS_FIELDCAT TO IT_FIELDCAT.
  CLEAR LS_FIELDCAT.

ENDFORM. " fieldcat_init

*&---------------------------------------------------------------------*
*&      Form  E02_LAYOUT_SORT_BUILD
*&---------------------------------------------------------------------*
*       text
*----------------------------------------------------------------------*
*      <--P_IT_SORT  text
*----------------------------------------------------------------------*
FORM E02_LAYOUT_SORT_BUILD CHANGING LT_SORT TYPE SLIS_T_SORTINFO_ALV.
  DATA LS_SORT TYPE SLIS_SORTINFO_ALV.

CLEAR LS_SORT.
  LS_SORT-FIELDNAME = 'ERSDA'.                              "#EC *
  LS_SORT-SPOS = 1.
  LS_SORT-UP = 'X'.
  LS_SORT-SUBTOT = 'X'.
  APPEND LS_SORT TO LT_SORT.

CLEAR LS_SORT.
  LS_SORT-FIELDNAME = 'MATKL'.                              "#EC *
  LS_SORT-SPOS = 1.
  LS_SORT-UP = 'X'.
  LS_SORT-SUBTOT = 'X'.
  APPEND LS_SORT TO LT_SORT.

ENDFORM. " e02_layout_sort_build

YTST_CX_0001(ALV栏位汇总)的更多相关文章

  1. input 栏位光标末尾闪烁

    var input1 =window.document.getElementById("input1").createTextRange(); input1.collapse(fa ...

  2. 6 关于 Oracle NULL栏位和PL./SQL执行实验

    今日有针对NULL值有了相关实验. 对NULL 值插入的讨论. 1, PL/SQL 中可以执行插入''或者NULL 的操作, 前提是栏位允许为空. 2, 可以对NULL进行一系列数据库运算. 如:   ...

  3. ZZ_INEERNAL每个栏位的含义

    ZZ_INEERNAL包含10列,每列之间用,隔开 第一列:exception class,有KE/NE/JE/EE等 第二列:pid 第三列:tid 第四列:固定是99 第五列:固定是/data/c ...

  4. Linux显示各栏位的标题信息列

    Linux显示各栏位的标题信息列 youhaidong@youhaidong-ThinkPad-Edge-E545:~$ who -H 名称 线路 时间 备注 youhaidong :0 2015-0 ...

  5. Rails Migration Data Model栏位修改及数据类型介绍

    测试版本Ruby:2.3.1   Rails:5.0.1 一.增加栏位       给devise默认的用户新增增加username字段 $ rails generate migration add_ ...

  6. SAP 销售条件表增强栏位

    有时遇到一个比较特殊的业务,比如公司间免费订单,既要让价格为0,不读取VK11里创建的价格, 又要让公司间的价格读取VK11,这实际上是有矛盾的,也就是说一个订单里面的两行,物料一样,客户一样,就会出 ...

  7. org.postgresql.util.PSQLException: 栏位索引超过许可范围:3,栏位数:2。

    org.postgresql.util.PSQLException: 栏位索引超过许可范围:3,栏位数:2. 今天在写完SQL进行查询的时候,后台一直报错显示上面的信息.看错误完全不知道原因,就重新检 ...

  8. pymysql 单独获取表的栏位名称

    有时需要获取表的栏位+数值,请参考 https://www.cnblogs.com/xibuhaohao/p/9996571.html 有时只需要栏位名称,那么可以使用 col=self.cursor ...

  9. OFBiz:添加实体栏位

    如何添加实体栏位?这里演示为PostalAddress添加planet栏位.打开applications/party/entitydef/entitymodel.xml,找到PostalAddress ...

随机推荐

  1. iOS进行单元测试OCUnit+xctool

    单元测试 什么是单元测试 wiki解释 简单说来就是为你的方法多专门写一个测试函数.以保证你的方法在不停的修改开发中.保持正确.如果出错,第一时间让你知道,这样从最小单位开始监控来保证软件的质量. 我 ...

  2. 2017.2.21 Java中正则表达式的学习及示例

    学习网站:菜鸟教程 http://www.runoob.com/java/java-regular-expressions.html 1 正则表达式的基本使用 (1)类 正则表达式并不仅限于某一种语言 ...

  3. 习科小D整理找网站后台办法[科普]

    习科科普贴,如何找到网站的后台 作者:小Dの马甲来自:习科论坛 - Silic.Org - BlackBap.Org 1, 穷举猜解    现如今可以暴力猜解网站后台登陆地址的软件有很多,从最早的啊D ...

  4. 【工具类】Date、Long、String 类型互转

    开发常常遇到Date.Long.String 三种类型数据须要互转的问题.以此记录. public static void main(String[] args) throws ParseExcept ...

  5. 【Python】学习笔记十五:循环对象

    循环对象 所谓的循环对象,包含有一个next()方法(python3中为__next__() ),这个方法的目的就是进行到下一个结果,而在结束一系列结果之后,举出StopIteration错误 当一个 ...

  6. 检验 java 基础数据类型参数传递方式

    测试证明,java基础数据类型参数传递值虽是引用传递但是值不会改变.对象是引用传递,值会改变. 为什么?找到一段话来解释这个问题. "对于字符串对象来说,虽然在参数传递的时候也是引用传递,但 ...

  7. php程序的三大流程控制

    php程序的三大流程控制 ①  顺序控制(从上到下.从左到右) ②分支控制 if(条件表达式){ //n多语句 }else if (条件表达式){ //n 多语句 }else if(条件表示式){ / ...

  8. jquery插件中使用ajax并且获取使用插件的对象

    jquery插件中使用ajax后无法在里面获取this 解决办法是在函数内使用ajax前声明变量 $this=this 然后再ajax中使用$this

  9. anaconda3.5 3.6 2.7

    https://repo.continuum.io/archive/ Filename Size Last Modified MD5 Anaconda2-5.0.1-Linux-x86.sh 413. ...

  10. OpenStack安装CentOS镜像:Device eth0 does not seem to be present, delaying initialization

    解决办法:删除 /etc/udev/rules.d/70-persistent-net.rules 后重启机器.70-persistent-net.rules这个文件确定了网卡与MAC地址的绑定,cl ...