2012年8月24日

摘要: 系统变量SY-INDEX与SY-TABIX是用来记录循环的次数或者索引的,不同的是SY-INDEX在DO....ENDDO中是有效的,而SY-TABIX在LOOP....ENDLOOP中及READ内表时获取相应的索引。 DATA:BEGINOFSTUDENTOCCURS0, NAME(10)TYPEC, AGETYPEI, ENDOFSTUDENT. DATADENTLIKELINEOFSTUDENT. STUDENT-NAME='JACK'. STUDENT-AGE=20. APPENDSTUDENT. STUDENT-NAME='JIM'. STUDENT- 阅读全文
posted @ 2012-08-24 09:50 KenNgai 阅读(27097) 评论(0) 推荐(1) 编辑

2012年8月14日

摘要: TYPES关键字用于创建自定义数据类型,就像JAVA里面创建类一样,用TYPES创建的数据类型可以被其它变量引用(类似于实例化对象),而本身不能直接引用或者赋值。 DATA关键字用于定义结构体,可以自定义结构体或者参考某一个自定义类型创建对象,我把它称为实例化对象。 [For Example] TYPES:BEGINOFILINE,"創建一個類型,包含三個字段TYPES:定義的是類型DATA:則為對象 FIRST_NAME(30)TYPEC, LAST_NAME(30)TYPEC, AGETYPEI, ENDOFILINE. DATAWATYPEILINE."定义一个结构  阅读全文
posted @ 2012-08-14 20:44 KenNgai 阅读(6976) 评论(1) 推荐(0) 编辑

2012年8月1日

摘要: ABAP中FORM参数的传递有以下几种方式。 1.引用传递(CALL BY REFERENCE) 传递参数时将参数的地址(ADDRESS)传至子程序中,也就是子程序中的参数变量与外部程序的参数变量共享地址内的值。又叫CALL BY ADDRESS,若子程序中的参数变量的值发生了改变,那么,外部程序的实际变量的值也发生改变。 [Syntax] FORM <subform> [USING <f1> <f2>...] [CHANGING <fr1> <fr2>...] PERFORM <subform> [USING <f 阅读全文
posted @ 2012-08-01 22:05 KenNgai 阅读(16962) 评论(0) 推荐(4) 编辑

2012年7月26日

摘要: 之前写过一篇简单的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... 阅读全文
posted @ 2012-07-26 22:16 KenNgai 阅读(1556) 评论(0) 推荐(0) 编辑

2012年7月25日

摘要: 除了可以用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... 阅读全文
posted @ 2012-07-25 10:13 KenNgai 阅读(4934) 评论(0) 推荐(0) 编辑
 
摘要: 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... 阅读全文
posted @ 2012-07-25 09:44 KenNgai 阅读(9776) 评论(0) 推荐(0) 编辑

2012年7月18日

摘要: 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... 阅读全文
posted @ 2012-07-18 22:57 KenNgai 阅读(4000) 评论(0) 推荐(1) 编辑
 
摘要: 在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.. 阅读全文
posted @ 2012-07-18 22:36 KenNgai 阅读(2237) 评论(0) 推荐(0) 编辑

2012年7月14日

摘要: 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个部分... 阅读全文
posted @ 2012-07-14 10:33 KenNgai 阅读(7595) 评论(1) 推荐(1) 编辑

2012年7月13日

摘要: 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类型为警告。 也可以在程序开头直接引用 阅读全文
posted @ 2012-07-13 11:16 KenNgai 阅读(2529) 评论(0) 推荐(0) 编辑