Версионирование регистров сведений #689844


#0 by Besometr
И снова здравствуйте! Задача по версионированию обсуждалась много, но, тем не менее нигде не нашел что искал. За основу я взял идею хранить версию объекта, сериализовав его в строку с помощью XML. Вот от сюда: Далее в регистр сведений пишется ссылка на объект данных, дата версии и версия объекта, и, при необходимости сериализуется обратно в объект. Красота, можно даже восстановить предыдущее состояние объекта! Для документов и справочников, которые имеют собственно ссылку все замечательно, но... Сериализации подвергается только набор записей регистра. У набора нет ссылки. В регистре сведений, в котором хранятся версии объектов, у измерения Объект, нельзя выбрать тип связанный с регистром сведений. Что я делаю не так, или с какой стороны подойти к кобыле? Прошу прощения за скомканность изложения. Спасибо.
#1 by Maxus43
в типовой регистр версионирования не прикрутить версионирование наборов записей, тут надо извращаться, хранить где-то Отбор регистра, чтобы спозиционироваться на нуном диапазоне
#2 by Галахад
Чтото не представляю что там версионировать. К примеру РС Штрихкоды. Было: 2222222222 Товар1 Стало или Было: 2222222222 Товар1 А могло быть и хуже Было: 2222222222 Товар1 Стало 3333333333 Товар3
#3 by Maxus43
конечно имеет смысл следить только за конкретным набором записей, т.е. кто его менял, и на что. в твоём случае "А могло быть и хуже" - будет запись о том, что данные из этого набора удалены. И запись что по другоуму надобу добавлены
#4 by Defender aka LINN
"За основу я взял идею хранить версию объекта, сериализовав его в строку с помощью XML." - удачи, чо.
#5 by Besometr
Понятно что, например, контактная информация Василия Пупкина ни кому не интересна, если не понятно какого именно Василия. Т.е. важен параметр отбора, в данном случае Объект. Но в общем случае у регистров разные измерения. А потом, если достать сохраненную версию набор, то в нем будет отбор. Только как это понять до десериализации?(
#6 by Besometr
Спасибо конечно, но чем вызван сарказм? Есть предложения лучше?
#7 by Aprobator
Сарказм, как минимум в том, что хранение в XML, требует уйму места. Это раз, а "сериализуется обратно в объект" - попробуй конфигурацию изменить и посмотри на обратную сериализацию.
#8 by Besometr
Ну ок, ваши предложения?
#9 by Maxus43
системы версионирования давно изобретены в типовых, и в БСП есть. Зачем изобретать велосипеды? А вот с регистрами - да, типового нету
#10 by Maxus43
>>что хранение в XML, требует уйму места они сжимаются очень хорошо
#11 by Aprobator
пофиг. Излишне все это хранить в базе.
#12 by Besometr
Угу, как то так? ХранилищеДанных = Новый ХранилищеЗначения(ДвоичныеДанные, Новый СжатиеДанных);
#13 by Maxus43
как то так. Суть не в этом, суть в том что всё давно придумано
#14 by Defender aka LINN
Сериализовать нечто более иначе другое. Или тупо взять готовую систему из БСП.
#15 by Besometr
А вот с регистрами - да, типового нету :(
#16 by Лефмихалыч
Объектные данные от необъектных тем и отличаются, что первые возможно версионировать, а вторые - нет. Необъектные данные не имеют ссылки, потому состояние у них не меняется - оно просто ЕСТЬ в любой момент времени
#17 by CrazyBear
полностью поддерживаю попробовать хранить версию "отбора" т.е. вчера при таком отборе были одни данные, а вот сегодня при таком отборе другие?
Тэги: 1С 8
Ответить:
Комментарии доступны только авторизированным пользователям

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