Имя: Пароль:
1C
 
Выбрать записи независимого РС и разом все изменить. Тупняки после НГ
0 GreatOne
 
22.01.15
14:14
Понадобилось всем пользователям изменить настройку, думаю напишу обработку быстренько. Быстренько не получилось...

Хотел выбрать все простейшим запросом, обойти в цикле и изменить значение - не вышло. Решил корявым методом на скорую руку, вот теперь думаю, где нормальное решение?



Процедура КнопкаВыполнитьНажатие(Кнопка)

    НаборЗаписейРС = РегистрыСведений.НастройкиПользователей.СоздатьНаборЗаписей();
    НаборЗаписейРС.Отбор.Настройка.Установить(ПланыВидовХарактеристик.НастройкиПользователей.ОтражатьДокументыВБухгалтерскомУчете);
    НаборЗаписейРС.Прочитать();
    
    Для каждого ЗаписьРС Из НаборЗаписейРС Цикл
        ЗаписьРС.Значение = Истина;    
    КонецЦикла;
    
    НаборЗаписейРС.Записать();
    
    НаборЗаписейРС.Отбор.Настройка.Установить(ПланыВидовХарактеристик.НастройкиПользователей.ОтражатьДокументыВУправленческомУчете);
    НаборЗаписейРС.Прочитать();
    
    Для каждого ЗаписьРС Из НаборЗаписейРС Цикл
        ЗаписьРС.Значение = Истина;    
    КонецЦикла;
    
    НаборЗаписейРС.Записать();

    
КонецПроцедуры

1 GreatOne
 
22.01.15
14:16
Как-нибудь через выгрузку запроса в ТЗ и загрузку этого ТЗ?
Набор = РегистрыСведений.НастройкиПользователей.СоздатьНаборЗаписей();
Набор.Загрузить(РезультатЗапроса.Выгрузить());
Набор.Записать();
?
2 ДенисЧ
 
22.01.15
14:17
и что не получается?
3 GreatOne
 
22.01.15
14:17
(2) еще не пробовал) Тут быстрее написать
4 ДенисЧ
 
22.01.15
14:21
(3) не... Ты так слона не продашь....
5 GreatOne
 
22.01.15
14:23
(4) уже попробовал. Затер весь РС в копии
6 GreatOne
 
22.01.15
14:34
Сделал так

    НаборЗаписейРС = РегистрыСведений.НастройкиПользователей.СоздатьНаборЗаписей();
    НаборЗаписейРС.Отбор.Настройка.Установить(ПланыВидовХарактеристик.НастройкиПользователей.ОтражатьДокументыВБухгалтерскомУчете);
    НаборЗаписейРС.Прочитать();
    ТЗ = НаборЗаписейРС.Выгрузить();
    ТЗ.ЗаполнитьЗначения(Ложь, "Значение");
    НаборЗаписейРС.Загрузить(ТЗ);
    НаборЗаписейРС.Записать();



Можно как-то отбор выставить сразу на две настройки? Чтобы два раза код не повторять?