У меня есть отчет кристалл, который проходит дату в запросе SQL {Date}?Crystal Reports - Oracle 01861 Ошибка
Это работает, когда кристалл подключен с помощью соединения ODBC, однако при изменении его в «Oracle Server» подключение Я получаю сообщение об ошибке:
ORA-01861: literal does not match format string
Я попытался удалить to_char или TO_DATE (как на исследования это, кажется, причиной проблемы, но безрезультатно)
SELECT
ACTIVE_SEPARATE.WO_NO,
MCH_TYPE,
24 * (to_date(to_char(REAL_F_DATE,'DD-MM-YYYY HH24:MI:SS'), 'DD-MM-YYYY HH24:MI:SS') - to_date(to_char(REQUIRED_START_DATE,'DD-MM-YYYY HH24:MI:SS'), 'DD-MM-YYYY HH24:MI:SS')) as BREAKDOWN_HOURS,
(100 - (((24 * (to_date(to_char(last_day(to_date({?Month}, 'dd-mm-yyyy')),'DD-MM-YYYY'), 'DD-MM-YYYY') - to_date(to_char(trunc(to_date({?Month}, 'dd-mm-yyyy'), 'month'),'DD-MM-YYYY'), 'DD-MM-YYYY'))) + 24) - (24 * (to_date(to_char(REAL_F_DATE,'DD-MM-YYYY HH24:MI:SS'), 'DD-MM-YYYY HH24:MI:SS') - to_date(to_char(REQUIRED_START_DATE,'DD-MM-YYYY HH24:MI:SS'), 'DD-MM-YYYY HH24:MI:SS'))))/((24 * (to_date(to_char(last_day(to_date({?Month}, 'dd-mm-yyyy')),'DD-MM-YYYY'), 'DD-MM-YYYY') - to_date(to_char(trunc(to_date({?Month}, 'dd-mm-yyyy'), 'month'),'DD-MM-YYYY'), 'DD-MM-YYYY'))) + 24)) AS PERCENTAGE_AVAILABILITY
FROM ACTIVE_SEPARATE
RIGHT JOIN EQUIPMENT_FUNCTIONAL ON EQUIPMENT_FUNCTIONAL.MCH_CODE = (SELECT DISTINCT CASE WHEN MCH_CODE LIKE '%-%' THEN TRIM(SUBSTR(MCH_CODE, 0, INSTR(MCH_CODE, '-')-1)) ELSE MCH_CODE END FROM ACTIVE_SEPARATE ACTIVE_SEPARATE_SUB WHERE ACTIVE_SEPARATE.MCH_CODE = ACTIVE_SEPARATE_SUB.MCH_CODE)
WHERE ERR_CLASS = '001'
AND MCH_TYPE IS NOT NULL
AND (ACTIVE_SEPARATE.REQUIRED_START_DATE BETWEEN
trunc({?Month}, 'MM')
AND
LAST_DAY({?Month}))
вшивый гр Это означает, что пользователь вводит дату (любую дату). Этот код займет дату. Выполните общее количество часов в выбранном месяце.
Он также разработает часы пробоя, взяв время окончания и время начала работы друг от друга.
В конце концов, это будет работать в течение нескольких часов в месяце - часы brakedown, чтобы предоставить нам доступные часы.
Это будет очень сложно устранить этот уродливый код. Указывает ли номер строки на ошибку? Можете ли вы загрузить некоторые образцы данных? Нам нужно посмотреть, с чего это начинается, если нам нужно будет преобразовать дату 3 раза за 1 значение. – mmmmmpie
Номер строки. Я знаю коды уродливые, схема, с которой я работаю, ужасна. Сейчас я отредактирую. – LaLa
Является ли эта часть гораздо большего вида или запроса? Разбейте некоторые из этих штук и проведите их отчетливо. Например, выполните это: 'select to_char (REAL_F_DATE, 'DD-MM-YYYY HH24: MI: SS') из HISTORICAL_SEPARATE;' повторите это, пока не будете запускать целые фрагменты. – mmmmmpie