2012年5月17日

摘要: Open SQL能够方便的实现数据库数据的读取及修改,其对数据库主要操作语法包括:SELECT、UPDATE、INSERT、DELETE及MODIFY。 Open SQL的执行状态通过系统变量SY-SUBRC来表现,如果SY-SUBRC值为0,则表示Open SQ执行成功,如果不为0,则表示执行失败。 1.SELECT语法结构 SELECT 语句用于实现对数据的查询,其语法结构如下: SELECT <result> FROM <dbtab> INTO <target> WHERE <condition> GROUP BY <fields&g 阅读全文
posted @ 2012-05-17 15:41 KenNgai 阅读(2229) 评论(0) 推荐(0) 编辑
 
摘要: SAP实际上提供了两种访问数据库的方式:Open SQL与Native SQL,Native SQL为数据库自身的SQL,可以直接访问数据库,能够实现对数据库表及视图直接进行创建、修改、删除等操作。开发人员首先必须了解底层数据库SQL语法,而且Native SQL能直接对数据库表进行修改删除等操作,具有一定的安全风险,对SAP执行效率也会有较大的影响,一般不推荐使用。不过Native SQL有时候也能实现一些Open SQL无法实现的功能。这将在后面介绍。 Open SQL是完全集成到ABAP语言中的标准SQL子集,它可以通过SAP的数据库接口来识别不同的数据库,然后由该接口把SAP的Ope. 阅读全文
posted @ 2012-05-17 15:07 KenNgai 阅读(3289) 评论(0) 推荐(1) 编辑

2012年4月14日

摘要: 宏(Macros)是一段独立的代码,能实现数据的运算与输出,功能与子程序类似,主要应用于同一程序中某些重复的运算,以简化代码,其定义语法如下: DEFINE INCREMENT. "INCREMENT为自定义宏的名称。 ...... END-OF-DEFINITION. 对宏的参数传递通过&N来实现,N为整数,即调该宏的参数顺序。 DEFINE INCREMENT. "定义宏 ADD 1 TO &1. WRITE: / &1. WRITE: / &2. END-OF-DEFINITION. DATA:number TYPE I VALUE 1 阅读全文
posted @ 2012-04-14 20:00 KenNgai 阅读(4694) 评论(0) 推荐(0) 编辑
 
摘要: ABAP子程序(Subrouting)是包含在程序中的一段具有一定功能的代码,能够将某个功能作为一个小程序包含在主程序中,以方便程序分析及阅读。特别是一此程序中多次用到的功能,可以简化代码,增加程序的可读性且便于维护。 1.子程序的定义 通过FORM...ENDFORM语名可以实现子程序的定义,通过PERFORM语句来实现子程序的调用。 [For Example] PERFORM welcome. "调用子程序 FORM welcome. "定义子程序 WRITE / 'subrouting'. ENDFORM. 2.子程序接口参数的定义及使用 子程序实现了 阅读全文
posted @ 2012-04-14 16:41 KenNgai 阅读(6604) 评论(0) 推荐(1) 编辑

2012年4月8日

摘要: 在SAP业务处理中,存在许许多多数据流,分别管控着不同的业务模式。下面介绍如何通过ABAP语法来实现数据流程管控。 1)使用IF语句实现分支 [Syntax] IF <condition1>. <statement block>. ELSEIF <condition2>. <statement block>. ELSE. <statement block> ENDIF. [For Example] DATA xx TYPE N VALUE 6. IF xx = 5. WRITE: / 'The value of xx is&# 阅读全文
posted @ 2012-04-08 15:28 KenNgai 阅读(7868) 评论(0) 推荐(0) 编辑

2012年3月29日

摘要: 本篇文章主要介绍ABAP编程中字符串的控制与操作,好了废活说多了也没用,开始吧。 1)CONCATENATE:实现字符串的合并。 基本语法: CONCATENATE f1...fn INTO g [SEPARATED BY h] FOR EXAMPLE: DATA:one(10) VALUE 'Hello', two(10) VALUE 'SAP', result1(10), result2(10), l1 TYPE I, l2 TYPE I. CONCATENATE one two INTO result1 SEPARATED BY SPACE. CONCAT 阅读全文
posted @ 2012-03-29 21:13 KenNgai 阅读(12326) 评论(0) 推荐(0) 编辑

2012年3月28日

摘要: 程序中缺少不了数据运算,以下介绍ABAP所支持的运算符。 (1)算术运算符 算术运算符有 +(加)、-(减)、*(乘)、/(除)、DIV(整除)、MOD(取余)、**(乘方)。 运算符的基本格式为: [COMPUTE] n=<mathematical expression>. 运算符与变量之间必须有空格,实现某变量的加法语言发如下: DATA: int TYPE I. COMPUTE int = int + 10. int = int + 10. ADD 10 TO int. (2)比较运算符 比较运算符有EQ或=(等于)、NE或<>(不等于)、LT或<(小于)、 阅读全文
posted @ 2012-03-28 21:13 KenNgai 阅读(19644) 评论(0) 推荐(4) 编辑
 
摘要: 在其它编程语言中,数据之间的转换是非常普遍的。当然,在ABAP编程中也同样涉及到数据之间的相互转换,在不同的数据对象之间赋值,系统会自动进行类型转换,转换过程遵照固定规则进行,例如将一个C类型数据赋值也N类型对象,只有数字字符被传递,其它字符则被忽略。 FOR EXAMPLE: DATA:ttext(10) TYPE C VALUE 'ABC1234567', tnum(10) TYPE N, tint TYPE I. tnum = ttext. tint = tnum. WRITE: / 'tnum=',tnum, / 'tint=',tint 阅读全文
posted @ 2012-03-28 20:31 KenNgai 阅读(15849) 评论(0) 推荐(1) 编辑

2012年3月21日

摘要: 数据在屏幕输出是用户获取信息的重要途径之一,本篇将介绍如何在SAP中实现数据输出及数值传递。 1)数据的基本输出 通过关键字"WRITE"的声明,能够实现数据对象的输出,并能够实现输出对象的长度、输出位置及格式等属性的控制。与变量定义一样,WRITE可以同时输出多个数据对象,对于不同的对象可以通过反斜杠”/”换行输出。 FOR EXAMPLE: DATA:WORD(16) VALUE '0123456789ABCDEF'. DATA:N TYPE I VALUE 123. WRITE WORD. "单独输出一个变量. WRITE:WORD,N. & 阅读全文
posted @ 2012-03-21 20:29 KenNgai 阅读(8944) 评论(0) 推荐(1) 编辑

2012年3月19日

摘要: 内表与结构体基本类似,它同样是程序运行中被临时创建的一个存储空间,它是一个可包含多条记录的数据表。 内表共有3种类型: 1)Standard:标准表 2)Sorted:排序表 3)Hashed:哈希表,一般用的比较少 本篇文件将重点介绍Standart型内表的定义及功能 1.内表的定义 通过关键字DATA对内表进行创建,内一的定义可以直接参考结构体或者其它内表及透明表,也可以直接定义字段,其中关键字如下: UNIQUE|NON-UNIQUE:指定关键字,只能应用于排序表或者哈希表。 INITIAL SIZE n:指定初始化内表大小。 WITH HEADER LINE:定义内表是否有表头。 具. 阅读全文
posted @ 2012-03-19 21:07 KenNgai 阅读(32466) 评论(1) 推荐(3) 编辑