Проблема с форматированием приглашения даты в Cognos Report Studio версии 10.2.1 - PullRequest
2 голосов
/ 25 февраля 2020

У меня проблема с сообщением: UDA- SQL -0144 Обнаружено исключение арифметического c. [IBM] [Драйвер CLI] [DB2 / NT64] SQL20448N «1993» не может интерпретироваться с использованием строки формата "ГГГГ-ММ-ДД" для функции TIMESTAMP_FORMAT. SQLSTATE = 22007
Я не совсем уверен, что не так ... Я пытался изменить формат, но это не помогло. Я использую форму to_date, но я не уверен, что она правильная. Вот мой SQL выбор, который я использую:

select laborcode,
(select sum(workhours) from workperiod where calnum='KOPA'and workdate between to_date(#prompt('StartDate','date')#,'YYYY-MM-DD') and to_date(#prompt('EndDate','date')#,'YYYY-MM-DD')) -
(select count(calnum) from workperiod where calnum='KOPA'and workdate between to_date(#prompt('StartDate','date')#,'YYYY-MM-DD') and to_date(#prompt('EndDate','date')#,'YYYY-MM-DD') and shiftnum='HOLIDAY') * 8 as stevilo_praznikov_ure,
(select sum(lt.regularhrs) from labtrans lt where lt.laborcode = l.laborcode and lt.orgid = l.orgid and startdate between to_date(#prompt('StartDate','date')#,'YYYY-MM-DD') and to_date(#prompt('EndDate','date')#,'YYYY-MM-DD')) as delovne_ure,
(select sum(ass.laborhrs) from assignment ass where ass.laborcode = l.laborcode and ass.scheduledate between to_date(#prompt('StartDate','date')#,'YYYY-MM-DD') and to_date(#prompt('EndDate','date')#,'YYYY-MM-DD')) as assignment_ure 
from labor l

1 Ответ

2 голосов
/ 27 февраля 2020

Я решил проблему с подсказками. Все, что мне нужно было сделать, это удалить тип данных "дата" , который у меня был в моих приглашениях, и установить шаблон формата на ГГГГ-ММ-ДД и работает как надо. Спасибо, ребята, за вашу помощь, очень ценю! Выберите сейчас:

select laborcode,
(select sum(workhours) from workperiod where calnum='KOPA'and workdate between to_date(#prompt('StartDate')#,'YYYY-MM-DD') and to_date(#prompt('EndDate')#,'YYYY-MM-DD')) -
(select count(calnum) from workperiod where calnum='KOPA'and workdate between to_date(#prompt('StartDate')#,'YYYY-MM-DD') and to_date(#prompt('EndDate')#,'YYYY-MM-DD') and shiftnum='HOLIDAY') * 8 as stevilo_praznikov_ure,
(select sum(lt.regularhrs) from labtrans lt where lt.laborcode = l.laborcode and lt.orgid = l.orgid and startdate between to_date(#prompt('StartDate')#,'YYYY-MM-DD') and to_date(#prompt('EndDate')#,'YYYY-MM-DD')) as delovne_ure,
(select sum(ass.laborhrs) from assignment ass where ass.laborcode = l.laborcode and ass.scheduledate between to_date(#prompt('StartDate')#,'YYYY-MM-DD') and to_date(#prompt('EndDate')#,'YYYY-MM-DD')) as assignment_ure 
from labor l
...