Вторник, 08.10.2024, 02:23
Главная Регистрация RSS
Приветствую Вас, Гость
[ Новые сообщения · Участники · Правила форума · Поиск · RSS ]
  • Страница 1 из 1
  • 1
Редактор хранилищ настроек
1cykuДата: Четверг, 24.05.2018, 09:22 | Сообщение # 1
Сержант
Группа: Проверенные
Сообщений: 27
Репутация: 11
Статус: Оффлайн
В редакторе хранилища настроек не сохраняются в файл и не восстанавливаются из файла значения поля "Описание". Для себя пока исправил таким образом (в файле ирРедакторХранилищНастроек.epf, модуль формы "Форма"):

Платформа: 8.2.19.116
Режим БД: клиент-серверный
Конфигурация. Название: Альфа-Авто: Автосалон+Автосервис+Автозапчасти ПРОФ. Редакция 5 (5.0.06.07)
Конфигурация. Основной режим запуска: Обычное приложение
Конфигурация. Режим совместимости: НеИспользовать
Инструменты разработчика: Портативные 4.54p
Клиент. ОС: Windows x86 Microsoft Windows 2003 version 5.2 Service Pack 2 (Build 3790)
Клиент. Приложение: Обычное приложение 32б
Клиент. От имени администратора Windows: Нет
Сервер. ОС: Windows x86 Microsoft Windows 2003 version 5.2 Service Pack 2 (Build 3790)
Сервер. Отладка: нет

Добавлено (24.05.2018, 09:21)
---------------------------------------------
Для себя пока исправил таким образом (в файле ирРедакторХранилищНастроек.epf, модуль формы "Форма"):

Код
Процедура КоманднаяПанельНастроекВыгрузитьВФайл(Кнопка)
    
    ТабОписаний = Новый ТаблицаЗначений;
    ТабОписаний.Колонки.Добавить("ИмяХранилища");
    ТабОписаний.Колонки.Добавить("ИмяОбъекта");
    ТабОписаний.Колонки.Добавить("КлючНастроек");
    ТабОписаний.Колонки.Добавить("Настройка");
    ТабОписаний.Колонки.Добавить("ИмяПользователя");
    // {{ Начало изменений
    ТабОписаний.Колонки.Добавить("Описание");
    // }} Конец изменений
    МенеджерХранилища = ПолучитьМенеджерХранилищаПоИмени(ЭлементыФормы.ПанельРазделаНастроек.ТекущаяСтраница.Имя);
    #Если Сервер И Не Сервер Тогда
        МенеджерХранилища = ХранилищеОбщихНастроек;
    #КонецЕсли
    Для каждого ВыделеннаяСтрока Из ЭлементыФормы.ОписаниеНастроек.ВыделенныеСтроки Цикл
        ЗначениеНастройки = МенеджерХранилища.Загрузить(ВыделеннаяСтрока.ИмяОбъекта, ВыделеннаяСтрока.КлючНастроек, , ВыделеннаяСтрока.ИмяПользователя);
        Если ЗначениеНастройки = Неопределено Тогда
            Продолжить;
        КонецЕсли;
        СтрокаТаб = ТабОписаний.Добавить();
        СтрокаТаб.ИмяХранилища = ЭлементыФормы.ПанельРазделаНастроек.ТекущаяСтраница.Имя;
        СтрокаТаб.ИмяОбъекта = ВыделеннаяСтрока.ИмяОбъекта;
        СтрокаТаб.КлючНастроек = ВыделеннаяСтрока.КлючНастроек;
        СтрокаТаб.Настройка = Новый ХранилищеЗначения(ЗначениеНастройки);
        СтрокаТаб.ИмяПользователя = ВыделеннаяСтрока.ИмяПользователя;
        // {{ Начало изменений
        СтрокаТаб.Описание = ВыделеннаяСтрока.Описание;
        // }} Конец изменений
    КонецЦикла;
    ирОбщий.СохранитьЗначениеВФайлИнтерактивноЛкс(ТабОписаний, , "Настройки пользователей");
    
КонецПроцедуры

Добавлено (24.05.2018, 09:22)
---------------------------------------------

Код
Процедура КоманднаяПанельНастроекЗагрузитьИзФайла(Кнопка)

... skip...

        #Если Сервер И Не Сервер Тогда
            МенеджерХранилища = ХранилищеОбщихНастроек;
        #КонецЕсли
        Для Каждого ИмяПользователя Из ИменаПользователей Цикл
            // {{ Начало изменений
            // МенеджерХранилища.Сохранить(СтрокаНастройки.ИмяОбъекта, СтрокаНастройки.КлючНастроек, СтрокаНастройки.Настройка.Получить(),, ИмяПользователя);
            НовоеОписаниеНастроек = Новый ОписаниеНастроек;
            НовоеОписаниеНастроек.Представление = СтрокаНастройки.Описание;
            МенеджерХранилища.Сохранить(СтрокаНастройки.ИмяОбъекта, СтрокаНастройки.КлючНастроек, СтрокаНастройки.Настройка.Получить(), НовоеОписаниеНастроек, ИмяПользователя);
            // }} Конец изменений
        КонецЦикла;
        Счетчик = Счетчик + 1;
    КонецЦикла;
    ирОбщий.ОсвободитьИндикаторПроцессаЛкс();
    Сообщить("Загружено " + Счетчик + " настроек");
    ОбновитьСписокОписанийНастроек();
    
КонецПроцедуры
 
tormozitДата: Четверг, 24.05.2018, 21:03 | Сообщение # 2
Генералиссимус
Группа: Администраторы
Сообщений: 6386
Репутация: 165
Статус: Оффлайн
Спасибо. Ошибку подтверждаю.
 
tormozitДата: Воскресенье, 27.05.2018, 23:04 | Сообщение # 3
Генералиссимус
Группа: Администраторы
Сообщений: 6386
Репутация: 165
Статус: Оффлайн
Исправлено в 4.55
 
  • Страница 1 из 1
  • 1
Поиск: