【BIP旗舰版】查找业务对象对应特征表和特征字段

提示:BIP旗舰版自定义字段,特征字段


正文

提示:用于查找单据对应特征字段和特征字段编码对应的表字段:

一、查找业务对象对应特征表和特征字段

示例:

二、使用步骤

1.查找特征字段对应表字段方法

--查表所属用户
select * from dba_tables where table_name = UPPER('bam_accountinfo_character_def_1')

--根据单据表所在的schema+特征字段编码,查特征对应的表名
SELECT EF.REAL_TABLE real_table, EF.REAL_COLUMN real_column,EF.FIELD_NAME field_name ,EO.TABLE_NAME
from YONBIP_FI_CTMPUB.elastic_object EO 
LEFT join YONBIP_FI_CTMPUB.elastic_field EF
ON EO.ID = EF.OBJECT_ID 
WHERE 
EF.FIELD_NAME = 'SFCJKM' 
--如果是多个,加上主表前缀
and table_name like 'bam_accountinfo%'
-- EO.TABLE_NAME = 'transferapply_character_define';

--查询特征表
select * from  YONBIP_FI_CTMPUB.bam_accountinfo_character_def_1

2.查找特征字段对应的表字段名

	//获取特征字段对应的特征表字段名
	String SAP_subno = getTz("YONBIP_FI_CTMPUB", "bam_account_currtype_character_def_1", "SAP_subno");//会计科目编号

	/**
     * 特征编码找特征表对应的字段
     * @param schema 主表所属的schema
     * @param tzTableName 特征表名
     * @param tzCode 特征字段编码
     * @return
     * @throws Exception
     */
    private String getTz(String schema,String tzTableName,String tzCode) throws Exception {
        //找特征 对应表字段编码
        List<String> list= Lists.newArrayList(tzTableName);
        //找特征 对应表字段编码
        Map<String, String> def = CommonUtils.getDefList(schema+".elastic_field",list);
        if(CollectionUtils.isEmpty(def)){
            throw new YpdException("签收确认明细特征不存在");
        }
        if(!def.containsKey(tzCode)){
            throw new YpdException("特征不存在");
        }
        return def.get(tzCode);
    }

总结

结合sql脚本和业务对象,可以快速找到特征字段特征表信息

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值