Имя: Пароль:
1C
1С v8
Вычисляемые поля в СКД по итоговым полям
, ,
0 Ayrym
 
17.05.16
16:19
Добрый день! Создала Отчет в СКД с двумя вложенными запросами, но нужно добавить еще 1 поле для вычисление, поле добавляю, пишу Выражение как ОстатокНачальный+Приход-Расход, но поле считать отказывается, считает только те строки где есть числа во всех 3-х колонках, скажи, как обойти эту ситуацию, я только учусь...хелп
1 ДенисЧ
 
17.05.16
16:22
ЕСТЬNULL
2 Ayrym
 
17.05.16
16:31
Вот выражение   Сумма(Остаток)+Сумма(Приход)-Сумма(Расход)
3 Ayrym
 
17.05.16
16:31
куда этот ЕСТЬNULL писать?
4 Ayrym
 
17.05.16
17:32
(1) Вот выражение   Сумма(Остаток)+Сумма(Приход)-Сумма(Расход). куда этот ЕСТЬNULL писать? Я уже испробовала, разные варианты, но все  никак(((
5 Sabbath
 
17.05.16
17:42
(4) Я думаю, так Сумма(ЕСТЬNULLОстаток)+ЕСТЬNULLПриход)-ЕСТЬNULL(Расход)).

А зачем у тебя три поля, когда они все из одного набора данных? Я так понял, сумму этих полей, можно уже в запросе посчитать. А в ресурсах считать итог уже по суммарному полю.
6 Sabbath
 
17.05.16
17:43
забыл скобку Сумма(ЕСТЬNULL(Остаток)+ЕСТЬNULLПриход)-ЕСТЬNULL(Расход))
7 Sabbath
 
17.05.16
17:43
и еще одну)

Сумма(ЕСТЬNULLОстаток)+ЕСТЬNULL(Приход)-ЕСТЬNULL(Расход))
8 Sabbath
 
17.05.16
17:44
черт.. я устал, я ухожу
9 aleks_default
 
17.05.16
17:45
Сказали уже куда ему этот NULL засунуть?
10 Guk
 
17.05.16
17:46
(9) это дама...
11 Guk
 
17.05.16
17:47
(8) сегодня не твой день. ни в одном посте нет правды...
12 Sabbath
 
17.05.16
17:47
(10) за милых дам, за милых дам, засунем NULL и тут и там
13 Sabbath
 
17.05.16
17:48
(11) согласен :'(
14 Sabbath
 
17.05.16
17:48
(11) но я пытался
15 aleks_default
 
17.05.16
17:48
(10)тогда пардон
16 Guk
 
17.05.16
17:49
(4) достаточно добавить ЕСТЬNULL в переменные, по которым считается вычисляемое поле...
17 aleks_default
 
17.05.16
17:50
ЕстьNull (IsNull)
Данная функция возвращает значение второго параметра в случае, если значение первого параметра NULL.

В противном случае будет возвращено значение первого параметра.

Пример:

ЕстьNULL(Сумма(Продажи.СуммаОборот), 0)
18 Sabbath
 
17.05.16
17:51
(16) по-моему, выражение в (4) не правильное. Надо типа того, что я пытался в (5)
Или без разницы?
19 Guk
 
17.05.16
17:55
(18) в вычисляемом поле естьнулл вообще не нужен...
20 Sabbath
 
17.05.16
18:02
(19) да это ясно, можно и без этого, я не про то

Либо Сумма(П1 + П2 + П3)
Либо Сумма(П1) + Сумма(П2) + Сумма(П3)

У нее второй вариант, а я за первый
21 Ayrym
 
18.05.16
09:33
Спасибо, что заметили мою половую принадлежность)))) да и еще - я совсем совсем новичок. Буду сейчас пробовать варианты
22 Ayrym
 
18.05.16
11:27
(16) Добавила, но теперь расчет идет по всем строкам ,а мне нужно только  по итоговым, на закладке ресурсов выбирала разные варианты "расчитыть по " ,но все равно считает все поля
23 Тролль главный
 
18.05.16
11:32
(16)
правильно: ЕСТЬNULL(СУММА(Х),0)
неправильно: СУММА(ЕСТЬNULL(Х,0))
24 Ayrym
 
18.05.16
11:44
(23) ЕСТЬNULL(СУММА(Х),0)  вот такой конструкцией и пользуюсь, как в вычисляемом поле оставить расчет только по нужным итоговым строкам?
25 Тролль главный
 
18.05.16
11:45
ЕСТЬNULL(Сумма(Остаток),0)+ЕСТЬNULL(Сумма(Приход),0)-ЕСТЬNULL(Сумма(Расход),0)
26 Ayrym
 
18.05.16
11:58
(25) Не помогло, даже по некоторым полям где нет прихода, вообще ничего не считает((( есть еще варианты
27 TeMochkiN
 
18.05.16
12:16
Сумма(ЕСТЬNULL(Остаток, 0))+Сумма(ЕСТЬNULL(Приход, 0))-Сумма(ЕСТЬNULL(Расход, 0))
28 Тролль главный
 
18.05.16
12:17
(26) надеюсь ты это в ресурсах пишешь?
29 Тролль главный
 
18.05.16
12:17
(27) смотри (23)
30 TeMochkiN
 
18.05.16
12:18
(29) ой, я думал про поле в запросе, а не вычисляемое
31 Тролль главный
 
18.05.16
12:30
(30) в запросе все тоже самое
32 TeMochkiN
 
18.05.16
12:33
(31) разве? в поле NULL, как он его просуммирует?
33 TeMochkiN
 
18.05.16
12:34
если в поле NULL*
34 Тролль главный
 
18.05.16
12:45
(32) он его игнорирует, согласно правилам агрегатных функций SQL
35 Ayrym
 
18.05.16
12:45
(28) Ну да, в ресурсах, беда-беда(((
36 TeMochkiN
 
18.05.16
12:49
(34) прикольно, буду знать)
37 Ayrym
 
19.05.16
11:07
Всем спасибо разобралась с NULL. Нужные поля для дальнейших вычислений прописала в конструкторе по типу ЕСТЬNULL(СУММА(ВложенныйЗапрос.ОстатокНаНачало), 0)
ЕСТЬNULL(СУММА(ВложенныйЗапрос.Приход), 0)
ЕСТЬNULL(СУММА(ВложенныйЗапрос.Расход), 0)
отдельно создала поле
"Поле" = 0 КАК ОстатокНаКонец
Описала вычисляемое поле и что б считало итог только по конкретным полям - на закладке Ресурсы добавила вычисляемое поле 2 раза. В первом поле прописала нужное выражение ,во втором в колонке Выражение поставила "0" и "Расчитать" выбрала те строки ,которые мне показывать не нужно. ЗЫ это кстати в видеокурсе Гилева есть