转

  ALV的调用主要由以下几个标准函数实现,所有函数的输入输出参数必须大写,否则系统会出现异常中止,相关函数如下:

  1)REUSE_ALV_FIENDCATALOG_MERGE:根据内表结构返回FIELDCAT字段结构信息,其常用输入输出参数如下:
  EXPORTING项:
1.I_PROGRAM_NAME:程序名称。
2.I_INTERNAL_TABNAME:内表名称,必须为输出内表所自定义的STRUCTURE名。
3.I_STRUCTURE_NAME:直接参考数据字典中所定义的透明表名或STRUCTURE名。
函数定义时I_INTERNAL_TABNAME或I_STRUCTURE_NAME参数只需一项。
CHANGING项:
  CT_FIELDCAT:导出FIELDCAT内表数据。

  2)REUSE_ALV_GRID_DISPLAY/REUSE_ALV_LIST_DISPLAY:输出ALV报表,定义其为GRID模式还是LIST模式,两个函数的语法结构一样,其常用输入输出参数如下:
EXPORT项:
  1.I_CALLBACK_PROGRAM:程序名称。
  2.IS_LAYOUT:程序所定义的LAYOUT名称。
  3.I_GRID_TITLE:定义ALV标题名。 
  4.IT_FIELDCAT:定义FIELDCAT数据。
  5.IT_EVENTS:定义ALV输出事件。
  6.I_CALLBACK_PF_STATUS_SET:定义触发工具栏定义,通常为一个子程序。
  7.I_CALLBACK_USER_COMMAND:其对应值一般为子程序名,在对ALV操作时触发所定义子程序(如某表字段的双击事件)。
  TABLES项(定义输入内表数据):
  1.T_OUTTAB:输入所需显示的内表数据。

  3)LAYOUT为一STRUCTURE,其主要字段定义及属性如下:
  1.EDIT:设置ALV是否为可编辑模式。
  2.COLWIDTH_OPTIMIZE:将ALV字段宽度设置为最优化,按实际输出内容宽度自动匹配。
  3.NO_VLINE:输出ALV表格不显示垂直格式。
  4.NO_ULINE_HS:输出ALV表格不显示水平格线。
  5.INFO_FIELDNAME:设置颜色属性。
  6.KEY_HOTSPOT:设置关键字段热点。
  7.NO_COLNAME:是否显示字段名。
  8.ZEBRA:使ALV表格按斑马线间隔条纹方式显示,以便显示效果更有美观。
  9.BOX_FIELDNAME:设置ALV表格是否显示选择按钮字段。
  10.INFO_FIELDNAME:用于设置ALV输出报表每一行的颜色,其参数为输出内表的字段名称,要注意的是使用该属性需要同时在内表中定义一个与该参数所定义字段名相同的字段,例如:
  LAYOUT-INFO_FIELDNAME = 'COLOR'.  
  倘若其数据输出内表名为LT_OUT,则需要在该内表增加一字段“COLOR”,并为其内表每行复制,颜色参数范围C000~C999,例如:
  LT_OUT-COLOR = 'C012'.

  4)FIELDCAT主要属性介绍
  1.KEY:将定义字段设置为KEY值。
  2.ICON:将定义字段以ICON的形式显示。
  3.CHECKBOX:将定义字段以CHECKBOX的形式显示。
  4.JUST:定义字段对齐方式(R)RIGHT、(L)LEFT、(C)CENTER。
  5.IZERO:将定义字段以前导"0"的形式显示。
  6.NO_SIGN:将定义字段符号设置为不显示。
  7.NO_ZERO:定义字段是否显示。
  8.EMPHASIZE:设置字段的颜色。
  9.DO_SUM:对字段进行汇总。
  10.SELTEXT_L/M/S:设置字段名称描述长/中/短。
  11.DDICTXT:设置字段显示字符串。
  12.HOTSPOT:设置字段是否有热点(热点字段显示有下划线)。
  13.NO_OUT:隐藏不需要的字段(NO_OUT = 'X')。

