Имя: Пароль:
1C
1С v8
ЕСТЬ NULL
0 zonder2000
 
16.08.14
18:05
Всем добрый день.Такой вопрос-
ВЫБРАТЬ
    Номенклатура.Ссылка.Наименование КАК Наименование,
    Номенклатура.Ссылка.Код КАК Код,
    ВЫБОР
    КОГДА ЕСТЬNULL(ЦеныНоменклатуры.Цена, 0) <> 0
         ТОГДА ЦеныНоменклатуры.Цена
........
......
Не возвращает Ноль
Делаю так:
ВЫБРАТЬ
    Номенклатура.Ссылка.Наименование КАК Наименование,
    Номенклатура.Ссылка.Код КАК Код,
    Выбор
    Когда    ЦеныНоменклатуры.Цена ЕСТЬ NULL    ТОГДА 0
    Иначе   ЦеныНоменклатуры.Цена
......
.......
Тоже не возвращает Ноль.Если во втором варианте ставлю Тогда 1 То проставляет везде где нет цены 1.Вопрос:Почему не проставляет Ноль?
1 КтоКакБог
 
16.08.14
18:07
ну...понеслась
2 zonder2000
 
16.08.14
18:14
(1)поправьте если знаете в чем проблема
3 Sammo
 
16.08.14
18:16
1. Убрать Номенклатура.Ссылка, оставить только Номенклатура.
Т.к. обращение через точку делает неявное соединение таблице с ней же самой
4 КтоКакБог
 
16.08.14
18:17
а если просто
Номенклатура.Ссылка.Наименование КАК Наименование,
Номенклатура.Ссылка.Код КАК Код,
ЕСТЬNULL(ЦеныНоменклатуры.Цена, 0)
5 Sammo
 
16.08.14
18:19
2. В первом куске кода - что должно происходить, когда ЦеныНоменклатуры.Цена ЕСТЬ NULL ?
Подсказка Когда - это условие.

Кстати, соединение точно левое, а тл любят здесь делать неявное внутреннее
6 13Дима13
 
16.08.14
18:20
(0) Настрой в формате представление нуля
7 zonder2000
 
16.08.14
18:20
(4)не сработало тоже пусто в ячейке
8 КтоКакБог
 
16.08.14
18:21
(7) ты в консоли делаешь? там по умолчанию 0 не отображается.
9 zonder2000
 
16.08.14
18:22
ИЗ
    Справочник.Номенклатура.Изменения КАК Номенклатура
        ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.Цены.СрезПоследних(,ТипЦ = &ТипЦ) КАК ЦеныНоменклатуры
        ПО Номенклатура.Ссылка = ЦеныНоменклатуры.Номенклатура
Это вторая часть когда.извините что не показал сразу
10 zonder2000
 
16.08.14
18:22
(8) да
11 zonder2000
 
16.08.14
18:22
(8)пардон.конструктор запроса
12 zonder2000
 
16.08.14
18:23
(8) как быть?вероятно вы 100% поняли в чем дело.1 пишеться как и прочая лабуда"бла блоа бла".а как ноль записать?
13 13Дима13
 
16.08.14
18:24
(12) куда выводишь цену?
14 zonder2000
 
16.08.14
18:25
(6) подскажите как.Извините если глупость спросил
15 13Дима13
 
16.08.14
18:26
(14) цену куда выводите? в табличную часть?
16 zonder2000
 
16.08.14
18:27
(13) да
17 13Дима13
 
16.08.14
18:29
(16) в конфигураторе в свойствах реквизита табличной части щелкните по трем точкам возле поля формат, там выберите нужное представление нуля
18 zonder2000
 
16.08.14
18:29
(17) в ТЗ если быть точным.Извините за неточность
19 zonder2000
 
16.08.14
18:33
(18)Сорри за глупый вопрос,для таблицы значений как это сделать
20 13Дима13
 
16.08.14
18:35
(19) а таблицу значений ты как просматриваешь? через шифт ф9?
21 zonder2000
 
16.08.14
18:38
(20) да нет.В окне конструктора запроса делаю правки сохраняю,по кнопке на форме вызываю.ЦЕны там есть а где пусто ноля нет елки палки.единица непойдет
22 13Дима13
 
16.08.14
18:41
(21) на форму ТЗ куда выводится?
23 zonder2000
 
16.08.14
18:45
Процедура Кнопка3Нажатие(Элемент)
    Результат = ПолучитьРезультатЗапросаПостроителя();
    Если Результат <> Неопределено Тогда
        Результат.ВыбратьСтроку();
    КонецЕсли;    
КонецПроцедуры
Извините,вот код по которому моя ТЗ вываливается
24 zonder2000
 
16.08.14
19:02
ЕСТЬNULL(ЦеныНоменклатуры.Цена, (Формат(0, "ЧН=ноль"))) <> 0
можно использовать что то типа этого?
25 jsmith82
 
16.08.14
19:04
не вижу в топике ненавижу 1с
видимо, реально рванул рамблить ин да мск
26 zonder2000
 
16.08.14
19:07
да тут я :)
27 zonder2000
 
16.08.14
19:07
1с я люблю...за такие блин задачи
30 zonder2000
 
16.08.14
19:10
(25) помочь не желаете?
33 Sammo
 
модератор
16.08.14
19:50
Флуд в тематике
34 Ненавижу 1С
 
гуру
16.08.14
22:29
.(25) чего?
35 m-serg74
 
16.08.14
23:45
(24) "ЕСТЬNULL(ЦеныНоменклатуры.Цена, (Формат(0, "ЧН=ноль"))) <> 0
можно использовать что то типа этого?"

если ты хочешь видеть строковое представление нуля по ВыбратьСтроку()

то пиши в запросе
ЕСТЬNULL(ЦеныНоменклатуры.Цена, "0")
36 User_Agronom
 
17.08.14
07:47
(0) Вместо  Когда    ЦеныНоменклатуры.Цена ЕСТЬ NULL    ТОГДА 0

Попробуй  Когда    ЦеныНоменклатуры.Цена ЕСТЬ NULL    ТОГДА "ноль"

Что выведет твоя ТЗ?
Есть два вида языков, одни постоянно ругают, а вторыми никто не пользуется.