SELECT wk.*,
decode(wk.description, NULL, pt.user_concurrent_program_name, wk.description || ' (' || pt.user_concurrent_program_name || ')') program, pt.user_concurrent_program_name user_concurrent_program_name, fe.execution_method_code, decode(fe.execution_method_code, 'H', '主机', 'S', '立即', 'J', 'Java 存储过程', 'K', 'Java 并发程序', 'M', '多语言功能', 'P', 'Oracle Reports', 'I', 'PL/SQL 存储过程', 'B', '请求集阶段函数', 'A', '派生', 'L', 'SQL*Loader 程序', 'Q', 'SQL*Plus', 'E', 'Perl 并发程序', 'Others') execution_method_name, fe.execution_file_name, fi.last_run_date, fi.avg_run_time, fi.max_run_time, fi.min_run_time FROM (SELECT r.ROWID row_id, r.request_id, r.request_date, r.requested_by, r.requested_start_date, r.responsibility_application_id, r.responsibility_id, r.parent_request_id, r.controlling_manager, r.description, r.actual_start_date, r.actual_completion_date, r.completion_text, r.argument_text, r.program_application_id, r.concurrent_program_id, (r.actual_completion_date - r.actual_start_date) * (86400 / 60) minute1 FROM fnd_concurrent_requests r WHERE 1 = 1 --r.request_id IN (1122991, 1109743, 1109563) AND (r.actual_completion_date - r.actual_start_date) * 86400 > 60 * 30) wk, fnd_concurrent_programs_tl pt, fnd_concurrent_programs pb, fnd_executables_vl fe, fnd_conc_prog_onsite_info fi WHERE 2 = 2 --(SQL*Plus,PL/SQL 存储过程,Oracle Reports,Java 存储过程,Java 并发程序) AND pb.application_id = wk.program_application_id AND pb.concurrent_program_id = wk.concurrent_program_id AND pb.application_id = pt.application_id AND pb.concurrent_program_id = pt.concurrent_program_id AND pt.LANGUAGE = userenv('LANG') AND fe.executable_id = pb.executable_id AND fi.program_application_id = wk.program_application_id AND fi.concurrent_program_id = wk.concurrent_program_id ORDER BY pt.user_concurrent_program_name, wk.minute1 DESC;