У меня есть просьба запланировать несколько отчетов один за другим в oracle BI Publisher. Планировщик отчетов начинал работать в 19:00 и заканчивал работу со всеми отчетами почти в 7:00 утра следующего дня. Я думал создать триггер, который проверял бы базу данных BI Publisher, если был запущен еще один конкретный отчет, а затем запускал этот отчет. Триггерный запрос выглядит следующим образом:
select "XMLP_SCHED_JOB"."STATUS" as "STATUS",
"XMLP_SCHED_JOB"."CREATED" as "CREATED",
"XMLP_SCHED_JOB"."USER_JOB_NAME" as "USER_JOB_NAME",
"XMLP_SCHED_JOB"."JOB_TYPE" as "JOB_TYPE"
from "DEV1_BIPLATFORM"."XMLP_SCHED_JOB" "XMLP_SCHED_JOB"
where "XMLP_SCHED_JOB"."STATUS" !='R'
and "XMLP_SCHED_JOB"."CREATED" BETWEEN (SELECT CASE WHEN TRUNC( SYSDATE, 'HH24' ) < TRUNC(SYSDATE) + 7/24 THEN TRUNC(SYSDATE-1) + 7/24
ELSE TRUNC(SYSDATE) + 7/24 END FROM DUAL
)
AND SYSDATE
and "XMLP_SCHED_JOB"."USER_JOB_NAME" ='test'
and "XMLP_SCHED_JOB"."JOB_TYPE" ='I'
Когда я запускаю его в базе данных oracle, я обычно получаю результаты, но когда я ввожу его в триггерный запрос BI Publisher, я получаю сообщение об ошибке в журналах:
oracle.xdo.XDOException: oracle.xdo.XDOException: oracle.xml.parser.v2.XMLParseException: ожидаемое имя вместо .
Я получаю ошибку только тогда, когда я помещаю TRUNC( SYSDATE, 'HH24' ) < TRUNC(SYSDATE) + 7/24
в запрос