ODI Script
ODI Script
select
distinct ses.AGENT_NAME CONTEXT_CODE, ses.SCEN_NAME, ses.USER_NAME
FROM ODI_PROD_WORK.snp_sess_task_log task,
ODI_PROD_WORK.snp_step_log step,
ODI_PROD_WORK.snp_session ses
where ses.sess_no = step.sess_no AND step.sess_no = task.sess_no AND
step.nno = task.nno and
dbms_lob.instr(task.def_txt, '') > 0
and trunc(task.task_beg ) >= '01-MAR-2018' and trunc(task.task_end)<='13-Aug-
2018';
SELECT DISTINCT
TRUNC (SYSDATE) calendar_date,
lp.i_lp_inst LOAD_PLAN_ID,
lp.load_plan_name,
lpi.nb_run AS load_plan_rerun_number,
lps.LP_PARENT_STEP_ID LP_PARENT_STEP_ID,
lps.LP_child_STEP_ID LP_child_STEP_ID,
lps.LP_STEP_ORDER LP_STEP_ORDER,
lps.lp_step_name lp_step_name,
TO_CHAR (lpsl.start_date, ' DD-MON-RR HH12:MI:SS AM') LP_STEP_StART,
TO_CHAR (lpsl.end_date, ' DD-MON-RR HH12:MI:SS AM') LP_STEP_END,
-- ROUND (24*3600 (lpsl.end_date - lpsl.start_date), 2)
LP_STEP_DURATION,
ses.sess_no session_id,
step.nno AS step_no,
task.scen_task_no task_no,
ses.sess_name AS session_name,
TO_CHAR (ses.sess_beg, ' DD-MON-RR HH12:MI:SS AM')
AS session_start_time,
TO_CHAR (ses.sess_end, ' DD-MON-RR HH12:MI:SS AM')
AS session_stop_time,
TO_CHAR (step.step_beg, ' DD-MON-RR HH12:MI:SS AM')
AS step_start_time,
TO_CHAR (step.step_end, ' DD-MON-RR HH12:MI:SS AM')
AS step_stop_time,
TO_CHAR (task.TASK_BEG, ' DD-MON-RR HH12:MI:SS AM')
AS task_Start_Time,
TO_CHAR (task.TASK_END, ' DD-MON-RR HH12:MI:SS AM')
AS task_End_Time,
CASE
WHEN lpi.status = 'D' THEN 'Done'
WHEN lpi.status = 'E' THEN 'Error'
WHEN lpi.status = 'M' THEN 'Warning'
WHEN lpi.status = 'R' THEN 'Running'
WHEN lpi.status = 'W' THEN 'Waiting'
END
load_plan_status,
CASE
WHEN task.task_status = 'D' THEN 'Done'
WHEN task.task_status = 'E' THEN 'Error'
WHEN task.task_status = 'M' THEN 'Warning'
WHEN task.task_status = 'R' THEN 'Running'
WHEN task.task_status = 'W' THEN 'Waiting'
END
task_status,
CASE
WHEN step.step_status = 'D' THEN 'Done'
WHEN step.step_status = 'E' THEN 'Error'
WHEN step.step_status = 'M' THEN 'Warning'
WHEN step.step_status = 'R' THEN 'Running'
WHEN step.step_status = 'W' THEN 'Waiting'
END
Step_Status,
CASE
WHEN ses.sess_status = 'D' THEN 'Done'
WHEN ses.sess_status = 'E' THEN 'Error'
WHEN ses.sess_status = 'M' THEN 'Warning'
WHEN ses.sess_status = 'R' THEN 'Running'
WHEN ses.sess_status = 'W' THEN 'Waiting'
END
Session_Status,
task.nb_row AS task_rows_processed,
task.nb_ins AS task_rows_inserted,
task.nb_upd AS task_rows_updated,
task.nb_del AS task_rows_deleted,
task.nb_err AS task_rows_errored,
step.nb_row AS step_rows_processed,
step.nb_ins AS step_rows_inserted,
step.nb_upd AS step_rows_updated,
step.nb_del AS step_rows_deleted,
step.nb_err AS step_rows_errored,
ses.nb_row AS session_rows_processed,
ses.nb_ins AS session_rows_inserted,
ses.nb_upd AS session_rows_updated,
ses.nb_del AS session_rows_deleted,
ses.nb_err AS session_rows_errored,
DBMS_LOB.SUBSTR (task.error_message, 2000, 1) task_error_msg,
DBMS_LOB.SUBSTR (step.error_message, 2000, 1) step_error_msg,
DBMS_LOB.SUBSTR (ses.error_message, 2000, 1) session_error_msg,
task.task_name3 AS comments
FROM ODI_PROD_WORK.snp_lp_inst lp,
ODI_PROD_WORK.snp_lpi_run lpi,
dmv_snp_lpi_step lps,
ODI_PROD_WORK.snp_lpi_step_log lpsl,
ODI_PROD_WORK.snp_session ses,
ODI_PROD_WORK.snp_step_log step,
ODI_PROD_WORK.snp_sess_task_log task
WHERE 1 = 1
AND lp.i_lp_inst = lpi.i_lp_inst
AND lp.i_lp_inst = lps.i_lp_inst
AND lps.i_lp_inst = lpsl.i_lp_inst
AND lps.i_lp_step = lpsl.i_lp_step
AND lpi.nb_run = lpsl.nb_run
AND LPSL.sess_no = ses.sess_no(+)
AND ses.sess_no = step.sess_no(+)
AND step.sess_no = task.sess_no(+)
AND step.nno = task.nno(+)
-- and lp.i_lp_inst = 37
--connect by prior lps.par_i_lp_step = lps.i_lp_step
ORDER BY 2,
4,
9,
7,
CASE
WHEN lp_parent_step_id IS NULL THEN 0
ELSE lp_parent_step_id
END,
6,
12,
13,
14;