首页 > 解决方案 > 如何在 sql 查询“mo_global.set_policy_context('S',orgid);”中在 oracle 中设置策略上下文

问题描述

在你设置上下文策略之前,Oracle 中有一些视图不会有数据。我需要在 SQL 查询中进行设置,以便我运行一次查询。

BEGIN
   MO_GLOBAL.SET_POLICY_CONTEXT ('S', 82);
END;

我创建了一个用于设置上下文策略的函数。

CREATE OR REPLACE FUNCTION APPS.sset_policy_context (p_ou NUMBER)
   RETURN NUMBER
IS
BEGIN
   MO_GLOBAL.SET_POLICY_CONTEXT ('S', p_ou);

   RETURN (1);
END sset_policy_context;

我想在选择之前使用 SQL 查询中的函数来填充视图中的数据。像这样的东西:

编辑1:当我尝试执行时,即使下次运行也没有设置上下文,可能是由于SQL的执行顺序。

SELECT *
  FROM RA_CUST_TRX_LINE_GL_DIST_V
 WHERE 1 = (SELECT set_policy_context (81) FROM DUAL);

标签: sqloracleplsql

解决方案


推荐阅读