ITPub博客

首页 > Linux操作系统 > Linux操作系统 > 支持MOAC功能的Form开发步骤

支持MOAC功能的Form开发步骤

原创 Linux操作系统 作者:kawontony 时间:2013-02-22 09:36:00 0 删除 编辑

在R12版本中,OU的控制采取了MOAC的方式,使用户的操作得到了改善。
而如果客户化的Form能够支持MOAC的功能,需要在界面上提供当前用户可以选择的OU字段供用户选择。

功能展示如下图:

这样在Form的开发过程中需要如下的开发步骤:

1,PRE-FORM. 触发器初始化MOAC配置环境
添加如下代码:
MO_GLOBAL.init(‘ONT’);

— global.mo_ou_count
— global.mo_default_org_id
— global.mo_default_ou_name

IF l_default_org_id IS NOT NULL THEN — default org id not null
MO_GLOBAL.SET_POLICY_CONTEXT(‘S’,l_default_org_id);
ELSE
MO_GLOBAL.SET_POLICY_CONTEXT(‘M’,null);
END IF; — default org id not null
这段代码的作用是根据预制文件的设置,初始化OU的信息,将用户可以访问的OU信息插入到mo_glob_org_access_tmp表中,
同时将默认的OU ID、OU Name和OU Count分别写到global.mo_default_org_id, global.mo_default_org_id, global.mo_default_ou_name

具体细节可以查看数据库包:mo_global

2,WHEN-CREATE-RECORD触发器中拷贝OU默认值

在此触发器中将默认的OU ID和OU Name拷贝给Form界面上对应的自动,实现创建记录的时候默认带出默认OU信息。

copy(name_in(‘global.mo_default_org_id’),’’);
copy(name_in(‘global.mo_default_ou_name’),’’);

3,创建OU的LOV
Form界面上的OU 名称字段创建一个LOV,LOV对应记录组的SQL语句如下:

SELECT hr.organization_id organization_id, hr.NAME organization_name
FROM hr_operating_units hr
WHERE mo_global.check_access(hr.organization_id) = ‘Y’
ORDER BY organization_name

t.jpg

来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/24627116/viewspace-754528/ ,如需转载,请注明出处,否则将追究法律责任。

上一篇: sql语句收集
请登录后发表评论 登录
全部评论

注册时间:2010-11-17

  • 博文量
    183
  • 访问量
    433672