![]() |
|
Условие в поле запроса не срабатывает | ☑ | ||
---|---|---|---|---|
0
Shur1cIT
09.06.14
✎
15:58
|
иметься условие, если в документе сделка поле "ОтсрочкаПлатежа" не заполнена то брать отсрочку из договора в поле "ДопустимоеЧислоДнейЗадолженности" прибавлять к дате доумента взаиморасчета и проверять ,если полученная дата меньше "НачПериод" то задолженность просроченная если нет то нет
вот в этом условии всегда срабатывает "ДоговорКонтрагента.ДопустимоеЧислоДнейЗадолженности" хотя в Сделке поле заполнено подскажите где я нокосячил с условием? ВЫБОР КОГДА ВЫБОР КОГДА ВзаиморасчетыСКонтрагентамиПоДокументамРасчетовОстатки.Сделка.ОтсрочкаПлатежа <> 0 И ВзаиморасчетыСКонтрагентамиПоДокументамРасчетовОстатки.Сделка.ОтсрочкаПлатежа <> NULL ТОГДА ДОБАВИТЬКДАТЕ(КОНЕЦПЕРИОДА(ВзаиморасчетыСКонтрагентамиПоДокументамРасчетовОстатки.ДокументРасчетовСКонтрагентом.Дата, ДЕНЬ), ДЕНЬ, ВзаиморасчетыСКонтрагентамиПоДокументамРасчетовОстатки.Сделка.ОтсрочкаПлатежа) ИНАЧЕ ДОБАВИТЬКДАТЕ(КОНЕЦПЕРИОДА(ВзаиморасчетыСКонтрагентамиПоДокументамРасчетовОстатки.ДокументРасчетовСКонтрагентом.Дата, ДЕНЬ), ДЕНЬ, ВзаиморасчетыСКонтрагентамиПоДокументамРасчетовОстатки.ДоговорКонтрагента.ДопустимоеЧислоДнейЗадолженности) КОНЕЦ < &НачПериод ТОГДА ВЫБОР КОГДА ВзаиморасчетыСКонтрагентамиПоДокументамРасчетовОстатки.СуммаВзаиморасчетовОстаток < 0 ТОГДА 0 ИНАЧЕ ВзаиморасчетыСКонтрагентамиПоДокументамРасчетовОстатки.СуммаВзаиморасчетовОстаток КОНЕЦ ИНАЧЕ 0 КОНЕЦ |
|||
1
StaticUnsafe
09.06.14
✎
16:10
|
(0) Семен Семеныч..
И ВзаиморасчетыСКонтрагентамиПоДокументамРасчетовОстатки.Сделка.ОтсрочкаПлатежа <> NULL Любое сравнение с NULL возвращает Ложь Надо писать Не ВзаиморасчетыСКонтрагентамиПоДокументамРасчетовОстатки.Сделка.ОтсрочкаПлатежа ЕСТЬ NULL |
|||
2
StaticUnsafe
09.06.14
✎
16:13
|
вообще лучше вот так
КОГДА ISNULL(ВзаиморасчетыСКонтрагентамиПоДокументамРасчетовОстатки.Сделка.ОтсрочкаПлатежа,0) <> 0 и все |
|||
3
DexterMorgan
09.06.14
✎
16:23
|
(0) лучше все же руководителем проектов иди
|
|||
4
StaticUnsafe
09.06.14
✎
16:25
|
(3) или зерно шерудить
|
|||
5
Dionis Sergeevich
09.06.14
✎
16:27
|
Чтоб не взорвалось.
Нам как раз РП нужен |
|||
6
Shur1cIT
09.06.14
✎
16:33
|
(1) ок спасибо а почему NULL всегда возвращает ложь?
|
|||
7
Lama12
09.06.14
✎
16:37
|
(6) Так написано с священном писании ЖКК.
|
|||
8
Maxus43
09.06.14
✎
16:38
|
(6) null это отсутствие сущности. Великая пустота. Она никогда не равна другой Великой пустоте. Это не значение, это диагноз
|
|||
9
Dionis Sergeevich
09.06.14
✎
16:38
|
NULL означает отсутствие, неизвестность информации. Значение NULL не является значением в полном смысле слова: по определению оно означает отсутствие значения и не принадлежит ни одному типу данных. Поэтому NULL не равно ни логическому значению FALSE, ни пустой строке, ни нулю. При сравнении NULL с любым значением будет получен результат NULL, а не FALSE и не 0. Более того, NULL не равно NULL!
|
|||
10
StaticUnsafe
09.06.14
✎
16:39
|
(6)
1. Не NULL возращает, а операция с ним; 2. Отсутствие значение ты сравниваешь с числом. Что, по твоему , должно возвращаться? Строго говоря БД возвращает даже не Ложь а специальный тип, а платформа преобразует его к Ложь чтоб попроще было тупым адинэснегам)) 3. Автор тролль или филолог по образованию? |
|||
11
Shur1cIT
09.06.14
✎
16:41
|
ок спасибо за ликбез)
|
|||
12
StaticUnsafe
09.06.14
✎
16:46
|
(11) о сколько нам открытий чудных,
готовит просвещенья век (с) Б. Нуралиев Может реально в РП ? не царское это дело, запросы писать |
|||
13
Shur1cIT
09.06.14
✎
16:49
|
(12) к осени сунуться попробую
|
|||
14
hhhh
09.06.14
✎
17:07
|
(12) насколько знаю работу РП: без знания ЕСТЬNULL там делать нечего, не стоит и соваться.
|
|||
15
DexterMorgan
09.06.14
✎
17:12
|
Ну а что, можно еще вбросить: в коде же можно сравнивать с NULL
|
|||
16
Dionis Sergeevich
09.06.14
✎
17:28
|
(15) В коде это одинесный тип значения) Который равен субдшному
|
|||
17
hhhh
09.06.14
✎
17:33
|
(16) в коде нет isnull, поэтому заменили по-быстрому на "="
|
|||
18
Dionis Sergeevich
09.06.14
✎
17:37
|
значение для этого придумали отдельное просто
|
|||
19
StaticUnsafe
09.06.14
✎
17:45
|
(14) ну если это документы подписывать и делать массаж заказчику то можно и без null
а если архитектуру базы данных проектировать, высоконагруженные системы, узкие места обходить, то тут понимание sql запросов даже на уровне гуру будет откровенно маловато. |
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |