0
Maveric 112
27.09.12
✎
06:25
|
Всем привет!:)
Нужно в запросе сформировать строковое поле, с текстом и вычисляемыми полями, при попытке добаления строки с функцией РАЗНОСТЬДАТ() выдает "несовместимые типы "ВЫРАЗИТЬ" "
Пример кода:
ВЫРАЗИТЬ(РАЗНОСТЬДАТ(ВЫБОР
КОГДА НачислениеАренднойПлаты.ДатаНачала <= НАЧАЛОПЕРИОДА(&НачПериода, ДЕНЬ)
ИЛИ НачислениеАренднойПлаты.ДатаНачала = ДАТАВРЕМЯ(1, 1, 1, 0, 0, 0)
ТОГДА НАЧАЛОПЕРИОДА(&НачПериода, ДЕНЬ)
ИНАЧЕ НачислениеАренднойПлаты.ДатаНачала
КОНЕЦ, ДОБАВИТЬКДАТЕ(ВЫБОР
КОГДА НачислениеАренднойПлаты.ДатаОкончания > КОНЕЦПЕРИОДА(&КонПериода, ДЕНЬ)
ИЛИ НачислениеАренднойПлаты.ДатаОкончания = ДАТАВРЕМЯ(1, 1, 1, 0, 0, 0)
ТОГДА КОНЕЦПЕРИОДА(&КонПериода, ДЕНЬ)
ИНАЧЕ НачислениеАренднойПлаты.ДатаОкончания
КОНЕЦ, ДЕНЬ, 1), ДЕНЬ) КАК СТРОКА)
Подскажите что я делаю не так?
|
|
1
ILM
гуру
27.09.12
✎
06:29
|
Правильно выдает. Типы не преобразуются в запросах.
Нельзя число в строку, дату в строку.
Ну или практически нельзя, без большого извращения.
Например, такого как:
ВЫБОР
КОГДА ГОД(Дата)=2012 ТОГДА "2012"
И т.д.
Напиши на 365/366 дней в году "ВЫБОР" и будет счастье.
|
|