卡片分录的行数据-标签名称修改原创
金蝶云社区-蔡销
蔡销
0人赞赏了该文章 407次浏览 未经作者许可,禁止转载编辑于2023年11月02日 11:02:22

需求如下:卡片分录行上有标签,用于展示行数据的关键信息,那标签的名称就需要按行的关键信息来动态展示;


实现如下:


在afterBindData事件上进行处理,需要获取卡片分录的控件和数据,循环卡片分录的数据,进行修改标签名称,代码如下:


 DynamicObjectCollection entryColl = this.getModel().getDataEntity(true).getDynamicObjectCollection("xxxx");


CardEntry cardEntry = this.getControl("xxxx");



for (int i = 0; i < entryColl.size(); i++) {

   //xx处理人

   DynamicObject handler = item.getDynamicObject("xxx_creater");

    Map<String, Object> map = new HashMap<>();

            String value = "";

            if (handler != null) {

                value = handler.getLocaleString("name").getLocaleValue_zh_TW() + "(" 

                             + handler.getString("number") + ")";

            }

            map.put("text", value);

            Map<String, Object> mapNew = new HashMap<>();

            mapNew.put("标签标识", map);

            //修改名称

            cardEntry.setCustomProperties(cardEntry.getKey(), i, mapNew);

}


赞 0