ABAP 基本语法

ABAP 基本语法

    • 语句
    • 撰写语句时需要考虑的四件事:
    • 注释
    • 抑制空白
    • 空白线
    • 插入线
    • 消息

语句

ABAP源程序由注释和ABAP语句组成。 ABAP中的每个语句都以关键字开头,以句点结尾,ABAP不区分大小写。

程序中的第一个非注释行以单词REPORT开头。 报告将始终是创建的任何可执行程序的第一行。 该语句后面是以前创建的程序名称。 然后用一个满程终止该行。

语法是

REPORT [Program_Name]. 
 
[Statements…]. 

这允许语句根据需要在编辑器中占用尽可能多的行。 例如,REPORT可能看起来像这样 -

REPORT Z_Test01. 

语句包括命令和任何以句点结尾的变量和选项。 只要句子出现在语句的结尾,就不会出现问题。 正是这个时期,标志着声明的完成。让我们编写代码。

在REPORT语句下面的行,只需键入以下语句:写“Hello World!"。

REPORT Z_Test01.
Write 'Hello World!'. 

撰写语句时需要考虑的四件事:

  • 写语句将引号中的任何内容写入输出窗口。

  • 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_Test01. 

DATA: W_NUR(10) TYPE N.
      MOVE 12345678 TO W_NUR.
      WRITE W_NUR NO-ZERO.

上面的代码产生以下输出 -
ABAP 基本语法_第1张图片

空白线

SKIP命令有助于在页面上插入空行。

例子
消息命令如下:

WRITE '这是第一行'. 
SKIP. 
WRITE '这是第二行'. 

上述消息命令产生以下输出
ABAP 基本语法_第2张图片

我们可以使用SKIP命令插入多个空白行。

SKIP 5.

输出将是由线数定义的几个空白行。 SKIP命令还可以将光标定位在页面上所需的行上。

SKIP TO LINE line_number. 

此命令用于在页面上上下动态移动光标。 通常,在此命令后发出WRITE语句,将输出放在所需的行上。

插入线

ULINE命令自动在输出插入一条水平线。 也可以控制线的位置和长度。 语法很简单:

ULINE.

例子
消息命令如下:

WRITE '下面有条下划线'.
ULINE.

上面的代码产生以下输出:
ABAP 基本语法_第3张图片

消息

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.

参考自W3CSchool文章

你可能感兴趣的:(abap,sap)