Как получить текущий статус долгосрочного отчета?

При выполнении длительного отчета в Oracle Application Server 10g статус отчета существует в консоли администратора OAS, что-то вроде «25 из 3225 страниц завершено».

Как я могу получить это значение от OAS, чтобы отображать его пользователю в формах оракула.


person Islam    schedule 10.04.2012    source источник


Ответы (1)


Не уверен, но возможно, что он хранится в v$session_longops. Примеры см. здесь.

Некоторый код оракула записывается в V$session_longops, но вы также можете кодировать в свои собственные приложения, используя некоторые предоставленные функции PLSQL.

Если OAS или сам отчет что-то записывает сюда, вы можете получить эту информацию из формы оракула для отображения пользователю при запуске отчета.

Во время выполнения приведенного выше кода содержимое представления 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
person Trevor North    schedule 01.08.2012