如何实现校验-单据体的字段上至少录入了一行数据原创
金蝶云社区-Howhy
Howhy
11人赞赏了该文章 2515次浏览 未经作者许可,禁止转载编辑于2020年07月08日 20:59:15

    有时候,需要在保存时校验单据体的某个字段至少录入了一行数据,因为单据体是多行数据,所以直接使用单据体字段比较是无法实现的,此时需要通过lambda表达式来实现校验,具体示例如下:


    比如,我们想实现,在保存供应商时,财务信息下的单据体至少录入了一行币别的数据,那么如何实现配置呢?

image.png


首先,在单据的保存操作上,配置单据合法性校验

image.png

配置的前提条件上,not ( FBankCurrencyId<>null and len(filter(lambda x:x.FBankCurrencyId<>null, FBankInfo))>0)

这个表达式是lambda表达式,这个表达式的意思是,筛选单据体里面的币别数据,如果长度大于0。然后在逻辑前加了not,表示相反逻辑。当这个逻辑满足是,返回一个true

当不录入币别时,提示消息

image.png


当录入币别时,保存正常,如下:

image.png

赞 11