OAF_文件系列3_实现OAF多行表中附件功能AttachmentImage(案例)

简介: 20150727 Created By BaoXinjian 一、摘要 EBS OAF中如何在多行表中实现附件功能 在OAF中使用附件功能之前,要先明白Entity(实体)的概念。 一个Entity是Oracle E-BussinessSuite的一个数据对象,比如一个物料,一个订单或者一个订单行。

20150727 Created By BaoXinjian

一、摘要


EBS OAF中如何在多行表中实现附件功能

在OAF中使用附件功能之前,要先明白Entity(实体)的概念。

一个Entity是Oracle E-BussinessSuite的一个数据对象,比如一个物料,一个订单或者一个订单行。(这里的实体和BC4J中Entity(实体)对象没有关系)。

在用户可以链接附件到实体之前,必须先启用实体的附件功能。

在附件上下文中,一个实体可以认为是一个基础实体或者是相关实体。

一个基础实体是一个区 域的主要实体,一个相关实体通常是由外键关系关联到这个区域的实体。

一个实体是由一组属性名组成(通过OAExtension区域 items声明),这些属性是关联到这个区域的View Obect的主键。当保存一个附件的时候,这些主键的值和实体ID也会一块存储,那么附件就可以被唯一识别和提取。

几个区域可以访问同一个实体,在你的整 个应用中就可以提供一致的附件外观。

OA Framework也支持多个实体关联到同一个区域item,这个和Oracle E-BussinessSuite 基于Forms的附件功能是相似的。

如,一个采购订单有一个订单头和多个订单行,在行级别上,你可以添加附属于实体PO_LINES的附件。

注意你经常在PO行上输入物料号。当你在主物料 form上创建物料的时候,你可以添加一个附件,比如一个存储在其它实体上的物料图片,比如MTL_SYSTEM_ITEMS。

有了多实体支持,当你查看 PO行上的附件的时候,你可以查到两个实体上的附件,就是PO_LINES和MTL_SYSTEM_ITEMS。

 

二、实现方式


1. 建立AttachmentImage控件

Table中添加一个attachmentImage类型item,这样将在table中创建一个附件列。在附件列,选择附件图标将打开附件页,或者选择Add图标将打开增加附件页。

为刚才创建的附件区域item指定下面的属性

(1). ID:附件区域item的唯一ID.

(2). View Instance:启用了附件功能的实体的Viewinstance的名字

(3). Rendered:设成true.

(4). Enable Document Catalog:设成True来启用从document catalog添加附件功能,设成False以禁止访问document catalog,默认值是True。

(5). Render SearchRegion:设置成True来为附件页/区域生成Search 区域。Search区域允许你查找特定一组附件。

默认地,对附件表或附件页做的修改都是自动保存到数据库的,不需要用户选择主页面的Apply,

你可以通过设置”Automactic Save”属性为True为附件链接,附件表,附件图像item启用”auto-commit”。

如果设置了”auto-commit”,用户在附件表或附件页面的每个操作(“Add”, “Update”,”Detach”)都会自动保存到数据库。

 

2. 建立EntityMap

 结果面板,选择在区域附件item下创建的默认entityMap,在OA Extension 属性面板上,输入一个唯一的ID标示,对于”Entity”属性,你可以输入一个唯一的任意值。

 

3. 建立Primary Key

在结构面板选择上面的Entity Map,在上下文中的New菜单下,选择primaryKeys为Entity Map创建一个命名的主键。

在结构面板中选中命名的primaryKey,在OA Extension属性面板中为主键输入一个VO主键属性名,如果是多个属性构成主键,就要新建多个primaryKey。

 

4. 建立Category Map

建一个category map来指明哪种类型的文档可以关联附件。

在结构面板,选择你刚才定义的Entity Map,然后从上下文菜单选择New>categoryMap来创建一个命名的Category Map。

并指定相应的Category 属性,所有的Category可以通过Application Developers->Attachments->Document Categories得到所有Category的名称,

但那只是显示名称,需要通过Help->Examine得到相应的名称,或者使用下面的 SQL在后台得到相应的名称,可以也可以自己建立Category。

 

三、删除统计信息


 1. 运行测试,附件添加和不添加的区别

 

 

2. 上传附件

 

3. 查看上传后附件的位置

 

4.1 查看数据库Category

4.2 查看数据库Datatypes

4.3 查看数据Document

 

Thanks and Regards

参考:Tavor - http://blog.csdn.net/tavor/article/details/17894935

ERP技术讨论群: 288307890
技术交流,技术讨论,欢迎加入
Technology Blog Created By Oracle ERP - 鲍新建
相关文章
|
数据安全/隐私保护
SharePoint开发——利用CSOM逐级获取O365中SharePoint网站的List内容
博客地址:http://blog.csdn.net/FoxDave 本文介绍如何利用SharePoint客户端对象模型(.NET)逐级获取Office 365网站中List的内容,仅仅是示例,没有讲究太多东西。
866 0
|
测试技术
OAF_开发系列24_实现OAF更新记录显示Record History(案例)
20150716 Created By BaoXinjian 一、摘要 OAF页面控件中显示记录历史信息有如下的限制: 1. 首先当然是后台的表结构中必须包含WHO字段列了 2. 基于的视图对象必须是非PL/SQL的可更新VO 3.
1071 0
|
Oracle 关系型数据库
OAF_开发系列20_实现OAF打印功能
ddddd   添加一个页面级的button区域:pagebuttonBar,在之下添加button item ,这里主要设置的参数有:采用默认的oaf的打印按钮的id名称: IcxPrintablePageButton,设置属性集为:/oracle/apps/fnd/attributesets...
1198 0
|
关系型数据库 Oracle
OAF_开发系列14_实现OAF代码动态新增控件
dERP技术讨论群: 288307890 技术交流,技术讨论,欢迎加入 Technology Blog Created By Oracle ERP - 鲍新建
1136 0
|
关系型数据库 测试技术
OAF_开发系列13_实现OAF通过Vector动态查询设置(案例)
20150715 Created By BaoXinjian 一、摘要 Oracle OAF Guide上介绍的标准客制化查询的方式,在多条件下进行查询 具体实现步骤如下 Step1.在controler中的processRequest 的方法中调用 (1).
1644 0
|
Web App开发
OAF_开发系列09_实现OAF预提取LOV设定(案例)
20150712 Created By BaoXinjian 一、摘要 1. 预取LOV(Look Ahead LOV) (1). 预取LOV最大的特点就是再也不需要每次都要烦人的弹出一个窗口让人选择了。
1169 0
|
测试技术
OAF_开发系列04_实现OAF查询4种不同的实现方式的比较和实现(案例)
2014-06-02 Created By BaoXinjian 一、摘要 OAF实现查询功能或需求,一般都会采用以下四种方式 (1). ResultBasedSearch 最简单的实现方式,将结果中某些栏位需要查询的栏位的属性search设定为true即可 (2).
1794 0

热门文章

最新文章