NC6通过配置模板方式生成函数界面

更新时间:2023-10-13 17:24:02 阅读量: 综合文库 文档下载

说明:文章内容仅供预览,部分内容可能不全。下载后的文档,内容与下面显示的完全一致。下载之前请确认下面内容是否您想要的,是否完整无缺。

NC6通过单据模板配置函数界面

由于在开发函数过程中,每次都需要花费大量时间在写代码在开发界面上,且界面风格各异,如下图:

为解决这个问题,现在提供通过配置模板方式,来生成界面,只需要几步操作,即可生成需要的函数界面 第一步:

指标模块(bgim_functionui),绩效模块(bgpm_functionui)在这个表,插入一条数 据,这张表有这么几个字段

pk_functionui,functionname,templetecode,functioncname,classname,下面先解释每个字段的作用,pk_functionui为这个表主键,functionname为函数名,templetecode为单据模板编号,functioncname为函数中文名,classname为扩展的UIPanel类名,可以为空(这个后续会介绍使用方法).

第二步:

在往以上表插入一条数据之后,根据之前所填写的单据模板编号,现在到单据模板初始化中进行新增模板 如下图 :

注意我们新建单据模板时,无需元数据,直接新增即可

随即进入模板编辑界面如下图

在表头新增你需要的控件字段,说明几点,你需要什么类型控件可以在控件的高级属性中的数据类型设置,例如参照,下拉,日期等等,并且也可以设置非空属性。 参照举例:

下拉:

下拉这里比较灵活,但是建议用名值对应方式,点击增加即可增加名称和值各项值

第三步:

单据模板保存之后,我们的函数界面即可做好,在双击函数时,即可打开配置的界面,如下图:

现在介绍扩展UIpanel的用法:

可能通过配置的情况下,很多情况无法满足我们的要求,例如参照过滤,控件动态变情况。所以提供扩展的panel类,大家可以写自己的界面的业务处理逻辑 在之前指标模块(bgim_functionui),绩效模块(bgpm_functionui)表中的classname

写为自己的新建的一个UIpanel类路径名称,指标模块举例:新建一个类继承nc.ui.bgim.pub.formula.FunctionUIPanel 如果需要进行控件的编辑前或者编辑后事件,请重写

@Override

publicbooleanbeforeEdit(BillItemEvent e) {

returntrue; }

@Override

publicvoidafterEdit(BillEditEvent e) { } 方法,

以下介绍几个特殊情况处理: 新增参照返回值处理问题:

现在我们所做的函数中若带有参照的,可能我们需要返回编码或者主键,现在模板配置方式默认是返回主键,如果需要返回编码,请配置扩展类,

@Override

publicvoidinit() { super.init();

setRefPaneReturnCode(new String[]{\}); }

如上代码,数组中传入的是你需要返回为编码的参照的billitem的code

处理控件为空,但是需要显示自定义的名称问题:

有一种情况是,函数在设置的时候,其实是不需要设置值的,如下图:

.

不设置任何字段点击确定后,现在的情况是返回到界面样式如下:

这样显示出来的值对于易用性方面和开发后台处理方面都存在一定的问题,所以现在提供如下方式处理这类问题

@Override

publicvoidinit() { super.init();

setRefPaneReturnCode(new String[]{\}); setNullBillitemValue(new String[]{\, \,\,\}, \, \全部\); }

在扩展类中加上如上setNullBillitemValue(new String[]{\,

\,\,\}, \, \全部\);这段代码,数组传入的是billitem的code,“0”为函数英文需要显示的名称,“全部”为函数中文需要显示的名称

设置后,效果图如下:

本文来源:https://www.bwwdw.com/article/834f.html

Top