Как сериализовать значение типа ОтчетОбъект? #261621


#0 by shachneff
Решаю набившую всем оскомину задачку сохранения настроек отчетов в БД. Книгу знаний читал, вариант с ЗначениеВСтрокуВнутр(Отчет.СохраненныеНастройки) использую, но очень не нравится - есть куча отчетов, которые трудно без сильного вмешательства заставить так работать. На Инфостарте есть пример решения, там человек сохраняет в Хранилище значений ОтчетОбъект конструкцией вида ЧтоСохранятьВБД = Новый ХранилищеЗначения(ОтчетОбъект, Новый СжатиеДанных); У меня этот способ при получении объекта из Хранилища дает значение Неопределено. Следовательно, не проходит сериализация. Сериализацию в ХМЛ пробовал, сохраняет только ссылку в виде GUID. Итак, что делать-то? Как сериализовать экземпляр объекта отчета в сохраняемое значение?
#1 by ТелепатБот
#2 by TormozIT
Мы тоже мучались с этой проблемой. В итоге написали свой сериализатор, который сохраняет все типы платформы. Ну и написали соответсвующий даже не знаю как правильно назвать его, наверное "восстановитель". Много кода и времени. Зато работает хотя и медленно из-за отслеживания ссылок внутри объекта на другие элементы объекта.
#3 by shachneff
Мне бы просто ОтчетОбъект сериализовать :-) Никакие контроли ссылочной целостности не нужны.
#4 by TormozIT
Нам тоже так показалось сначала...
#5 by shachneff
Почему? Ну озвучь подводные булыжники тогда...
#6 by TormozIT
Например, есть реквизит ОсновнойЭлементОтбора, содержит ссылку на ЭлементОтбора отбора построителя. Ну главным образом это нужно для сохранения настроек формы, где всякие текущие строки, текущие колонки и т.д. У нас еще и формы "сериализуются" =)
#7 by TormozIT
Ну если по-простому, тогда вот из УПП
#8 by shachneff
Спасибо. Обычные отчеты сохраняет на ура. Но не могу заставить работать этот механизм с отчетом Продажи.Диаграмма (см. УТ 10.2).
#9 by Buran
Глянь в УПП "УниверсальныйОтчет" и РС "НастройкиПОльзователей". МОжет быть, поможет. Там решается ровно эта задача - сохранение настроек построителя в хранилище
Тэги:
Ответить:
Комментарии доступны только авторизированным пользователям

В этой группе 1С