【NC】单表档案参照

创建被参照的元数据

创建一个“被参照者”的元数据。“代码风格”为自定义样式,“访问器类型”为NCVO

选中元数据,右键发布元数据生成建库sql脚本并执行,测试案例,无需“生成java代码”。

创建一个Java类

在需要使用参照的其他元数据的Java代码中,在client包下新建一个参照类。该类需要继承AbstractRefModel类。

package nc.ui.pmdom.ref; 
import nc.ui.bd.ref.AbstractRefModel; 
public class CustomerRefModel1730 extends AbstractRefModel {       
    public CustomerRefModel1730() {              
        reset();       
    }      
    public void reset() {              
        // 设置参照名称        
        setRefTitle("客户参照");                      
        // 设置业务表的字段名             
        setFieldCode(new String[] {                
            "code",                
            "name"              
        }); 
        //设置业务表的字段中文名              
        setFieldName(new String[] {              
            "编码",              
            "名称"            
        }); 
        //设置隐藏字段
        setHiddenFieldCode(new String[] { "cid" });              
        // 设定主键字段名              
        setPkFieldCode("cid");              
        // 设置参照编码字段             
        setRefCodeField("code"); 
        //设置参照名称字段              
        setRefNameField("name");              
        // 设置参照表名             
        setTableName("pmdom_customer1730");             
        // 设置where子句              
        setWherePart("isnull(dr,0) = 0");      
    } 
}

向数据库的参照表bd_refinfo中插入一条数据

可向表中插入sql语句

insert 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 ('StockRecordVO', 0, null, null, null, null, 'StockRecordVO', 'tr', '债券信息', null, null, null, null, null, '0001ZZ1000000000LL0G', 'nc.ui.tr.stockrecord.refmodel.StockRecordVORefModel', null, 1, null, null, null, '~', null, null, null);

也在表中复制其他人的记录然后修改为自己的。

设置参照

在对应的元数据中选中实体,选择参照页签,点击设置参照,然后选中自己定义的参照后点击确定,就可以在对应的列表看到自己定义的参照。

引用自定义参照

显示参照名称

完成以上操作以后参照就可以使用了,如果想要参照以后在需要参照的位置显示参照名称而不是其编码,那么需要在单据模板初始化中找到对应的单据模板,然后修改。最后保存模板即可。

posted @ 2021-06-16 09:29  亚州Asu  阅读(613)  评论(0编辑  收藏  举报