1
在Oracle应用服务器10g中运行长时间运行的报告时,报告的状态在OAS管理控制台中存在,例如“完成了3225个页面中的25个”。如何获得长时间运行的报告当前状态?
如何从OAS获得该值以便能够以oracle形式将其显示给用户。
在Oracle应用服务器10g中运行长时间运行的报告时,报告的状态在OAS管理控制台中存在,例如“完成了3225个页面中的25个”。如何获得长时间运行的报告当前状态?
如何从OAS获得该值以便能够以oracle形式将其显示给用户。
不确定,但它可能存储在v $ session_longops中。例子见here。
某些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