SAP ABAP 基本语法
语句
ABAP源程序由注释和ABAP语句组成。 ABAP中的每个语句都以关键字开头,以句点结尾,ABAP不区分大小写。
程序中的第一个非注释行以单词REPORT开头。 报告将始终是创建的任何可执行程序的第一行。 该语句后面是以前创建的程序名称。 然后用一个满程终止该行。
语法是 –
REPORT [Program_Name].
[Statements…].
这允许语句根据需要在编辑器中占用尽可能多的行。 例如,REPORT可能看起来像这样 –
REPORT Z_Test123_01.
语句包括命令和任何以句点结尾的变量和选项。 只要句子出现在语句的结尾,就不会出现问题。 正是这个时期,标志着声明的完成。
让我们编写代码。
在REPORT语句下面的行,只需键入以下语句:写“ABAP Tutorial”。
REPORT Z_Test123_01.
Write 'This is ABAP Tutorial'.
撰写语句时需要考虑的四件事:
- 写语句将引号中的任何内容写入输出窗口。
- ABAP编辑器将所有文本转换为大写,除了由单引号包围的文本字符串。
- 与一些较旧的编程语言不同,ABAP不关心语句在一行上开始的位置。 您可以利用这一点,并通过使用缩进指示代码块来提高程序的可读性。
- ABAP对语句的布局没有限制。 也就是说,可以在单个行上放置多个语句,或者单个语句可以跨多个行扩展。
冒号表示法
如果每个语句的开头是相同的,则连续语句可以链接在一起。 这是使用冒号(:)运算符和逗号,用于终止单个语句,就像句点结束正常语句。
下面是一个程序的例子,可以保存一些关键抚摸 –
WRITE 'Hello'.
WRITE 'ABAP'.
WRITE 'World'.
使用冒号表示法,可以这样重写
WRITE: 'Hello',
'ABAP',
'World'.
像任何其他ABAP语句,布局没有关系。 这是一个同样正确的声明 :
WRITE: 'Hello', 'ABAP', 'World'.
注释
内联注释可以通过以下两种方法之一在程序中的任何位置声明:
- 通过在行的第一个位置放置星号(*)来指示全行注释,在这种情况下,整个行被系统认为是注释。 注释不需要以句点终止,因为它们可能不会跨越多个行延伸。
* This is the comment line
- 部分行注释通过在语句之后输入双引号(“)来表示,双引号后面的所有文本都被系统视为注释。您无需在一段时间内终止部分行注释,因为它们不能跨越更多 比一条线。
WRITE 'Hello'. "Here is the partial comment
注意 – 注释代码未由ABAP编辑器大写。
抑制空白
NO-ZERO命令在DATA语句之后。 它抑制包含空格的数字字段的所有前导零。 输出通常更容易让用户阅读。
例子
REPORT Z_Test123_01.
DATA: W_NUR(10) TYPE N.
MOVE 50 TO W_NUR.
WRITE W_NUR NO-ZERO.
上面的代码产生以下输出 –
50
注意 – 没有NO-ZERO命令,输出为:0000000050
空白线
SKIP命令有助于在页面上插入空行。
例子
消息命令如下:
WRITE 'This is the 1st line'.
SKIP.
WRITE 'This is the 2nd line'.
上述消息命令产生以下输出
This is the 1st line
This is the 2nd line
我们可以使用SKIP命令插入多个空白行。
SKIP number_of_lines.
输出将是由线数定义的几个空白行。 SKIP命令还可以将光标定位在页面上所需的行上。
SKIP TO LINE line_number.
此命令用于在页面上上下动态移动光标。 通常,在此命令后发出WRITE语句,将输出放在所需的行上。
插入线
ULINE命令自动在输出插入一条水平线。 也可以控制线的位置和长度。 语法很简单:
ULINE.
例子
消息命令如下:
WRITE 'This is Underlined'.
ULINE.
上面的代码产生以下输出:
This is Underlined (and a horizontal line below this).
消息
MESSAGE命令显示由程序开始处REPORT语句中指定的消息ID定义的消息。 消息ID是一个2字符代码,用于定义在使用MESSAGE命令时程序将访问的1000个消息的集合。
消息编号从000到999.与每个数字相关联的消息文本最多为80个字符。 调用消息号时,将显示相应的文本。
以下是用于Message命令的字符。
信息 | 类型 | 后果 |
---|---|---|
E | Error | 消息出现,应用程序在当前点暂停。 如果程序在后台模式下运行,则作业将被取消,并且消息将记录在作业日志中。 |
W | Warning | 将出现该消息,用户必须按Enter键才能继续应用程序。 在后台模式下,消息将记录在作业日志中。 |
I | Information | 将打开一个弹出窗口,其中包含消息文本,用户必须按Enter键才能继续。 在后台模式下,消息将记录在作业日志中。 |
A | Abend | 此消息类将取消用户当前正在使用的事务。 |
S | Success | 这会在屏幕底部提供一条信息性消息。 显示的信息是正性的,它只是为用户反馈。 该消息不以任何方式阻碍程序。 |
X | Abort | 此消息中止程序并生成ABAP短转储。 |
错误消息通常用于阻止用户做不应该做的事情。 警告消息通常用于提醒用户他们的行动的后果。 信息消息给用户有用的信息。
例子
当我们为消息创建消息时,ID AB,MESSAGE命令 – MESSAGE E011给出以下输出:
EAB011 This report does not support sub-number summarization.
企业上SAP软件为何选择赛锐信息作为实施商?
1、致力于SAP ERP系统应用的服务商;
2、已为国内200多家SAP系统客户的ERP信息化建设提供了咨询及实施服务;
3、拥有完善的产品策划、研发、实验、测试、质量控制过程;
4、公司自主研发的AMS系列软件产品是国内首个用于SAP权限风险识别的增强系统;
5、为用户管理、风险规避和信息审计提供辅助工具;
6、帮助用户规范企业的管理行为,建立合规的管控流程,有效提高企业IT资产投资回报率;
7、技术指标上拥有完全的、独立的领先优势,可以满足市场竞争、技术许可和标准制定等方面的需要;