Имя: Пароль:
1C
 
Проблема с запросом, как "объяснить" 1С что если пусто то это значит ноль?
0 tatoshka0403
 
21.04.15
16:20
Сделал запрос с двумя Виртуальными таблицами, а в третьем пакете рассчитываю разницу между первыми двумя. Как "объяснить" 1С что если пусто то это значит ноль?
втОстатки.КоличествоКонечныйОстаток - втРезерв.КоличествоКонечныйОстаток КАК СвободныйОстаток
1 ДенисЧ
 
21.04.15
16:22
в 1с нет понятия "пусто", так что конкретизируй вопрос
2 ДенисЧ
 
21.04.15
16:22
А пока думаешь, почитай про функции языка запросов... И погрепи на тему NULL
3 Анцеранана
 
21.04.15
16:23
ЕСТЬNULL что ли?
4 dauster
 
21.04.15
16:23
Если под "пусто" понимается NULL, то:

ЕСТЬNULL(...,0)
ВЫБОР КОГДА ПОЛЕ ЕСТЬ NULL ТОГДА ...
5 Krolik Bezobraznik
 
21.04.15
16:25
(0) Я не совсем понял - пусто вы имеете ввиду результат математической операции вычитания или пусто в одном из пакетов?
6 tatoshka0403
 
21.04.15
16:25
(4) ЕСТЬNULL(ОстаткиТоваровОстаткиИОбороты.КоличествоКонечныйОстаток, 0) не помогает
(1) Есть два регистра в одном из них есть запись, а в другом нету, и в третьем "пакете" разница не хочет считаться
7 Krolik Bezobraznik
 
21.04.15
16:26
(6) У вас пусто в результате операции вычитания одного поля из другого?
8 Гёдза
 
21.04.15
16:26
ЕСТЬNULL(втОстатки.КоличествоКонечныйОстаток, 0) - ЕСТЬNULL(втРезерв.КоличествоКонечныйОстаток, 0)
9 tatoshka0403
 
21.04.15
16:27
(7) Да
10 Krolik Bezobraznik
 
21.04.15
16:28
(9) Так там строковый тип возвращается, потому и пусто. Возвращайте числовой и будет у вас там 0.
11 Krolik Bezobraznik
 
21.04.15
16:28
(9) ВЫРАЗИТЬ КАК ЧИСЛО
12 Krolik Bezobraznik
 
21.04.15
16:32
В вашем случае это так:

ВЫРАЗИТЬ (втОстатки.КоличествоКонечныйОстаток - втРезерв.КоличествоКонечныйОстаток КАК ЧИСЛО(15,2)) КАК СвободныйОстаток
13 palpetrovich
 
21.04.15
16:32
(0) не вижу как формируются исходные таблицы, уверен что в
втОстатки вообще есть хотя-бы "нулевая" строка с Товаром, по которому вычитание с лвтРезерв происходит?
14 DrShad
 
21.04.15
16:33
(12) бред
15 tatoshka0403
 
21.04.15
16:34
(12) Не хочет.
16 samozvanec
 
21.04.15
16:34
(6) всем помогает, тебе не помогает
(14) +1
17 Asmody
 
21.04.15
16:35
(10) Это с каких пор …КонечныйОстаток стал строковым?
18 Asmody
 
21.04.15
16:35
после (8) ветку можно закрывать
19 tatoshka0403
 
21.04.15
16:36
(8) не помогло)
20 Бубка Гоп
 
21.04.15
16:37
(4) до потери пульса
21 Asmody
 
21.04.15
16:38
(19) Хроническую криворукость тут не вправляют. Обратитесь к специалисту.
22 Бубка Гоп
 
21.04.15
16:38
(0) кстати, вт как соединяются между собой?
23 Krolik Bezobraznik
 
21.04.15
16:38
(17) Не остаток а результат запроса
24 Asmody
 
21.04.15
16:39
(23) чё?!
25 Krolik Bezobraznik
 
21.04.15
16:39
(17) В консоли проверьте мою догадку =)
26 Бубка Гоп
 
21.04.15
16:39
(23) либо я дурак, либо лыжи не едут... а запрос по какой таблице?
27 tatoshka0403
 
21.04.15
16:39
(22) Полным
28 Krolik Bezobraznik
 
21.04.15
16:40
(27) Не трави душу выложи запрос целиком. Народ уже нервничает
29 Бубка Гоп
 
21.04.15
16:41
(27) с ЕстьNull все равно результат только в строках где есть остаток?
30 Krolik Bezobraznik
 
21.04.15
16:41
(0) Ты объясни, в результате выполнения твоего запроса возникают какие либо ошибки?
31 samozvanec
 
21.04.15
16:42
(26) какая разница, к какой, если ЕСТЬNULL(втОстатки.КоличествоКонечныйОстаток, -->0<--)?
32 Бубка Гоп
 
21.04.15
16:43
(31) это к (23)
33 Asmody
 
21.04.15
16:44
Я подозреваю, что ТС смотрит на результат запроса в консоли или в каком-нибудь отчете и видит пустое место вместо нулей.
34 tatoshka0403
 
21.04.15
16:44
Все туплю...закройте тему)))
35 Бубка Гоп
 
21.04.15
16:44
(33) +1
36 samozvanec
 
21.04.15
16:45
(32) нене, это к вопросу "какая таблица?". не едут лыжи, инфа 100%
37 Krolik Bezobraznik
 
21.04.15
16:45
(33) Та я о чем и говорил ранее
38 DrShad
 
21.04.15
16:46
(37) бред ты нес всю ветку
39 samozvanec
 
21.04.15
16:47
(37) 0 не видно, "0" видно. см (38)