EBS OAF 开发中的实体关联关系对象AO

EBS OAF 开发中的实体关联关系对象AO

(版权声明,本人原创或者翻译的文章如需转载,如转载用于个人学习,请注明出处;否则请与本人联系,违者必究)

关联关系对象可以让我们声明式创建实体对象间的更新。在运行时,BC4J使用这些关系来协调关联的对象。主要有两种基本的关联类型:

l 组合-一种强关联关系,源实体对象拥有目标实体对象。换句话说,目标对象不能独立于源对象之外而存在。比如,一个采购订单的头是由采购订单行组成,而这些行在订单头上下文之外是没有意义或者生命周期。

l 引用-一种弱关联关系,源实体对象仅仅引用目标实体对象。比如,一个采购订单头引用一个供应商,但是供应商不论是否有一个采购订单引用它都仍然存在。

为你的所有实体对象根据需要创建组合关系对象并保证它们在运行时被合适的创建,初始化和管理。BC4J自动把组合作为逻辑单元来看待,因此比如,一个采购订单头会被自动锁住即使你仅仅对它的行做了修改。

为所有你在运行时要更新或者实例化的实体对象创建引用关系。比如,在采购订单头和它的供应商之间创建关联关系,如果当编辑采购订单的时候你可以更新供应商的话,但是不在采购订单和货运条款间建立关联。

声明式实现

关于关联向导中这里没有特殊描述的属性的更多信息,可以参考JDeveloper文档。

注意:当在所有BC4J向导中通过选择键盘上的F1键来访问上下文相关的帮助。

1.在JDeveloper导航器,选择你想创建关联对象的BC4J包。

2.从主菜单,选择File->New来打开New Gallery.

3.在Categories树,展开Business Tier节点,然后选择Business Componenets(BC4J).

4.在Items列表中,选择Association来打开Association Wizard。你也可以在BC4J包上右键单击并选择New Association Object来直接导航到Association Wizard.

5.在Name页面上(步骤1/4):

Ø 遵循OAFramework File / Directory / Package Structure标准来指定关联的名称。

Ø 确认你选择了正确的BC4J包。

Ø 不要在继承关联字段输入值,除非你确实要继承你自己的一个关联。

Ø 选择下一步来继续。

6.在实体对象页面(步骤2/4),指定关联的基数(比如,是一个1对多的关系么?)并像图6展示的选择源和目标连接属性。选择添加按钮来创建连接(对于一个多键关系根据需要来重复添加)。选择下一步两次来继续。

图6:在实体对象(步骤2/4)页面上选择源和目标实体对象和属性

EBS OAF 开发中的实体关联关系对象AO

7.在关联属性页面(步骤4/4):

Ø 为源和目标对象根据需要检查Expose Accessor选项(存储器让对象获得关联中对另一端对象的引用)。

Ø 如果目标对象不能独立于源对象上下文存在时,选中组合关联选项框。

注意:对于组合,通常要在目标对象上选中ExposeAccessor选项。可选的是,在你的代码中根据需要为源对象来启用这个。

注意:使用Lock Top-Level Container选项来控制是否在修改保存前添加,移除或者修改一个组合的明细实体行应该为组合实体加锁

Ø 不要选择其它任何页面选项。

8.选择完成来保存你的关联对象。BC4J创建了一个就像图7展示的XML定义文件。

注意:你可以在应用导航器上通过简单选择关联对象来快速参看潜在的关系。

图7:JDeveloper应用导航器和结构面板展示一个选中的关联对象。

EBS OAF 开发中的实体关联关系对象AO