|
v7: Ошибка преобразования пустой даты. | ☑ | ||
---|---|---|---|---|
0
Eeakie
29.09.15
✎
13:56
|
Добрый день.
Текст = " |select | РБН.iddoc as [Расходная $Документ.РасходнаяБН], | $РБНСтроки.ППартия as [Партия $Документ] |from | $Документ.РасходнаяБН as РБН with (nolock) |left join | $ДокументСтроки.РасходнаяБН as РБНСтроки with (nolock) on РБНСтроки.iddoc = РБН.iddoc |where | $РБН.Фирма = :Фирма and | $РБН.ДатаОтметкиВНалоговой between :НачДата and :КонДата~"; ПрямойЗапрос = СоздатьОбъект("ODBCRecordSet"); ПрямойЗапрос.УстановитьТекстовыйПараметр("Фирма", Фирма); ПрямойЗапрос.УстановитьТекстовыйПараметр("НачДата", глНачалоИнтервала); ПрямойЗапрос.УстановитьТекстовыйПараметр("КонДата", глКонецИнтервала); ПрямойЗапрос.ВыполнитьИнструкцию(Текст, ТЗОбщая); // Ошибка преобразования даты или времени из символьной строки Да, ДатаОтметкиВНалоговой может быть пустая. Как обойти? |
|||
1
igork1966
29.09.15
✎
13:58
|
(0) Как вариант формировать запрос кодом
|
|||
2
igork1966
29.09.15
✎
13:59
|
(1) + С исключением ненужных параметров.
|
|||
3
Ёпрст
29.09.15
✎
13:59
|
ДатаОтметкиВНалоговой тут не причем, смотрите, что в глНачалоИнтервала и в глКонецИнтервала - там мусор
|
|||
4
igork1966
29.09.15
✎
14:00
|
(3) +1
|
|||
5
Eeakie
29.09.15
✎
14:00
|
(3) Там стандартный тип "Дата". Может их преобразовать в строчные?
|
|||
6
Ёпрст
29.09.15
✎
14:02
|
(5)
сообщить(глНачалоИнтервала) Сообщить(глКонецИнтервала) + покажи, что ПрямойЗапрос.Отладка(1) кажет |
|||
7
Eeakie
29.09.15
✎
14:05
|
(6)
01.09.15 30.09.15 select РБН.iddoc as [Расходная $Документ.РасходнаяБН], РБНСтроки.sp4659 as [Партия $Документ] from dh355 as РБН with (nolock) left join dt355 as РБНСтроки with (nolock) on РБНСтроки.iddoc = РБН.iddoc where РБН.sp356 = ' MХПС' and РБН.sp8404 between '20150901' and '20150930Z' |
|||
8
Ёпрст
29.09.15
✎
14:09
|
ДатаОтметкиВНалоговой , в пофигураторе, какого типа ?
|
|||
9
igork1966
29.09.15
✎
14:09
|
'20150930Z'
а чего это за Z в конце? |
|||
10
Eeakie
29.09.15
✎
14:10
|
(8) Дата.
(9) ~ |
|||
11
Serginio1
29.09.15
✎
14:12
|
NullIf(Док.sp9650, '17530101')
NullIf($РБН.ДатаОтметкиВНалоговой between, '17530101') :НачДата and :КонДата"; А зачем тебе :КонДата~" Это делается для Жур.DATE_TIME_IDDOC |
|||
12
Serginio1
29.09.15
✎
14:13
|
NullIf($РБН.ДатаОтметкиВНалоговой, '17530101') between
:НачДата and :КонДата"; |
|||
13
Eeakie
29.09.15
✎
14:15
|
(12) Взлетело, чёрт побери. Спасибо. И да, что-то уже по привычке "включаю" ~.
|
|||
14
Eeakie
29.09.15
✎
14:17
|
Я даже больше скажу. Взлетело и по-простому:
$РБН.ДатаОтметкиВНалоговой between :НачДата and :КонДата С тильдой погорячился. |
|||
15
Ёпрст
29.09.15
✎
14:19
|
(12) там же никогда null не будет, nullif не нужен
|
|||
16
dk
29.09.15
✎
14:38
|
$РБН.ДатаОтметкиВНалоговой between :НачДата and :КонДата~~
? |
|||
17
Eeakie
29.09.15
✎
14:41
|
(16) Опачки. Что за две тильды.. тоже работает.
|
|||
18
Serginio1
29.09.15
✎
14:44
|
(15) Хуже не будет.
|
|||
19
dk
29.09.15
✎
14:50
|
SELECT
:Д1 _1 , :Д1~ _2 , :Д1~~ _3 |
|||
20
Eeakie
29.09.15
✎
15:00
|
(19) Можно в двух словах что за оно?
|
|||
21
dk
29.09.15
✎
15:10
|
по разному дату в запросе представляет Д1~ это со временем если надо
|
|||
22
Eeakie
29.09.15
✎
15:29
|
(21) Спасибо.
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |