一、建立需要用到的数据表
- CREATETABLE TEST
- (
- ID NUMBER NOT NULL
- , NAME VARCHAR2(20 BYTE) NOT NULL
- , BOSS_ID NUMBER
- , CONSTRAINT TEST_PK PRIMARYKEY
- (
- ID
- )
- ENABLE
- );
ID表示本人员工代码
BOSS_ID表示上级的员工代码
在表中插入数据
- Insert into TEST (ID,NAME,BOSS_ID)values (1,'张三',null);
- Insert into TEST (ID,NAME,BOSS_ID)values (10,'李四',1);
- Insert into TEST (ID,NAME,BOSS_ID)values (20,'王五',1);
- Insert into TEST (ID,NAME,BOSS_ID)values (11,'无名',10);
人物关系为:张三是一把手,最高领导
李四、王五为部门经理
无名为李四手下员工
在表中建立从boss_id到id的外键约束 如图一所示

二、新建fusion web application-->HViewTest
配置好数据源。
基于刚才的test表 生成相应的VO对象,生成后应该像下图一样。

重要步骤:
基于test的表的EO创建新的VO-->TopBossView,检索最高领导。创建完成后,在query中增加条件BOSS_ID IS NULL
从表中选出最高领导,如下图所示.

创建新的view link-->TopViewLink 生成多对多关系 ,如下图所示

完成这些步骤后 左边导航栏看起来应该是这样

最后 新建一个 jspx页面
拖动TopBossView1数据到地图上 选择Hierachy Viewer,选中左边三级结构,在右边可以定制显示文字,加入图片等,这里需要注意的是,如果想要加入图片,图片并不是放在数据库中的,数据库中存放的是图片名字,这里面加的就是个链接。

最终结果如下

示例源代码下载
本文介绍了如何在Oracle ADF中利用Hierarchy Viewer控件展示组织结构。首先创建包含上下级关系的数据表,然后通过Fusion Web Application创建VO对象,特别是TopBossView,用于检索最高领导。在查询中添加BOSS_ID IS NULL条件。接着,建立View Link来形成多对多关系。最后,通过jspx页面将数据拖拽到Hierarchy Viewer中,定制显示内容,实现组织结构的可视化。
3692

被折叠的 条评论
为什么被折叠?



