在DROOL中的列中查找重复项

时间:2018-08-30 10:36:58

标签: duplicates drools kie-workbench

我的要求是查找列A +列B的值组合在给定表中是否唯一。我正在编写如下规则。其中AccountPendingView是表名。 csUniqueId和dpAccountIdentifier是列,“ fromrequestResponseView.accountPendingList”保存AccountPendingVIew表的所有行。

以下逻辑检查csUniqueId和dpAccountIdentifier的组合是否至少出现一次。但是我想检查csUniqueId和dpAccountIdentifier的组合是否重复多次。

when
    requestResponseView : RequestResponseView() 
    listOfComboUniqueIdAccId: List( size > 0 ) from accumulate 
    ( AccountPendingView( comboId : csUniqueId.concat(dpAccountIdentifier) ) 
    from requestResponseView.accountPendingList; collectList(comboId ) )
    accountPending : AccountPendingView( 
    eval(listOfComboUniqueIdAccId.contains(csUniqueId+dpAccountIdentifier))) 
    from requestResponseView.accountPendingList
then
        System.out.println(listOfComboUniqueIdAccId.size());
        requestResponseView.addToFailedList( accountPending );

0 个答案:

没有答案