如何在单据头字段、单据体标题显示帮助文档原创
金蝶云社区-闫方亮
闫方亮
5人赞赏了该文章 920次浏览 未经作者许可,禁止转载编辑于2022年08月01日 09:58:32

一、需求背景

        在单据页面中单据头字段、单据体标题出可以有“?”鼠标移动过去显示帮助文档。

二、思路与方案

        可以通过插件在afterBindData中给字段添加Tips对象,会发现单据头字段添加后生效,单据体字段添加Tips对象后不生效,这样只能通过分析元数据,然后通过赋值字段属性的方式去给单据体字段赋值。

image.png

三、实现过程

        通过后台插件获取页面字段绑定Tips对象,然后通过获取单据体对象然后,设置单据体列属性,插件代码如下

 @Override
    public void afterBindData(EventObject e) {
        super.afterBindData(e);

       //获取单据头字段
        FieldEdit fieldEdit=this.getControl("billno"); //单据头字段
        fieldEdit.addTips(getTips("deeedddee"));

        ////////////////单据体中的标题上面添加帮助显示的信息////////
        EntryGrid entryGrid=this.getControl("entryentity"); //单据体
        Map m = new HashMap<>();
        Map m1 = new HashMap<>();
        Map m2 = new HashMap();
        m1.put("zh_CN","11111111111111");
        m2.put("zh_CN","tttttt");
        m.put("content",m1);    //内容
        m.put("type","text");   //帮助文档类型
        m.put("title",m2);      //标题  
        entryGrid.setColumnProperty("kdec_textfield","tips",m);  //对应的单据体列

    }

    //设置帮助对象
    private Tips getTips(String context){            
        Tips tips=new Tips();
        tips.setType("text");
        tips.setTitle(new LocaleString("jdjdiei"));
        tips.setContent(new LocaleString(context));
        return tips;
    }
}

四、效果图

image.png

image.png

赞 5