Вход | Регистрация
 
1С:Предприятие :: 1С:Предприятие 8 общая

Подскажите, что за Приколы в Вычисляемом поле СКД

Подскажите, что за Приколы в Вычисляемом поле СКД
Я
   vfrcbv
 
04.07.19 - 14:59
Добрый день!
1. Если выражение «Вычисляемого поля» задать:
ОстатокНаСкладе-(НормаРасхода-КоличествоОборот)
то где КоличествоОборот > 0, вычисляемое выражение считается правильно. У всех остальных строк отчета (где КоличествоОборот нет) «Вычисляемое выражение» пустое. (что не верно)

2. Если выражение «Вычисляемого поля» задать:
ОстатокНаСкладе-(НормаРасхода-ISNULL(КоличествоОборот, 0))
то где КоличествоОборот > 0, вычисляемое выражение считается НЕ правильно. У всех остальных строк отчета (где КоличествоОборот нет) «Вычисляемое выражение» имеет правильное значение.
 
 
   vfrcbv
 
1 - 04.07.19 - 15:01
подскажите куда копать?
   vfrcbv
 
2 - 04.07.19 - 15:25
Ладно по другому спрошу, почему два выражение дают разные результаты:

1.ВЫБОР
        КОГДА КоличествоОборот>0
            ТОГДА ОстатокНаСкладе-(НормаРасхода-КоличествоОборот)
        ИНАЧЕ ОстатокНаСкладе-(НормаРасхода-ISNULL(КоличествоОборот, 0))
    КОНЕЦ



2.ВЫБОР
        КОГДА КоличествоОборот>0
            ТОГДА ОстатокНаСкладе-(НормаРасхода-КоличествоОборот)
        ИНАЧЕ 1
    КОНЕЦ


Дают разные результаты при истиности условия: КоличествоОборот>0
   palsergeich
 
3 - 04.07.19 - 15:30
(2) Выведи в консоли, которая пустые типы умеет отображать и посмотри что у тебя в косячных строках
   mikecool
 
4 - 04.07.19 - 15:31
второй вариант должен считать правильно, в данных мб косяки
   toypaul
 
5 - 04.07.19 - 15:32
патамушта надо писать

КОГДА ISNULL(КоличествоОборот, 0)>0
   shuhard
 
6 - 04.07.19 - 15:37
(5) +100500
   vfrcbv
 
7 - 04.07.19 - 15:49
(5) к сожалению не в этом причина.

если так написать:

ВЫБОР
        КОГДА ISNULL(КоличествоОборот, 0)>0
            ТОГДА ОстатокНаСкладе-(НормаРасхода-КоличествоОборот)
        ИНАЧЕ 1
    КОНЕЦ

все работает.

но стоит в ветке иначе указать выражения с любым полями скд, результат меняется при ИСТИНОСТИ условия меняется

ВЫБОР
        КОГДА ISNULL(КоличествоОборот, 0)>0
            ТОГДА ОстатокНаСкладе-(НормаРасхода-КоличествоОборот)
        ИНАЧЕ ОстатокНаСкладе-НормаРасхода
    КОНЕЦ
   palsergeich
 
8 - 04.07.19 - 15:49
(3) Ты это то сделай
   vfrcbv
 
9 - 04.07.19 - 15:50
(7) + т.е. два условия, при истиности ISNULL(КоличествоОборот, 0)>0 дают разные результаты.
   toypaul
 
10 - 04.07.19 - 15:52
у тебя в Иначе тоже может быть NULL
 
 Рекламное место пустует
   vfrcbv
 
11 - 04.07.19 - 15:58
(8) если не сложно можете ссылку кинуть?
   vfrcbv
 
12 - 04.07.19 - 16:00
(10) Может я чето не догоняю, но если условия Истина, то значение разельтата не должно зависеть от того что написано в ветке иначе?!
   dubolom
 
13 - 05.07.19 - 19:02
(0) Во втором случае что выдаёт-то, когда КоличествоОборот>0?

Список тем форума
Рекламное место пустует  Рекламное место пустует
ВНИМАНИЕ! Если вы потеряли окно ввода сообщения, нажмите Ctrl-F5 или Ctrl-R или кнопку "Обновить" в браузере.
Рекламное место пустует