怎么判断,一个实体下有没有某个操作?原创
金蝶云社区-山抹微云
山抹微云
10人赞赏了该文章 1,693次浏览 未经作者许可,禁止转载编辑于2021年11月10日 18:45:24

  我想用代码,调用“enable"按钮,代码右边,OperationResult result = OperationServiceHelper.executeOperate("enable", this.Formid,this.ids.toArray(), OperateOption.create() );

此时,代码报错如下图image.png

一般写代码时候,都会对元数据比较熟悉。然而,我又想深一点,怎么用代码判断该实体,存不存在操作"enable"。

我以元数据为关键词,查了社区,感谢其他朋友,提供了 获取运行时元数据的方法

FormMetadata formMetadata = (FormMetadata) MetadataDao.readRuntimeMeta(MetadataDao.getIdByNumber("kdps_ichk_voucher", MetaCategory.Form), MetaCategory.Form);

formMetadata的信息如截图

image.png

由此判断是否存在某个操作的代码如下

image.png

代码如下

FormMetadata formMetadata = (FormMetadata) MetadataDao.(MetadataDao.(MetaCategory.)MetaCategory.)List<ControlAp<?>> items = formMetadata.getItems()( ControlAp item  :  items )
{
    ( item kd.bos.metadata.form.control.BarItemAp  )
    {
        String OperationKey=  ((BarItemAp)item).getOperationKey().toString()(  OperationKey.equalsIgnoreCase()  )
        {
            String b = }
    }
}

  创作不易,如有收获,欢迎点赞,谢谢。

赞 10