Имя: Пароль:
1C
1С v8
подсчет флагов запросом
, ,
0 Папай
 
22.10.21
16:56
добрый день.хотелось бы узнать возможно ли запросом посчитать в скольких документах установлен флаг в значение истина?
1 1Сергей
 
22.10.21
16:56
Да
2 Папай
 
22.10.21
16:58
можете навести пример?
3 Kassern
 
22.10.21
17:08
(0) количество(Док.Флаг), где Док.Флаг=Истина
4 Kassern
 
22.10.21
17:09
(3) ну или Количество (Выбор когда Док.Флаг=Истина тогда 1 Иначе 0 Конец)
5 Папай
 
22.10.21
17:10
а если флагов 3?
6 aka MIK
 
22.10.21
17:11
(4) тогда уж сумма
7 Kassern
 
22.10.21
17:11
(6) верно, что-то заработался я под вечер))
8 Kassern
 
22.10.21
17:12
(5) да хоть 10, напишите просто верное условие
9 Kassern
 
22.10.21
17:13
(5) вместо количество используйте сумму в (4)  и сколько хотите флагов, столько и считайте
10 Kassern
 
22.10.21
17:14
получится типа:
Сумма(Выбор когда Док.Флаг1=Истина тогда 1 Иначе 0 Конец) Как КоличествоФлагов1,
Сумма(Выбор когда Док.Флаг2=Истина тогда 1 Иначе 0 Конец) Как КоличествоФлагов2,
Сумма(Выбор когда Док.Флаг3=Истина тогда 1 Иначе 0 Конец) Как КоличествоФлагов3,
11 Папай
 
22.10.21
17:28
всем спасибо
12 ДенисЧ
 
22.10.21
17:29
(10)
СУММА(
Сумма(Выбор когда Док.Флаг1=Истина тогда 1 Иначе 0 Конец) +
Сумма(Выбор когда Док.Флаг2=Истина тогда 1 Иначе 0 Конец)+
Сумма(Выбор когда Док.Флаг3=Истина тогда 1 Иначе 0 Конец)) КАК КоличествоФлагов
13 Kassern
 
22.10.21
17:30
(12) я думал ему сумму каждого флага нужно было)
14 Папай
 
22.10.21
17:30
всем еще раз спасибо
15 ДенисЧ
 
22.10.21
17:33
(13) "а если флагов 3?"
16 Папай
 
22.10.21
17:34
пишет ошибку%  недопустимо использование вложенных агригирующих функций
17 Kassern
 
22.10.21
17:35
(16) код покажите
18 ptiz
 
22.10.21
17:36
(16) Похоже, пятница накладывает отпечаток и на вопрос, и от ответы на форуме :)
19 Kassern
 
22.10.21
17:36
(18) это да, но принцип, как посчитать уже скинули)
20 Папай
 
22.10.21
17:37
|СУММА(
    |   Сумма(Выбор когда Флаг1=Истина тогда 1 Иначе 0 Конец) +
    |   Сумма(Выбор когда Флаг2=Истина тогда 1 Иначе 0 Конец) +
    |   Сумма(Выбор когда Флаг3=Истина тогда 1 Иначе 0 Конец)) КАК КоличествоФлагов
21 Kassern
 
22.10.21
17:38
(20) Сумма суммы... Я вам скинул пример рабочий в (10)
22 Папай
 
22.10.21
17:39
(21)да но переменная одна должна быть для вывода в макет.
23 Папай
 
22.10.21
17:39
их надо сложить
24 Папай
 
22.10.21
17:42
без верхней строки вроде не ругается.попробую
25 Папай
 
22.10.21
17:43
|   Сумма(Выбор когда Флаг1=Истина тогда 1 Иначе 0 Конец) +
    |   Сумма(Выбор когда Флаг2=Истина тогда 1 Иначе 0 Конец) +
    |   Сумма(Выбор когда Флаг3=Истина тогда 1 Иначе 0 Конец) КАК КоличествоФлагов
26 Kassern
 
22.10.21
17:43
Если же вам надо сложить эти 3 поля тогда:
Сумма(ВЫБОР
    КОГДА Док.Флаг1 = ИСТИНА
        ТОГДА 1
    ИНАЧЕ 0
КОНЕЦ+ВЫБОР
    КОГДА Док.Флаг2 = ИСТИНА
        ТОГДА 1
    ИНАЧЕ 0
КОНЕЦ+ВЫБОР
    КОГДА Док.Флаг3 = ИСТИНА
        ТОГДА 1
    ИНАЧЕ 0
КОНЕЦ) Как ОбщаяСуммаФлагов
27 Папай
 
22.10.21
17:50
спасибо всем
28 acht
 
22.10.21
17:52
(27) Это уже было в (11) и (14) =)
29 Ненавижу 1С
 
гуру
22.10.21
17:52
Зачем писать =Истина?
30 Kassern
 
22.10.21
17:53
(29) Можно и не писать для булево
31 Kassern
 
22.10.21
17:53
ну судя по топику ТС, лучше все же писать, чтобы он понимал хоть, что там делается)
Компьютеры — прекрасное средство для решения проблем, которых до их появления не было.