NCC自定义参照开发
1. 在bd_refinfo中手工添加一条数据
insert into bd_refinfo (CODE, DR, ISTREELAZYLOAD, ISNEEDPARA, ISSPECIALREF, LAYER, METADATANAMESPACE, METADATATYPENAME, MOBILEREFPATH, MODULENAME, NAME, PARA1, PARA2, PARA3, PK_COUNTRY, PK_INDUSTRY, PK_REFINFO, REFCLASS, REFPATH, REFSYSTEM, REFTYPE, RESERV1, RESERV2, RESERV3, RESID, RESIDPATH, TS, WHEREPART)values ('custcross', 0, 'N', '', '', null, 'arap', 'KsdzBVO', '', 'arap', '客商对照表', '', '', '', '', '', '0001Z01000000001CC01', 'nc.ui.arap.pub.ref.CustCrossRefModel', 'arap/refer/pub/CustCrossGridRef/index', '', 0, '', '', '', '~', 'ref', '2019-06-21 12:16:01', '');
2. 后台类 nc.ui.arap.pub.ref.CustCrossRefModel
package nccloud.web.arap.ref;import org.apache.commons.lang3.StringUtils;import nccloud.framework.web.container.SessionContext;import nccloud.framework.web.processor.refgrid.RefQueryInfo;import nccloud.framework.web.processor.reftree.TreeRefQueryInfo;import nccloud.framework.web.ui.meta.RefMeta;import nccloud.pubitf.platform.db.SqlParameterCollection;import nccloud.web.refer.DefaultGridRefAction;/*** 客商对照表参照*/public class CustCrossRefModel extends DefaultGridRefAction{public CustCrossRefModel() {}@Overridepublic RefMeta getRefMeta(RefQueryInfo paramRefQueryInfo) {RefMeta meta = new RefMeta();meta.setTableName("v_custcross");meta.setExtraFields(new String[] { "gs", "ks" ,"xspq","fzxx","khlx","gyslx","pk_ks"});meta.setPkField("pk_head");meta.setCodeField("gs");meta.setNameField("gs");return meta;}@Overridepublic String getExtraSql(RefQueryInfo refQueryInfo, RefMeta refMeta) {return null;// String pk_org = getPk_org(refQueryInfo);// String Extsql = " and pk_group = ?";// if (pk_org == null || StringUtils.trim(pk_org).equals("")) {// return Extsql;// }// Extsql += " and pk_org_v = ? ";// return Extsql;}@Overridepublic SqlParameterCollection getExtraSqlParameter(RefQueryInfo refQueryInfo, RefMeta refMeta) {return null;// SqlParameterCollection sc = new SqlParameterCollection();// String groupId = SessionContext.getInstance().getClientInfo().getPk_group();// String pk_org = getPk_org(refQueryInfo);// sc.addVarChar(groupId);// if (pk_org != null && !StringUtils.trim(pk_org).equals("")) {// sc.addVarChar(pk_org);// }// return sc;}@Overridepublic String getOrderSql(RefQueryInfo refQueryInfo, RefMeta refMeta) {return " order by gs,ks desc ";}}
3. 前台js home\hotwebs\nccloud\resources\arap\refer\pub\CustCrossGridRef\index.js
import { high } from 'nc-lightapp-front';import { conf as unitConf } from '../../../../uap/refer/riart/groupTableRef/index';const { Refer } = high;export default function (props = {}) {var conf = {multiLang: {domainName: 'arap',currentLocale: 'simpchn',moduleId: 'refer'},//width:'80%',refType: 'grid',refName: '客商对照表参照',//客商对照表参照placeholder: '客商对照表',//客商对照表refCode: 'arap.refer.pub.custCrossRefModel',queryGridUrl: '/nccloud/arap/ref/custCrossRefModel.do',isMultiSelectedEnabled: false,columnConfig: [{name: [ '公司', '客商','销售片区','辅助信息','客户类别','供应商类型' ],code: [ "gs", "ks" ,"xspq","fzxx","khlx","gyslx" ]}],//公司,客商,销售片区,辅助信息,客户类别,供应商类型isMultiSelectedEnabled: false,unitProps: unitConf,isShowUnit: false};return <Refer {...Object.assign(conf, props)} />}
4. 添加鉴权文件及权限控制文件
home\hotwebs\nccloud\WEB-INF\extend\yyconfig\modules\wcy\authorize\wcy_authorize.xml
<?xml version="1.0" encoding="UTF-8" standalone="no" ?><authorizes><authorize><appcode>*</appcode><actions><action>arap.ref.custCrossRefModel</action></actions></authorize></authorizes>
home\hotwebs\nccloud\WEB-INF\extend\yyconfig\modules\wcy\action\wcy_action.xml
<?xml version="1.0" encoding="UTF-8" standalone="no" ?><actions> <action><name>arap.ref.custCrossRefModel</name><label>参照客商对照</label><clazz>nccloud.web.arap.ref.CustCrossRefModel</clazz></actions>
5. 界面设置自定义项为参照,设置完成后需要修改元数据属性,这样才能自动翻译自定义参照。否则需要修改界面的查询类,在查询类中进行手动翻译。
select metadatapropertyfrom pub_form_propertywhere classid = '969c2b2d-9abb-4dcc-8a0e-7e9e8fb378ff'and metapath in ('vdef1') and datatype = '204' for update--cmp.informer.vbillno
注意
- 当参照前端js及后台类都完成后,但是页面仍然不能选择
- 在动态建模平台-开发配置-应用注册-要调整的单据的卡片-页面模板注册-设置页面模板-下一步-表头/表体-找到对应字段删除-新增元数据-保存-关闭
- 表体需要把浏览区、编辑区、编辑浏览区三个页签的字段都做找到对应字段删除-新增元数据操作
- 如果还是不能选择,选中你要调整的字段-右侧高级属性-类型设置-选择-确定-保存
NCC自定义参照开发相关推荐
- NC6系列开发自定义参照
NC6系列开发自定义参照 代码步骤 参照配置步骤 代码步骤 新建一个代码参照类,继承AbstractRefModel类,以下是Bom自定义参照代码案例 package nc.ui.ic.m4d.act ...
- NCC轻量化开发数据结构总结
NCC轻量化开发数据结构总结 ·目录 NCC轻量化开发数据结构总结 1.树形结构Tree 返回json示例 2.表单结构Form 2.1 前端Form转VO 请求json示例 2.2 后端VO转For ...
- 自定义组件开发七 自定义容器
概述 自定义容器本质上也是一个组件,常见的 LinearLayout.FrameLayout.GridLayout.ScrollView和 RelativeLayout 等等组件都是容器,容器除了有自 ...
- 用友uap nc65开发自定义档案开发
用友uap nc65开发自定义档案开发 1.概况:自定义档案类似nc65中的参照,与参照不同的是,自定义档案更易维护,不需要建立单独节点,但具有参照的功能,缺点是无法像参照那样维护更多信息.下面说明 ...
- javaweb学习总结(二十三)——jsp自定义标签开发入门
一.自定义标签的作用 自定义标签主要用于移除Jsp页面中的java代码. 二.自定义标签开发和使用 2.1.自定义标签开发步骤 1.编写一个实现Tag接口的Java类(标签处理器类) 1 packag ...
- 自定义View开发时踩的坑
在这篇博客中,我希望按照日记的方式来记录自己在android的自定义视图开发中所遇到的一些问题: 1.首先是在自定义view中获取对应的子视图,在自定义视图中定义了很多成员变量,按照个人的代码编写习惯 ...
- 转载:javaweb学习总结(二十三)——jsp自定义标签开发入门
javaweb学习总结(二十三)--jsp自定义标签开发入门 转自:http://www.cnblogs.com/xdp-gacl/p/3916734.html 一.自定义标签的作用 自定义标签主要用 ...
- javaweb学习总结(二十三):jsp自定义标签开发入门
一.自定义标签的作用 自定义标签主要用于移除Jsp页面中的java代码. 二.自定义标签开发和使用 2.1.自定义标签开发步骤 1.编写一个实现Tag接口的Java类(标签处理器类) 1 packag ...
- asp.net core mcroservices 架构之 分布式日志(二)之自定义日志开发
netcore日志原理 netcore的日志是作为一个扩展库存在的,每个组件都有它的入口,那么作为研究这个组件的入口是最好的,首先看两种方式: 这个是源码例子提供的. 1 var loggingCon ...
最新文章
- IDEA自定义快捷指令,快捷生成代码、注释
- 【opencv】(6) 图像轮廓处理
- ASP.NET页面动态添加js脚本
- S3C6410的SPI控制器
- C#命名规则和编码规范
- Nginx设置静态页面压缩和缓存过期时间的方法 (转)
- 河流水质指标预测与不确定性分析:机器学习模型的比较研究--文献阅读
- 地址总线是单向还是双向_如何区分晶闸管的单双向问题?
- POJ1887 DP水题儿
- ad09只在一定范围内查找相似对象_重磅!Excel更新了超级查找函数XLOOKUP,可以对VLOOKUP说拜拜了...
- convLSTM-tensorflow:LSTM理解
- [历朝通俗演义-蔡东藩-前汉]第008回 葬始皇骊山成巨冢 戮宗室豻狱构奇冤
- 25款精选免费小程序源码demo下载
- 【图像增强】基于matlab直方图均衡化图像增强【含Matlab源码 960期】
- 周志华-深度森林(Deep Forest)
- 方正璞华:硬核攻关,自主创新,推动印前处理自动化云流程走向世界
- js实现京东快递单号查询效果
- hdu1175连连看
- Android 实现水波纹效果
- 4 篇 NAR | 生物大数据时代,如何做好数据管理和再利用,发IF10+的数据库文章?...