循环验证

2020-09-10 10:11发布

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

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


有一个包含3列的内部表

其采样数据如下。

XX YY错误

a b

a

b n

b x

b y

c w

c t

x d

d

n c

n p

n j

p q

q r

r s

s d

对于所有循环记录,必须将err列设置为X。

循环记录是指YY = XX的循环记录。

从第一条记录开始,开始搜索,并搜索所有XX = b的记录。

找到b n,b x,b y

然后我们用YY搜索找到的内容,依此类推。

上例中的循环记录集(1)

a b

b n

n p

p q

q r

r s

s d

d

上例中的循环记录Set(2)

a b

b x

x d

d

因此,执行后输出应如下所示

XX YY错误

a b X

a

b n X

b x X

b y

c w

c t

x d X

一个X

n c

n p X

n j

p q X

q r X

r s X

s d X

有人可以提出一些逻辑吗?

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

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


有一个包含3列的内部表

其采样数据如下。

XX YY错误

a b

a

b n

b x

b y

c w

c t

x d

d

n c

n p

n j

p q

q r

r s

s d

对于所有循环记录,必须将err列设置为X。

循环记录是指YY = XX的循环记录。

从第一条记录开始,开始搜索,并搜索所有XX = b的记录。

找到b n,b x,b y

然后我们用YY搜索找到的内容,依此类推。

上例中的循环记录集(1)

a b

b n

n p

p q

q r

r s

s d

d

上例中的循环记录Set(2)

a b

b x

x d

d

因此,执行后输出应如下所示

XX YY错误

a b X

a

b n X

b x X

b y

c w

c t

x d X

一个X

n c

n p X

n j

p q X

q r X

r s X

s d X

有人可以提出一些逻辑吗?

付费偷看设置
发送
10条回答
小灯塔
1楼 · 2020-09-10 11:10.采纳回答

您可以尝试子程序的迭代调用:这是算法。

ITAB上的循环。

PERFORM F_CYCLE表ITAB

使用ITAB-YY

Endloop。

* ------------------------------

FORM F_CYCLE。

在ITAB处循环,其中XX = YY进入LS_LINE。

设置ITAB-ERR ='X'。

PERFORM F_CYCLE表ITAB

使用LS_LINE-YY

Endloop。

ENDFORM。

Nir深蓝
2楼-- · 2020-09-10 10:50

您能告诉我您在ABAP中提出的逻辑吗?

不。 这是留给程序员付费的编程解决方案。

数据的来源无关紧要,为什么要提呢? 此外,我所说的内容没有任何内容表明必须定义循环数。 您从一个元素开始,测试那里的所有可能性,然后接受下一个元素并在那里测试所有可能性,直到没有剩余元素为止。 有一些优化的余地,就好像您有A-> B,那么您显然不需要再次检查B。

何必丶何苦呢
3楼-- · 2020-09-10 10:58

请使用COMMENT按钮答复有人要求 细节。 答案仅是提出解决方案。

nice_wp
4楼-- · 2020-09-10 11:09

请使用"评论"按钮回复询问详细信息的人。 答案仅是提出解决方案。

一周热门 更多>