在信息管理员中的字符串中检查特殊字符计数

2020-09-05 17:41发布

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

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


我有一个字符串列说COLUMN1,其值例如XX.XXX.XXX/XX.XXXX/XX.XXX.XXXX.XXXX等,还有另外一列说COLUMN2具有整数值,例如1,2,3, 等

我需要检查如果COLUMN2的值等于COLUMN1中的period。(。),则应将这样的记录传递给其他人,否则失败。

例如-如果COLUMN1 = XX.XXXX,则COLUMN2 = 1-通过

如果COLUMN1 = XX.XXX.XXX,则COLUMN2 = 2-通过

如果COLUMN1 = XX.XXX.XXX.XXX和COLUMN2 = 2-失败等等。

如何在Information Steward的规则编辑器中进行检查? 请帮助我。

提前谢谢!

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

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


我有一个字符串列说COLUMN1,其值例如XX.XXX.XXX/XX.XXXX/XX.XXX.XXXX.XXXX等,还有另外一列说COLUMN2具有整数值,例如1,2,3, 等

我需要检查如果COLUMN2的值等于COLUMN1中的period。(。),则应将这样的记录传递给其他人,否则失败。

例如-如果COLUMN1 = XX.XXXX,则COLUMN2 = 1-通过

如果COLUMN1 = XX.XXX.XXX,则COLUMN2 = 2-通过

如果COLUMN1 = XX.XXX.XXX.XXX和COLUMN2 = 2-失败等等。

如何在Information Steward的规则编辑器中进行检查? 请帮助我。

提前谢谢!

付费偷看设置
发送
4条回答
小c菟菟
1楼 · 2020-09-05 18:22.采纳回答

不需要此视图。

一个简单的规则就可以解决问题:

BEGIN
RETURN length($ parameter0)-length(replace_substr( $ parameter0,'。',``,1,null))= $ parameter1;
END

土豆飞人
2楼-- · 2020-09-05 18:10

是的,在发布问题后执行了此操作,并且它可以正常工作。

悻福寶寶
3楼-- · 2020-09-05 18:24

我非常感谢您的帮助!

暮风yp
4楼-- · 2020-09-05 18:12

我为此规则检查创建了一个视图,并添加了新列CNT,其中在过滤条件下,我使用了replace_substr函数来替换所有点为 任何其他字符串,然后计算此类替换的数量。

此后,在规则编辑器中,我编写了一个简单的规则来检查此计数列的值是否等于COLUMN2,那么IS应该通过,否则记录失败。

在视图中过滤条件中的语法:

CNT = count(replace_substr(COLUMN1,'。','@',1,null))

规则编辑器中的SYNTAX:

开始

IF(CNT = COLUMN2)

返回TRUE;

ELSE

返回假;

END

它成功运行,没有任何错误,并且对于少量数据,它提供了正确的计数。 但是,对于大多数数据,它的计数为1。

有人可以帮我吗? 这非常紧急。 预先感谢!

一周热门 更多>