简单的ALV显示信息(二)
摘要:之前写过一篇简单的ALV显示信息,为了增强对ALV几个查关函数的理解,故又写了一个很简单的小程式就叫他为之简单的ALV显示信息(二)吧。就显示出物料编号及物料名称,够简单吧,我喜欢简单,就像这样过着简单的生活。 REPORTZZWEI_ALV_MYDEMO. TYPE-POOLS:SLIS."引用类型池 TABLES:MARA,MAKT. DATA:i_fieldcatTYPESLIS_T_FIELDCAT_ALVWITHHEADERLINE, i_layoutTYPESLIS_LAYOUT_ALV, i_repidTYPESY-REPID. SELECT-OPTIONS:s...
阅读全文
自定义FIELDCAT参数控制ALV输出
摘要:除了可以用REUSE_ALV_FIELDCATALOG_MERGE函数来获取FIELDCAT之外,还可以自定义FIELDCAT参数,不过这种方式需要自定义字段名称。 REPORTZZWEI_ALV_DEMO. TYPE-POOLS:SLIS."引用类型池 TABLES:SPFLI. DATA:fieldCatTYPESLIS_T_FIELDCAT_ALVWITHHEADERLINE, layoutTYPESLIS_LAYOUT_ALV, w_repidLIKESY-REPID. DATA:lspfliLIKESTANDARDTABLEOFSPFLIWITHHEADERLI...
阅读全文
调用REUSE_ALV_FIELDCATALOG_MERGE函数来获取FIELDCAT
摘要:REUSE_ALV_FIELDCATALOG_MERGE函数可根据内表结构返回FIELDCAT字段结构信息,具体的参数等信息请查看ALV调用的几个标准函数里相关的介绍,好的,那么让我们开始学习如何使用此函数。 REPORTZZWEI_ALV_DEMO. *ALVSTART TYPE-POOLS:SLIS."调用该类型池 *定义FIELDCAT与LAYOUT DATA:fieldCatTYPESLIS_T_FIELDCAT_ALVWITHHEADERLINE, layoutTYPESLIS_LAYOUT_ALV, w_repidLIKESY-REPID. TABLES:SPFLI...
阅读全文
ALV调用的几个标准函数
摘要: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_NAM...
阅读全文
简单的ALV显示信息
摘要:在ALV开发中有两个重要的对象:LAYOUT和FIELDCAT。LAYOUT主要用于设置ALV的输出格式,如输出字段的颜色、表格中的线条等;而FIELDCAT主要用于ALV结构定义,包括具体字段的名称、类型、格式等属性,它们同属于类型池SLIS,在ALV开发中必须导入类型池SLIS。 [For Example]*ALV使用到的类型池 TYPE-POOLS:SLIS. DATAwa_alv_fieldTYPESLIS_FIELDCAT_ALV. *列表字段(綁定FIELD)无HEADLER LINEDATAwa_alv_fieldcatTYPESLIS_T_FIELDCAT_ALV. *DA..
阅读全文
SAP应用界面开发:7)工具栏对象GUI Status与GUI Title
摘要:GUI Status与GUI Title用于自定义工具栏按钮及Report程序标题栏显示内容,可以通过SE81或直接在SE38中展开对象列表进行相关操作。如下图所示为ABAP编辑器中展开,点击:或者按捷键(CTRL+SHILF+F5) 1)GUI Status的定义及应用 GUI Status 用于自定义工具栏按钮。单击上图中的GUI Status菜单即可以弹出Create Status对话框,所定义属性包括程序名称及工具栏的名称、基本描述及状态类型。如下图: 填写完整相关属性,单击按钮进入GUI Status参数设置界面,如下图: GUI Status参数设置共包括3个部分...
阅读全文
SAP应用界面开发:6)程序回执信息的定义
摘要:SAP通过Message来回执程序的执行状态。使用T-CODE:SE91对Message定义,还能够对Message进行创建,修改及删除等维护操作。 SAP将Message分为不同的类,下图显示00类的相关Message列表: Message Short Text字段为类描述,可以定义输入参数&,如"1&2&3&"表示有三个输入参数。 Message共分以下几种类型:E:错误、W:警告、I:信息、A:异常中止、S:成功。 引用语法为: Message W000(00),表示调用00类的000Message类型为警告。 也可以在程序开头直接引用
阅读全文
SAP应用界面开发:5)Report List报表开发-实现Report的格式分页输出(6)
摘要:下面创建一个ICON数据查询程序,将ICON的名称及相关图标从系统中抓出。控制报表每页显示数量最多不超过10行,具体如下: REPORTZZWEI_REPORT_DEMONOSTANDARDPAGEHEADING.*NOSTANDARDPAGEHEADING(FORLISTHEADING)DATA:PAGE_LINETYPEIVALUE10,"每頁行數 ICONTABLIKESTANDARDTABLEOFV_ICONWITHHEADERLINE,"參照VIEW建內表 NumTYPEI.*每次分页时绘制表头 TOP-OF-PAGE. WRITE:/2'Pages:&#
阅读全文
SAP应用界面开发:5)Report List报表开发-输入列表颜色的设定(5)
摘要:使用FORMAT语句可以实现其它一些屏幕格式化功能,如调整输出颜色等。 [Syntax] FORMAT <option1> [ON|OFF] <option2> [ON|OFF]........ 一旦设定,FORMAT语句中设置的格式将适用于所有后续输出的语句,直到再次使用OFF选项关闭,其具体选项列表如下: COLOR n [ON|OFF]:设定列表行的背景颜色。 INTENSIFIED [ON|OFF]:设定是否将字段强化输出。 INVERSE [ON|OFF]:设定是否将背景即文字颜色反转输出。 HOTSPOT [ON|OFF]:将光标以手型显示,单击触发行选择事
阅读全文
SAP应用界面开发:5)Report List报表开发-列表程序中的系统参数(4)
摘要:在列表输出过程中,系统将填充下列相关系统字段,可以程序中直接调用。 SY-LINCT:REPORT语句中设定的LINE-COUNT。 SY-LINSZ:REPORT语句中设定的LINE-SIZE。 SY-SROWS:当前窗口中的列表行数。 SY-SCOLS:当前窗口中的列表栏目数。 SY-PAGNO:当前窗口的页码。 SY-LINNO:当前输出页面的选定行序号。 SY-COLNO:当前输出页面的选定列序号。
阅读全文
SAP应用界面开发:5)Report List报表开发获取屏幕中的数据(3)
摘要:当双击Report List所输出的某行数据时,触发AT LINE-SELECTION事件。而HIDE定义使输出的内容和当前选择相关联,会自动获取该行内容,如下: [For Example] DATAmytext(20).START-OF-SELECTION. "WRITE:/'ATLINE-SELECTION'. PERFORMwrite_and_hide. FORMwrite_and_hide. mytext='line1'. WRITE/mytext. HIDEmytext. mytext='line2'. WRITE/mytex
阅读全文
SAP应用界面开发:5)Report List报表开发(2)
摘要:报表输出格式的控制 (1)表格的制作 SAP Report List 开发中并没有表格的概念,所谓表格实现上是通过多个线条绘制而成。具体的线条输出位置,需要开发人员根据输出报表的大小,字段长短及位置来确定。 1.线条包括横线的竖线,横线的绘制语法可以指定具体位置及长度,默认为当前屏幕宽度。 [For Example] ULINEAT3(10)."绘制横线*SKIP.SETBLANKLINESON.WRITEAT3(10)SY-ULINE."绘制横线,两种效果一样*WRITEAT/3(10)SY-ULINE 2.竖线的输出固定为一个字符的高度,Report List中字符大小
阅读全文
SAP应用界面开发:5)Report List报表开发(1)
摘要:(1)Report List 输入定义 Report List主要应用于数据的格式化输出。Report List可以通过以下参数设置来控制报表标题显示、报表分页控制、参数数据库表及参考Message类等,具体扩展语法如下: ...NO STANDARD PAGE HEADING:输出的报表不包含表头(LIST HEADING)。 ...LINE-SIZE col:设置页宽。 ...LINE-COUNT m(n):设置每页行数及每页间空行数,如LINE-COUNT 18(2)表示每页18行,每页之间空两行。 ...Message-ID mid:在程序中应用标准的Message类。 ...D...
阅读全文
SAP应用界面开发:4)SAP屏幕事件控制
摘要:1)INITIALIZATION事件 该事件在屏幕未显示之前执行,对程序设置值及屏幕元素进行初始化赋值。如下代码: [For Example] PARAMETERSQUAL_DAYTYPEDDEFAULTSY-DATUM. SELECTION-SCREENPUSHBUTTON/1(20)SAVEUSER-COMMANDSAVE. INITIALIZATION."程序初始化事件,該事件在程序屏幕未顯示之前執行。對程序設置值及屏幕元素進行初始化設置. QUAL_DAY+6(2)='01'. QUAL_DAY=QUAL_DAY-1. MOVE'SAVE'TO
阅读全文
SAP应用界面开发:3)SELECTION-SCREEN对象(4)
摘要:前面几篇文章已经学习了ABAP中SELECTION-SCREEN的大部分对象,既然是大部分对象,那么还遗留有小部分对象还未接触,接下来我们将继续学习。 (1)SELECTION-SCREEN COMMONT fmt name. 用于定义或者修改本地元素的注释,包括PARAMETER、CHECKBOX BUTTON等。通过SELECTION-SCREEN COMMENT语法可以按Text Symbols设置的值对其属性重新定义。 [For Example] SELECTION-SCREENBEGINOFLINE. SELECTION-SCREENCOMMENT(12)TEXT-W03FOR...
阅读全文
SAP应用界面开发:3)SELECTION-SCREEN之PUSHBUTTON对象(3)
摘要:在ABAP中在屏幕上创建按钮,你需要在SELECTION-SCREEN对象中加入PUSHBUTTON参数,语法如下: [Syntax] SELECTION-SCREEN PUSHBUTTON [/] <pos(len)> <name> USER-COMMAND <ucom> [MODIF ID <key>] <pos(len)>:PUSHBUTTON按钮在屏幕生成的位置与长度。 <name>:PUSHBUTTON按钮的名称,给按钮赋值时要用到名字。 <ucom>:必须指定的字符代码,当用户在选择屏幕上触发按钮时
阅读全文