EBS WebADI:Web ADI开发@Excel LOV
本例是基于上一章节进行的,主要是实现Excel中LOV的功能。
1. 定义字段与LOV组件的关系
在PL\SQL select … for update 直接修改基表
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 --application id,SELECT bni.application_id FROM bne_integrators_vl bni WHERE bni.user_name = 'CUX_WEBADI_DEMO';,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'
FOR UPDATE;
val_id_col:传递给程序参数字段。本列中只需要传值给P_ORGANIZATION_ID,故 只需要填 ORGANIZATION_ID
如果还定义了参数P_ORGANIZATION_CODE,则需要填写ORGANIZATION_ID, ORGANIZATION_CODE。
val_mean_col:在Excel中显示的字段。本列中需要显示的是库存组织ID,故只需要填写一个ORGANIZATION_ID。
如果需要显示的是库存组织代码,则填写 ORGNIZATION_CODE(传值还是可以传给ORGANIZATION_ID的,只是在界面上显示的 是库存组织代码)。如果同时在excle界面上显示库存组织ID,库存组织代码,则
ORANIZATION_ID,ORGANIZATION_CODE两个都需要输入。
val_desc_col:LOV中的说明字段,可以是一个字段,也可以是多个字段。
2. 创建LOV组件
--通过前面定义的val_component_code来获取application_id, val_component_app_id, val_component_code
SELECT b.application_id,
b.val_component_app_id,
b.val_component_code FROM bne_interface_cols_b bWHERE b.val_component_code = 'CUX_ORGANIZATION';--LOV组件基表中插入数据
--select * from bne_components_b where component_code = 'CUX_ORGANIZATION';
INSERT INTO bne_components_b (application_id, component_code, object_version_number ,component_java_class, param_list_app_id, param_list_code ,created_by,creation_date,last_updated_by,last_update_login,last_update_date) VALUES (20003 --对应BNE_INTERFACE_COLS_B.VAL_COMPONENT_APP_ID ,'CUX_ORGANIZATION' --对应BNE_INTERFACE_COLS_B.VAL_COMPONENT_CODE ,1 ,'oracle.apps.bne.integrator.component.BneOAValueSetComponent' --Oracle标准的代码 ,20003 --参数应用ID ,'CUX_ORGANIZATION' --参数的代码名称,这个参数很重要,-1,SYSDATE,-1,-1,SYSDATE);--LOV组件语言表中插入记录
--select * from bne_components_tl where component_code = 'CUX_ORGANIZATION';
INSERT INTO bne_components_tl(application_id,component_code,LANGUAGE ,source_lang,user_name,created_by,creation_date,last_updated_by ,last_update_login,last_update_date) VALUES (20003 --对应bne_components_b.application_id,'CUX_ORGANIZATION' --对应bne_components_b.component_code,'ZHT' --ZHS:简体 ZHT:繁体 US:英文,'ZHT' --ZHS:简体 ZHT:繁体 US:英文,'库存组织' --参数说明 ,-1,SYSDATE,-1,-1,SYSDATE);
3. 定义参数
基于现有参数复制参数 (Desktop Integration Manager -> Define Parameter)
把Restrict to this application前面的勾去掉
可以使用Oracle系统原有的一个参数(如:COMP_AVG_JNL_FLAG)来创建客户化应用的参数及属性。
CUX_ORGANIZATION 库存组织
CUX Customized Application
CUX_ORGANIZATION
更改参数属性
同上,%CUX_ORGANIZATION 查找
修改table-columns属性
修改table-column-alias属性
修改table-select-column属性
修改table-headers属性
修改window-width属性
4. 使用LOV
重启Apache服务器
LOV调用的是Servlet类,必须重新加载方能够生效。 如果修改了属性值,是不需要重启应用的。
只有update基表 bne_interface_cols_b中的值的时候,才需要重启应用。
测试LOV
没有重启Apache服务器的权限,暂时没有测试
5. 补充. Excel中实现日期LOV功能
通过如下的标准API来创建:
BEGINbne_integrator_utils.create_calendar_lov(p_application_id => 20003, --Your custom applicationp_interface_code => 'GENERAL_1_INTF',--Your custom interface codep_interface_col_name=> 'P_DATE', --Your date_item ininterfacep_window_caption => '选择日期', --Window Promptp_window_width => NULL, --Use defaultp_window_height => NULL, --Use defaultp_table_columns => 'ADI_DATE', --Your table date_fieldsp_user_id => 0);
END;
--参数可通过如下SQL查询
select * from bne_interface_cols_b bic
where application_id = (SELECT bni.application_id FROM bne_integrators_vl bni WHERE bni.user_name = 'CUX_WEBADI_DEMO')and bic.interface_code =(SELECT distinct intf.interface_code FROM bne_interfaces_vl intf ,bne_integrators_vl intg WHERE intf.integrator_code = intg.integrator_code AND intg.user_name = 'CUX_WEBADI_DEMO')
效果:
EBS WebADI:Web ADI开发@Excel LOV相关推荐
- 解决打开WEB ADI的excel文件时出现Run-time error '1004' 的错误
解决打开WEB ADI的excel文件时出现Run-time error '1004' 的错误.下面的解决方法来自My support Run-time error '1004' Opening We ...
- oracle怎么adi导入,Web adi 导入笔记 详细图解
Web ADI 全称 web application desktop integrator,是用来实现Excel与ebs数据通信的,可以进行各种个性化开发,实现数据的导入. 开发时,需拥有web ad ...
- oracle 找不到程序单元,Oracle Web ADI 加载时错误:ORA-06508: PL/SQL: 无法在调用之前找到程序单元...
Oracle EBS 的Web ADI给批量导入数据提供一个不错的解决方案.但是,Web ADI开发比较麻,主要缺点如: 1.集成器设置好以后不能修改,必须要事先考虑包的存储过程或函数的参数.则否,存 ...
- EBS WebADI:标准Web ADI模板@日记账导入
日记帐导入是ORACLE WEBADI本身就开发的模板,导入的数据也比较简单,不易出错,可以直接拿来使用. Navigation: Desktop Integration User –> Cre ...
- oracle ebs web agent,《ORACLE EBS Web ADI深入浅出》.pdf
<ORACLE EBS Web ADI深入浅出>.pdf ORACLE EBS -Web ADI 深入浅出 文档作者: 雷园园 创建日期: 2012-7-29 更新日期: 2012-8-3 ...
- Oracle EBS WebADI的配置(IE+Excel)
如果你的WebADI工作不正常,请检查以下IE和Excel的设置. IE设置 1.启用"允许状态栏通过脚本更新"("Allow Status bar updates vi ...
- Excel.Application组件使用方法,适合应用于使用EXCEL组件做WEB应用开发。
Excel.Application组件使用方法,适合应用于使用EXCEL组件做WEB应用开发. 转自http://bbs.xtjc.com/thread-376095-1-1.html 定制模块行为 ...
- EBS Form开发中LOV和Editor介绍
EBS Form开发中LOV和Editor介绍 (版权声明,本人原创或者翻译的文章如需转载,如转载用于个人学习,请注明出处:否则请与本人联系,违者必究) 什么是LOV和Editor LOV(Lists ...
- EBS Form开发中LOV实现实例(3)
EBS Form开发中LOV实现实例(3) (版权声明,本人原创或者翻译的文章如需转载,如转载用于个人学习,请注明出处:否则请与本人联系,违者必究) 继续使用上次创建的form,并为上次的查询窗口中的 ...
最新文章
- JVM学习1:JVM和Java体系结构
- (C++)设计一个程序能计算一个日期加上若干天后是什么日期and计算日期差值
- 模板 - 树上问题(树的直径、动态查询树的直径、树的重心)
- Java_JAVA6动态编译的问题
- pywebio 和 pyecharts天生一对
- Matlab 函数:padarray
- C++调用WebService
- [Javascript]闭包是可以访问上一层函数作用域里变量的函数,即便上一层函数已经关闭
- jdk8运行jdk7的代码_即使在jdk中也有错误的代码
- python免费教程视频-28岁想从零开始自学python,有哪些靠谱免费的视频?
- SQL Server 2008 R2
- 必须掌握,二叉树的前中后序遍历(迭代+递归)详细代码
- android 被自动安装cibn合一,Android v4.2.2 ROOT方法,可能也适用于很多同版系统的安卓电视!...
- python中match用法_js中match函数和g用法
- 永中Office 2004 增强版上市,试用版免费下载
- 25句经典语录 带你成长
- vmbackup和vmrestore是何方神圣?
- 【XR】VR手柄定位技术
- 树莓派学习笔记(5):成功实现NAS家庭服务器(流媒体播放、文件共享及下载机)
- 2022流动式起重机司机复训题库及答案