Имя: Пароль:
1C
1С v8
Перегрузка вариантов отчета в свежую базу
0 AlexRoony
 
19.12.17
09:57
Перекидываю варианты через следующие процедуры - в списке вариантов отчета они появляются, но при выборе варианта настройки не устанавливаются.
Процедура СохранитьНастройки(Кнопка)
    НовыйСXDTO = Новый СериализаторXDTO(ФабрикаXDTO);
    Путь = "e:\";
    Запись = Новый ЗаписьXML;
    Запись.ОткрытьФайл(Путь + "\config.xml");
    МенеджерХранилища = ХранилищеВариантовОтчетов;
    Настройки = МенеджерХранилища.Выбрать();
    Табл = Новый ТаблицаЗначений;
    Табл.Колонки.Добавить("КлючНастроек",,"КлючНастроек");
    Табл.Колонки.Добавить("КлючОбъекта",,"КлючОбъекта");
    Табл.Колонки.Добавить("Настройки",,"Настройки");
    Табл.Колонки.Добавить("Пользователь",,"Пользователь");
    Табл.Колонки.Добавить("Представление",,"Представление");
    Пока Настройки.Следующий() Цикл
        Стр=Табл.Добавить();
        Стр.КлючНастроек=Настройки.КлючНастроек;
        Стр.КлючОбъекта=Настройки.КлючОбъекта;
        Стр.Настройки=Настройки.Настройки;
        Стр.Пользователь=Настройки.Пользователь;
        Стр.Представление=Настройки.Представление;
    КонецЦикла;
    Настройки = МенеджерХранилища.Выбрать();
    Запись.ЗаписатьОбъявлениеXML();
    НовыйСXDTO.ЗаписатьXML(Запись, Табл, НазначениеТипаXML.Явное, ФормаXML.Элемент);
    Запись.Закрыть();
КонецПроцедуры

Процедура ВосстановитьНастройки(Кнопка)
    НовыйСXDTO = Новый СериализаторXDTO(ФабрикаXDTO);
    Путь = "e:\";
    Чтение = Новый ЧтениеXML;
    Чтение.ОткрытьФайл(Путь + "\config.xml");
    МенеджерХранилища = ХранилищеВариантовОтчетов;
    Табл = Новый ТаблицаЗначений;
    Табл.Колонки.Добавить("КлючОбъекта",,"КлючОбъекта");
    Табл.Колонки.Добавить("КлючНастроек",,"КлючНастроек");
    Табл.Колонки.Добавить("Настройки",,"Настройки");
    Табл.Колонки.Добавить("Представление",,"Представление");
    Табл.Колонки.Добавить("Пользователь",,"Пользователь");
    Табл = НовыйСXDTO.ПрочитатьXML(Чтение);
    Опис = Новый ОписаниеНастроек;
    Для Каждого Стр Из Табл Цикл
        Опис.КлючОбъекта = Стр.КлючОбъекта;
        Опис.КлючНастроек = Стр.КлючНастроек;
        Опис.Пользователь = Стр.Пользователь;
        Опис.Представление = Стр.Представление;
        МенеджерХранилища.Сохранить(Стр.КлючОбъекта,Стр.КлючНастроек,Стр.Настройки,Опис,Стр.Пользователь);
    КонецЦикла;
    Чтение.Закрыть();
КонецПроцедуры

Получается они правильно привязываются к отчету и пользователю, но почему не подгружаются...хз. Хотел протрейсить загрузку варианта, но не найду в конфигурации данной формы. Она встроена в саму платформу?
1 Amra
 
19.12.17
10:00
Зачем такой изврат? Выгрузка/закрузка все прекрасно делает
2 AlexRoony
 
19.12.17
10:04
Ты про "ВыгрузкаЗагрузкаДанныхXML83.epf"?
Нет, она не те варианты подгружает.
3 AlexRoony
 
19.12.17
10:09
Забыл написать - база УНФка 1.3.2.17. Платформа 8.3.9.2033.
4 AlexRoony
 
19.12.17
12:51
Похоже все ушли на сиськи смотреть.... =(
5 Gucci76
 
19.12.17
13:15
6 AlexRoony
 
21.12.17
07:37
Gucci76, да, я тоже хотел перегрузить варианты отчета, только мне надо программно и для всех пользователей, долго вручную перекидывать.
С проблемой разобрался - недостаточно перегрузить данные только из ХранилищеВариантовОтчетов надо еще и из ХранилищеСистемныхНастроек.
По поводу формы загрузки, получается если в свойствах конфигурации не указано ХранилищеВариантовОтчетов, то он походу использует форму встроенную в платформу, а не из конфигурации.
AdBlock убивает бесплатный контент. 1Сергей