nc解决自定义参照字段前台保存后只显示主键的问题

2024-06-06 20:36

本文主要是介绍nc解决自定义参照字段前台保存后只显示主键的问题,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

nc解决自定义参照字段前台保存后只显示主键的问题

  • 自定义参照类VoucherRefModel.java
package nc.ui.jych.ref;import nc.ui.bd.ref.AbstractRefModel;/*** @desc 凭证号参照* @author hanh**/
public class VoucherRefModel extends AbstractRefModel {@Overridepublic String[] getFieldCode() {// 参照数据的字段编码return new String[] { "num", "pk_voucher" };}@Overridepublic String[] getFieldName() {// 参照数据的字段名称return new String[] { "凭证号",  "主键" };}@Overridepublic String getRefCodeField() {// TODO 自动生成的方法存根return "num";}@Overridepublic String getRefNameField() {// TODO 自动生成的方法存根return "num";}@Overridepublic String getOrderPart() {// TODO 自动生成的方法存根return null;}/*** 隐藏字段* * @return*/@Overridepublic String[] getHiddenFieldCode() {// TODO 自动生成方法存根return new String[] { "pk_voucher" };}@Overridepublic String getTableName() {// 参照数据的表名return "voucherref_view";}@Overridepublic String getPkFieldCode() {// 参照数据对应表的主键return "pk_voucher";}@Overridepublic String getRefTitle() {// TODO 自动生成的方法存根return "凭证号参照";}@Overridepublic int getDefaultFieldCount() {// TODO 自动生成的方法存根return getFieldCode().length - 1;}@Overridepublic String getWherePart() {String wherePart = super.getWherePart();return wherePart;}@Overridepublic void setWherePart(String newWherePart) {super.setWherePart(newWherePart);}}
  1. 根据自定义参照的字段新建一个视图
CREATE VIEW voucherref_view AS
(select vou.year||'-'||vou.period as period,
typ.name as name,
typ.shortname || '-' || vou.num  as num,
vou.pk_voucher as pk_voucher,
vou.pk_accountingbook as pk_accountingbook
from gl_voucher vou
left join bd_vouchertype typ
on typ.pk_vouchertype = vou.pk_vouchertype
where nvl(vou.discardflag, 'N') != 'Y'
and nvl(vou.tempsaveflag, 'N') != 'Y')
  1. 根据视图中的字段新建一个元数据,元数据的缺省表名为新建的视图名
    在这里插入图片描述
    在这里插入图片描述
  2. 往参照信息表(bd_refinfo)中插入一条记录
select * from bd_refinfo order by ts descinsert into bd_refinfo(CODE,DR,ISNEEDPARA,ISSPECIALREF,LAYER,METADATANAMESPACE,METADATATYPENAME,MODULENAME,NAME,PARA1,PARA2,PARA3,PK_COUNTRY,PK_INDUSTRY,PK_REFINFO,REFCLASS,REFSYSTEM,REFTYPE,RESERV1,RESERV2,RESERV3,RESID,RESIDPATH,TS,WHEREPART)
values('voucherref',--元数据名0,'N',null,null,'jych',--模块名'voucherref',--元数据名'jych',--模块名'凭证号参照',--自定义参照名null,null,null,null,null,'1001A11000001100hanh',--自己构造一个20位的主键'nc.ui.jych.ref.VoucherRefModel',--参照类路径null,0,null,null,null,'1','voucherref',--元数据名'2024-05-30 22:12:25',null);
  1. 更新实体表(md_class)中该自定义参照的帮助名称和参照名称
select * from md_class order by ts descupdate md_classset help = 'DOC', refmodelname = '凭证号参照'where id = '5a202897-d20b-4620-ac3e-214dcfbe613e'

这篇关于nc解决自定义参照字段前台保存后只显示主键的问题的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!


原文地址:
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.chinasem.cn/article/1037165

相关文章

VS配置好Qt环境之后但无法打开ui界面的问题解决

《VS配置好Qt环境之后但无法打开ui界面的问题解决》本文主要介绍了VS配置好Qt环境之后但无法打开ui界面的问题解决,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要... 目UKeLvb录找到Qt安装目录中designer.UKeLvBexe的路径找到vs中的解决方案资源

解决mysql插入数据锁等待超时报错:Lock wait timeout exceeded;try restarting transaction

《解决mysql插入数据锁等待超时报错:Lockwaittimeoutexceeded;tryrestartingtransaction》:本文主要介绍解决mysql插入数据锁等待超时报... 目录报错信息解决办法1、数据库中执行如下sql2、再到 INNODB_TRX 事务表中查看总结报错信息Lock

MySQL启动报错:InnoDB表空间丢失问题及解决方法

《MySQL启动报错:InnoDB表空间丢失问题及解决方法》在启动MySQL时,遇到了InnoDB:Tablespace5975wasnotfound,该错误表明MySQL在启动过程中无法找到指定的s... 目录mysql 启动报错:InnoDB 表空间丢失问题及解决方法错误分析解决方案1. 启用 inno

Druid连接池实现自定义数据库密码加解密功能

《Druid连接池实现自定义数据库密码加解密功能》在现代应用开发中,数据安全是至关重要的,本文将介绍如何在​​Druid​​连接池中实现自定义的数据库密码加解密功能,有需要的小伙伴可以参考一下... 目录1. 环境准备2. 密码加密算法的选择3. 自定义 ​​DruidDataSource​​ 的密码解密3

Java使用MethodHandle来替代反射,提高性能问题

《Java使用MethodHandle来替代反射,提高性能问题》:本文主要介绍Java使用MethodHandle来替代反射,提高性能问题,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑... 目录一、认识MethodHandle1、简介2、使用方式3、与反射的区别二、示例1、基本使用2、(重要)

spring-gateway filters添加自定义过滤器实现流程分析(可插拔)

《spring-gatewayfilters添加自定义过滤器实现流程分析(可插拔)》:本文主要介绍spring-gatewayfilters添加自定义过滤器实现流程分析(可插拔),本文通过实例图... 目录需求背景需求拆解设计流程及作用域逻辑处理代码逻辑需求背景公司要求,通过公司网络代理访问的请求需要做请

电脑蓝牙连不上怎么办? 5 招教你轻松修复Mac蓝牙连接问题的技巧

《电脑蓝牙连不上怎么办?5招教你轻松修复Mac蓝牙连接问题的技巧》蓝牙连接问题是一些Mac用户经常遇到的常见问题之一,在本文章中,我们将提供一些有用的提示和技巧,帮助您解决可能出现的蓝牙连接问... 蓝牙作为一种流行的无线技术,已经成为我们连接各种设备的重要工具。在 MAC 上,你可以根据自己的需求,轻松地

Java 中的跨域问题解决方法

《Java中的跨域问题解决方法》跨域问题本质上是浏览器的一种安全机制,与Java本身无关,但Java后端开发者需要理解其来源以便正确解决,下面给大家介绍Java中的跨域问题解决方法,感兴趣的朋友一起... 目录1、Java 中跨域问题的来源1.1. 浏览器同源策略(Same-Origin Policy)1.

如何清理MySQL中的binlog问题

《如何清理MySQL中的binlog问题》:本文主要介绍清理MySQL中的binlog问题,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目http://www.chinasem.cn录清理mysql中的binlog1.查看binlog过期时间2. 修改binlog过期

如何解决yum无法安装epel-release的问题

《如何解决yum无法安装epel-release的问题》:本文主要介绍如何解决yum无法安装epel-release的问题,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不... 目录yum无法安装epel-release尝试了第一种方法第二种方法(我就是用这种方法解决的)总结yum