WebADI_WebADI常用表和查询(汇总)

20150902 Created By BaoXinjian

一、常用表


1. 输入值验证后台表结构

(1). bne_integrators_b:存贮定义的WebADI集成器

(2. bne_interfaces_b:存贮集成器对应接口信息

(3). bne_interface_cols_b:存贮接口对应的列信息,包括列的各种验证信息和属性

(4). bne_components_b:OA组件定义,如一个验证的LOV就是一个组件

(5). bne_param_lists_b:参数列表,可以理解为参数的分组,目的是为了实现参数的重用

(6). bne_param_list_items:存贮参数列表和参数的关联信息

(7). bne_param_defns_b:存贮参数定义,包括默认值、验证信息、显示信息等

2. bne_interface_cols_b后台逻辑和相关的表列

(1). 相关概念

首先后台根据bne_interface_cols_b表中的设置取得验证信息

根据验证类型和验证对象取得验证数据

根据OA组件的设置初始化和显示LOV窗口。组件对应的属性都当作参数存贮在bne_param_defns_b表中

(2). 列值意义

列的验证信息存储在表bne_interface_cols_b中,涉及的列为:

VAL_TYPE:验证类型,现在有:TABLE, JAVA, KEYFLEX, KEYFLEXSEG, EXPANDEDSQL, DESCFLEX, DESCFLEXSEG, DESCFLEXCONTEXT, GROUP

VAL_ID_COL:验证列表返回ID,相当于值集定义中的ID

VAL_MEAN_COL:验证列表的显示值,相当于值集定义中的Name

VAL_DESC_COL:验证列表描述,相当于值集定义中的Meaning

VAL_OBJ_NAME:验证列表对应的对象,根据验证类型的不同而不同

VAL_ADDL_W_C:验证列表附加条件,相当于值集定义中的Where条件

LOV_TYPE:LOV的类型,有NONE,STANDRAD,POPLIST

 (3). Interface Column和Component关联关系

表bne_interface_cols_b中包括了如下两列来实现一个验证值列表与OA组件的关联

VAL_COMPONENT_APP_ID:组建对应的应用ID

VAL_COMPONENT_CODE:组建的代码

3. 产生输入值值列表验证过程

(1). 为LOV创建参数一个列表:bne_param_lists_b

(2). 创建参数列表多语言信息:bne_param_lists_tl

(3). 创建参数:bne_param_defns_b

(4). 创建参数多语言信息:bne_param_defns_tl

(5). 将参数和参数列表进行关联:bne_param_list_items

(6). 创建OA组件,并与参数列表关联:bne_components_b ,组件编码一般以“OA_”打头

(7). 创建OA组件多语言信息:bne_components_tl

(8). 更新接口列信息:bne_interface_cols_b

 

二、常用查询


1. 查询前做Session的初始化

alter session set nls_language='SIMPLIFIED CHINESE';
alter session set nls_language='AMERICAN';

 

2.  集成器表

SELECT bni.application_id
      ,bni.integrator_code --集成器code
      ,bni.user_name --集成器名称
      ,bni.date_format
  FROM bne_integrators_vl bni
 WHERE bni.user_name LIKE 'CUX%';

 

3. 集成器相关信息

3.1 集成器关联package

SELECT bni.application_id
      ,bni.integrator_code --集成器code
      ,bni.user_name --集成器名称
      ,bni.date_format
      ,inf.interface_code
      ,inf.interface_name --集成器关联的packege的proced
  FROM bne_integrators_vl bni
      ,bne_interfaces_vl  inf
 WHERE bni.user_name LIKE 'CUX%'
   AND bni.application_id = inf.integrator_app_id
   AND bni.integrator_code = inf.integrator_code;

 

3.2 集成器对应的字段

SELECT intg.application_id
      ,intg.integrator_code --集成器code
      ,intg.user_name --集成器
      ,intg.date_format
      ,bic.interface_code --package code
      ,bic.sequence_num
      ,bic.display_order
      ,bic.interface_col_name --字段名
      ,bic.data_type
      ,bic.prompt_left --字段显示名称
      ,bic.prompt_above --可update此字段为中文
  FROM bne_interface_cols_vl bic
      ,bne_interfaces_vl     intf 
      ,bne_integrators_vl    intg --集成器
 WHERE bic.interface_code = intf.interface_code
   AND intf.integrator_code = intg.integrator_code
   AND intg.user_name = 'CUX:WEBADI_LOV';

 

3.3 栏位的相关信息

3.3.1 Excel列的题头和API的参数一样,需要加以修改,需直接更新表bne_interface_cols_tl的

SELECT bic.interface_code --package code
      ,bic.prompt_left --头表题头说明
      ,bic.prompt_above --行表题头说明
      ,bic.sequence_num
  FROM bne_interface_cols_tl bic
 WHERE EXISTS (SELECT NULL
          FROM bne_interfaces_vl  intf
              ,bne_integrators_vl intg --集成器
         WHERE bic.interface_code = intf.interface_code
           AND intf.integrator_code = intg.integrator_code
           AND intg.user_name LIKE 'CUX%')

 

3.3.2 Excel LOV实现,可以直接update基表bne_interface_cols_b

SELECT bic.interface_col_name --字段名
      ,bic.val_type --填 TABLE
      ,bic.val_id_col --传递给程序参数的字段,填 ORGANIZATION_ID
      ,bic.val_mean_col --在Ecxel中显示的字段, 填ORANIZATION_ID
      ,bic.val_desc_col --LOV中说明字段,填ORGANIZATION_CODE,ORGANIZATION_NAME
      ,bic.val_obj_name --列表所在的表明,填ORG_ORGANIZATION_DEFINITIONS
      ,bic.val_addl_w_c --where语句,可不填
      ,bic.val_component_app_id --组件应用id,填20003
      ,bic.val_component_code --组件代码,还未创建,先填一个,然后创建, 填CUX_ORGANIZATION
      ,bic.lov_type --填POPLIST或STANDARD,也可以填NONE
      ,bic.offline_lov_enabled_flag --离线编辑EXCEL表格时是否可用,填Y
  FROM bne_interface_cols_b bic
 WHERE EXISTS (SELECT NULL
          FROM bne_interfaces_vl  intf
              ,bne_integrators_vl intg --集成器
         WHERE bic.interface_code = intf.interface_code
           AND intf.integrator_code = intg.integrator_code
           AND intg.user_name = 'CUX_WEBADI_DEMO')
   AND bic.interface_col_name = 'P_ORGANIZATION_ID'

 

4. 集成器和功能关联

SELECT bni.application_id
      ,bni.integrator_code --集成器code
      ,bni.user_name --集成器名称
      ,bsr.security_value --功能code
  FROM bne_integrators_vl bni
      ,bne_security_rules bsr
 WHERE bni.user_name LIKE 'CUX%'
   AND bsr.application_id = bni.application_id
   AND bsr.security_code = bni.integrator_code;

 

5. 集成器对应的布局
SELECT bni.application_id
      ,bni.integrator_code --集成器code
      ,bni.user_name --集成器名称
      ,blv.layout_code --布局代码
      ,blv.user_name --布局用户名称
      ,blc.sequence_num  
      ,bic.*
FROM bne_integrators_vl    bni
      ,bne_layouts_vl        blv
      ,bne_layout_cols       blc
      ,bne_interface_cols_vl bic
 WHERE bni.user_name LIKE 'CUX_WEBADI_DEMO'
   AND blv.integrator_app_id = bni.application_id
   AND blv.integrator_code = bni.integrator_code
   AND blv.layout_code = blc.layout_code
   AND blc.interface_app_id = bic.application_id
   AND blc.interface_code = bic.interface_code
   AND blc.interface_seq_num = bic.sequence_num;

 

6. 集成器对应的映射

SELECT bni.application_id
      ,bni.integrator_code --集成器code
      ,bni.user_name --集成器名称
      ,bmv.mapping_code --映射code
  FROM bne_integrators_vl bni
      ,bne_mappings_vl    bmv
 WHERE bni.user_name LIKE 'CUX%'
   AND bmv.integrator_app_id = bni.application_id
   AND bmv.integrator_code = bni.integrator_code;

 

Thanks and Regards

posted on 2012-12-26 14:13  东方瀚海  阅读(1673)  评论(0编辑  收藏  举报