在 Oracle 应用服务器 10g 中运行长时间运行的报告时,报告的状态存在于 OAS 管理控制台中,类似于“25 of 3225 Pages completed”。
我如何从 OAS 获得这个值,以便能够以 oracle 形式将其显示给用户。
在 Oracle 应用服务器 10g 中运行长时间运行的报告时,报告的状态存在于 OAS 管理控制台中,类似于“25 of 3225 Pages completed”。
我如何从 OAS 获得这个值,以便能够以 oracle 形式将其显示给用户。
不确定,但它可能存储在 v$session_longops 中。有关示例,请参见此处。
一些 oracle 代码写入 V$session_longops,但您也可以使用一些提供的 PLSQL 函数将其编码到您自己的应用程序中。
如果 OAS 或报告本身正在向此处写入内容,您可以从 oracle 表单中获取该信息,以便在报告运行时显示给用户。
在上面的代码运行的同时,可以通过如下方式查询到 v$session_longops 视图的内容。
COLUMN opname FORMAT A20
COLUMN target_desc FORMAT A20
COLUMN units FORMAT A10
SELECT
opname,
target_desc,
sofar,
totalwork,
time_remaining,
units
FROM
v$session_longops
下面列出了此 v$session_longops 查询的预期输出类型。
OPNAME TARGET_DESC SOFAR TOTALWORK UNITS
-------------------- -------------------- ---------- ---------- ----
BATCH_LOAD BATCH_LOAD_TABLE 3 10 rows