黑白差异检查和if语句

2020-09-01 14:54发布

         点击此处--->   EasySAP.com群内免费提供SAP练习系统(在群公告中)

加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)


差异黑白检查和if语句

         点击此处--->   EasySAP.com群内免费提供SAP练习系统(在群公告中)

加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)


差异黑白检查和if语句

付费偷看设置
发送
8条回答
宇峰Kouji
2楼-- · 2020-09-01 15:13

问题来自2008年!...。无需从死里复活。

hengyuye
3楼-- · 2020-09-01 14:59

学习搜索。

学习使用在线帮助。

me_for_i
4楼-- · 2020-09-01 15:14

嗨,

LOOP ... WHERE比LOOP/CHECK快,因为LOOP ... WHERE

内部评估指定条件。

与任何逻辑表达式一样,如果

比较的

操作数具有相同的类型。

结合使用LOOP ... WHERE可以进一步提高性能

如果可能,使用FROM i1和/或TO i2

我将为您提供帮助。

Rgds

Yogesh

Haoba3210
5楼-- · 2020-09-01 15:23

Check语句,在循环中检查条件,如果满足条件,则控制移至循环中的下一条语句。 否则,它将终止循环。

[ http://help。 sap.com/saphelp_nw04/helpdata/en/fc/eb3571358411d1829f0000e829fbfe/content.htm ]

绝对有用

给予帮助

致谢

拉克什曼

Doze时光
6楼-- · 2020-09-01 15:00

嗨!

IF

语法

IF log_exp1。

[statement_block1]

[ELSEIF log_exp2。

[statement_block2]]

...

[ELSE。

[statement_blockn]]

ENDIF。

效果

这些语句定义了一个控制结构,该结构可以包含几个statement_block语句块。 根据逻辑表达式log_exp,最多执行一个块。

在IF和ELSEIF之后,可以指定任意数量的逻辑表达式log_exp,而表达式statement_block表示任何种类的语句块。

从顶部到底部检查逻辑表达式

使用IF语句,并且在执行第一个真逻辑表达式之后执行语句块。 如果逻辑表达式都不为真,则执行ELSE语句之后的语句块。

如果到达已执行语句块的末尾,或者未执行任何语句块,则在ENDIF之后恢复处理。

示例

将时间输出转换为盎格鲁美国符号

数据时间类型t。

时间= sy-uzeit。

IF时间<'120000'。

写:/次,'AM'。

ELSEIF时间>'120000'和

时间<'240000'。

时间=时间-12 *3600。

写:/次,'PM'。

ELSE。

写/'正午'。

ENDIF。

语法

检查log_exp。

效果

如果语句CHECK在循环中执行并且log_exp不正确,则语句CHECK立即终止当前循环遍历,程序继续进行下一个循环遍历。 对于log_exp,可以指定任何逻辑表达式。

注意

在循环外,语句CHECK退出当前处理块(请参阅CHECK处理块)。

示例

当循环索引sy-index为奇数时,使用CHECK终止循环。

数据余数TYPE i。

做20次。

余数= sy-index MOD2。

检查余数=0。

写/sy-index。

ENDDO。

注意:

如果条件为true,则执行if-endif块代码,否则忽略该小块。

可以在if-else if-endif中检查多个条件,因为检查只能在单个条件下进行。

检查声明

检查

如果您要在转到下一条语句之前检查条件,则此语句将适用。 如果检查结果为u2019TRUEu2019,系统将照常进行下一步。 如果检查结果为u2019FALSEu2019,则系统将像CONTINUE语句那样运行。

示例

做4次。

写:/sy-index。

检查sy-index>2。

写:u2019Afteru2019。

ENDDO。

输出为

1

2

3之后

4之后

希望这会有所帮助

奖励积分,如果有帮助。

SAP小菜
7楼-- · 2020-09-01 15:02

嗨,

check语句在循环内编码。 它的作用就像继续,将控制权立即传递给循环的终止语句,并绕过它们之间的语句。 与continue不同,它接受逻辑表达式。 如果表达式为真,则不执行任何操作。 如果为假,则跳转到循环结束。

当逻辑表达式为false时,

check的行为类似于continue语句。 如果为真,则不执行任何操作。

检查语句的语法

以下是check语句的语法。 它可以在do,while,select或loop中使用。

[执行/执行/选择/循环]

---

检查经验

---

[enddo/endwhile/endselect/endloop]

其中:

u2022exp是一个逻辑表达式。

u2022 ---代表任意多行代码。

ABAP/4中的if语句具有用于相等和不相等的关系运算符,以及用于字符串比较和位掩码的特殊关系运算符。

以下是if语句的语法。

如果[not] exp [和[not] exp] [或[not] exp]。

---

[elseif exp。

---]

[否则。

---]

endif。

其中:

u2022exp是一个逻辑表达式,其结果为true或false。

u2022 ---代表任意数量的代码行。 甚至允许零行。

以下几点适用:

u2022如果必须具有匹配的endif。

u2022else和elseif是可选的。

u2022可以使用括号。 每个括号必须用空格隔开。 例如,如果(f1 = f2)或(f1 = f3)是正确的,而(f1 = f2)或(f1 = f3)是不正确的。

u2022变量可以使用空格或零进行比较(使用加法运算符开头)。 例如,如果f1是initial,则如果f1是c类型且为空白,则为true。 如果f1是任何其他数据类型,则如果f1包含零,则该语句为true。

u2022要完成求反,不必在逻辑表达式之前。 例如,如果f1不是初始值,则是正确的。 如果f1不是初始值,则不正确。

u2022使用加法为null的变量可以与null进行比较。 例如,如果f1为null。

如果有帮助,请

奖励。

此致

Rajyalakshmi

编辑:Rajyalakshmi Attili于2008年6月2日下午3:03

一周热门 更多>