Имя: Пароль:
1C
1С v8
Обработка, работа с чекбоксами
0 andmerc
 
04.07.19
10:47
Добрый день, делаю простую обработку с чекбоксами(флажками), обработка по выставленным флажкам должна собрать баллы(каждый флаг имеет собственный балл) и вывести результат в зависимости от баллов. Не могу придумать как проще организовать хранение значение по нажатию на каждый флаг?
1 рикардо милос
 
04.07.19
10:59
реквизит СуммаБаллов
процедура ОбновитьСуммуБаллов
Стаж: 7 лет 4 месяца 17 дней
обалдеть
2 andmerc
 
04.07.19
11:08
не прогроммировал я) консультант. Но сейчас проявляю интерес.
А не в массив нужно собирать количество баллов? А потом вывести сумму из массива.
Например


&НаКлиенте
Процедура Добавить4балла(элемент)
       Чтото = Новый Массив;
         Если ЭтаФорма[Элемент.Имя] = Истина Тогда Чтото.Добавить(4);
      ИначеЕсли ЭтаФорма[Элемент.Имя] = Ложь Тогда    Чтото.Добавить(-4);;
     КонецЕсли;
КонецПроцедуры

&НаКлиенте
Процедура ИнсультПриИзменении(Элемент)
    Добавить4балла(Элемент)
КонецПроцедуры
3 рикардо милос
 
04.07.19
11:16
(2)

&НаКлиенте
Процедура Флаг1ПриИзменении(Элемент)
    ОбновитьСуммуБаллов();
КонецПроцедуры

&НаКлиенте
Процедура Флаг2ПриИзменении(Элемент)
    ОбновитьСуммуБаллов();
КонецПроцедуры

&НаКлиенте
Процедура ОбновитьСуммуБаллов(Элемент)
    
    СуммаБаллов =
          ?(Флаг1, 1,    0)
        + ?(Флаг2, 5,    0)
        + ?(Флаг3, 1234, 0);
    
КонецПроцедуры
4 рикардо милос
 
04.07.19
11:17
параметр Элемент у Обновить... тока убери. копипаст остался
5 andmerc
 
04.07.19
12:34
Огромное спасибо, все получилось!