ALV调用的几个函数的更多相关文章

  1. mfc 调用Windows的API函数实现同步异步串口通信(源码)

    在工业控制中,工控机(一般都基于Windows平台)经常需要与智能仪表通过串口进行通信.串口通信方便易行,应用广泛. 一般情况下,工控机和各智能仪表通过RS485总线进行通信.RS485的通信方式是半 ...

  2. 【原创】Matlab.NET混合编程技巧之直接调用Matlab内置函数

                  本博客所有文章分类的总目录:[总目录]本博客博文总目录-实时更新    Matlab和C#混合编程文章目录 :[目录]Matlab和C#混合编程文章目录 在我的上一篇文章[ ...

  3. C#调用C和C++函数的一点区别

    最近做U800电话的二次开发,需要调用厂商的C函数库来打电话,后来想加入通话录音功能,但发现程序默认生产的WAV文件过大,又找了个WAV转MP3的C++函数库程序,出了点问题.下面是转MP3的程序接口 ...

  4. 在VS2012中采用C++中调用DLL中的函数 (4)

    这两天因为需要用到VS2012来生成一个DLL代码,但是之前并没有用过DLL相关的内容,从昨天开始尝试调试DLL的文件调用,起初笔者在网络上找到了3片采用VSXXX版本进行调试的例子,相关的内容见本人 ...

  5. 在C++中调用DLL中的函数 (3)

    1.dll的优点 代码复用是提高软件开发效率的重要途径.一般而言,只要某部分代码具有通用性,就可将它构造成相对独立的功能模块并在之后的项目中重复使用.比较常见的例子是各种应用程序框架,ATL.MFC等 ...

  6. 在C++中调用DLL中的函数 (2)

    应用程序使用DLL可以采用两种方式: 一种是隐式链接,另一种是显式链接.在使用DLL之前首先要知道DLL中函数的结构信息. Visual C++6.0在VC\bin目录下提供了一个名为Dumpbin. ...

  7. Eclipse中通过Android模拟器调用OpenGL ES2.0函数操作步骤

    原文地址: Eclipse中通过Android模拟器调用OpenGL ES2.0函数操作步骤 - 网络资源是无限的 - 博客频道 - CSDN.NET http://blog.csdn.net/fen ...

  8. 在C++中调用DLL中的函数

    如何在C++中调用DLL中的函数 应用程序使用DLL可以采用两种方式:一种是隐式链接,另一种是显式链接.在使用DLL之前首先要知道DLL中函数的结构信息.Visual C++6.0在VC\bin目录下 ...

  9. c#调用js,以及js调用C#里的函数, c#自己生成js代码,实现对web的控制

    using mshtml;using System;using System.Collections.Generic;using System.Linq;using System.Security.P ...

随机推荐

  1. iOS uitableivewCell 下划线顶格

    - (void)tableView:(UITableView *)tableView willDisplayCell:(UITableViewCell *)cell forRowAtIndexPath ...

  2. Effective JAVA 创建和销毁对象 遇到多参构造器考虑使用构建器

    //构建器抽象类,为不同类的实现提供 public interface Builder<T> { public T build(); } /** * @描述: 营养表 */ public ...

  3. HTML <!DOCTYPE> (转自w3school)

    定义和用法 <!DOCTYPE> 声明必须是 HTML 文档的第一行,位于 <html> 标签之前. <!DOCTYPE> 声明不是 HTML 标签:它是指示 we ...

  4. eclipse中代码没错但项目名称有个小红X

    快速找到项目中的错误,eclipse程序> window> show View >problems ;选择后看控制台报的错误,你就知道什么原因出小红X了

  5. c++打印蛇形矩阵

    一个m*n的矩阵里按照下图形式填充,最后形成的矩阵即为蛇形矩阵,下图是m=4, n =5时的蛇形矩阵: 方法一:逐层循环 #include <iostream> using namespa ...

  6. Windows下UEFI环境的搭建

    Windows下UEFI环境的搭建 一.环境准备 1. 安装2012及以上VS https://visualstudio.microsoft.com/ 2.下载NASM 2.13.03  http:/ ...

  7. Android环境变量的设置(详细图解版)

    分类: Android初学学习笔记2011-07-10 09:47 99479人阅读 评论(0) 收藏 举报 androidtoolspathcmd 查阅了网上很多的资料但是对于环境变量设置介绍的不够 ...

  8. bzoj3531【SDOI2014】旅行

    3531: [Sdoi2014]旅行 Time Limit: 20 Sec  Memory Limit: 512 MB Submit: 850  Solved: 433 [Submit][Status ...

  9. Cannot lock storage /tmp/hadoop-root/dfs/name. The directory is already locked.

    [root@nn01 bin]# ./hadoop namenode -format 12/05/21 06:13:51 INFO namenode.NameNode: STARTUP_MSG: /* ...

  10. mapreduce 查找共同好友

    A:B,C,D,F,E,O B:A,C,E,K C:F,A,D,I D:A,E,F,L E:B,C,D,M,L F:A,B,C,D,E,O,M G:A,C,D,E,F H:A,C,D,E,O I:A, ...