Wae*_*oul 5 oracle erp oracle-ebs
当从apps用户执行下面的get_release函数时,它返回正确的版本:12.1.3,但是当从另一个用户执行它时,它返回未知结果:
declare
l_release_name varchar2(30);
l_other_release_info varchar2(2000);
begin
if not apps.FND_RELEASE.get_release (l_release_name, l_other_release_info) then
null;
end if;
dbms_output.put_line(l_release_name);
end;
Run Code Online (Sandbox Code Playgroud)
FND_RELEASE.get_release 是一个公共包,从另一个用户调用它应该没有限制.
我在函数评论中找到的内容如下:
-- get_release() will usually return TRUE
-- with RELEASE_NAME =
-- contents of RELEASE_NAME column in FND_PRODUCT_GROUPS
-- and OTHER_RELEASE_INFO = null
--
-- If FND_PRODUCT_GROUPS.RELEASE_NAME contains imbedded spaces:
--
-- get_release() will return TRUE
-- with RELEASE_NAME = FND_PRODUCT_GROUPS.RELEASE_NAME up to but
-- not including the first imbedded space
-- and OTHER_RELEASE_INFO = FND_PRODUCT_GROUPS.RELEASE_NAME
-- starting with the first non-space character after the first
-- imbedded space
--
-- On failure, get_release() returns FALSE. This will be a performance issue.
-- Both RELEASE_NAME and OTHER_RELEASE_INFO will be set to 'Unknown'.
-- This indicates that either:
-- 1) there are no rows in fnd_product_groups
-- - this can be resolved by populating the row and it will
-- be queried on the next call.
-- 2) there is more than one row in fnd_product_groups
-- - delete all but the one correct row from fnd_product_groups and it
-- will be queried on the next call. It's possible that the values
-- returned by release_* and *_version routines are still correct if
-- the first row in fnd_product_groups, ordered by product_group_id,
-- if the currect row, but this will still be a performance problem.
Run Code Online (Sandbox Code Playgroud)
以前有人遇到过这个问题吗?!
小智 1
据我所知有3种可能性:
AUTHID CURRENT_USER。它为用户apps和任何其他用户使用不同的源。context访问。private database选项。它能够重写查询并向当前用户添加条件。(第 2 点的变体但隐式)| 归档时间: |
|
| 查看次数: |
163 次 |
| 最近记录: |