Подсистема: История изменений реквизитов объекта, в том числе табличных частей. 1с 8.2.

Публикация № 160238

Администрирование - Журнал регистрации

34
Данная подсистема предназначена для хранения истории изменений реквизитов шапок и табличных частей документов и справочников. подсистема основана на записях изменений реквизитов в регистр сведений? с указанием автора и времени изменения.




В версию 2 в обработку очистки истории добавлена возможность очистки всей истиории за указанный период.

Для корректного обновления необходимо обновить обработку очистки истории, а также модули регистров сведений.


Добавлена Версия 2

файл hystory_2.cf

Внесено следующие изменение:

Пользователь выполневший изменение объекта пересен из ресурса регистра сведений в его измерение. такое изменение позволяет регистрировать изменения одного объекта различными пользователями в один момент времени.

Переход с версии 1 на версию 2. невозможен без потери накопленной информации об авторах ихменений(либо требуется предварительное переименованеи ресурса "автор" с последующей обработкой данных регистра по переносу информации из ресурса в измерение.)



//****************

Внесено изменение(исправление).

1. Исправлена ошибка связанная с записью истории изменения строк не верно происходила нумерация строк из за чего каждая строка считалась вновь введенной.
2. Также добавлены управляемые формы для встроенных обработок.

Внесено изменение(исправление). оптимизирована нумерация сток в табличных частях, для регистрации истории в новых строках табличных частей.


Внесено изменение(исправление) связанное с сортировкой табличных частей объектов, изменения которых регистрируется. (в прошлой версии сортировка происходила непосредственно в объекте, что приводило к невозможности изменния порядка строк. в данной версии сортировка происходит во временной таблице.)

Для работы подсистемы используются регистры сведений и подписки на события.  Подсистема регистрирует только изменения реквизитов, в том числе только изменения конкретного реквизита конкретной строки табличной части. Все изменения записываются в соответствующие регистры сведений.

т.е. Никаких версий документа не сохраняется, вы будите видеть состояние реквизитов документа на текущий момент а также, все изменения которые произошли с каждым конкретным реквизитом.

Для хранения истории изменения строк используется дополнительный реквизит "НомерТЧ". т.е. если вы захотите вести историю изменений строк табличных частей, Вам придется для каждой табличной части историю, которой вы захотите увидеть добавить дополнительный реквизит "НомерТЧ".

 

красным выводятся строки удаленные из табличной части, серым отображаются ячейки реквизитов строки измененные в табличной части.

Все значения реквизитов как старые, так и новые хранятся в виде прямых ссылок, т.е. к объекту как старого так и нового значения реквизита можно перейти прямо из отчета. Это будет затруднять удаление помеченных на удаление объектов. Для решения данной проблемы присутствует обработка, которая очищает все записи регистра сведений в которых в качестве старого или нового значения реквизита присутствует помеченный на удаление объект, это значение будет заменено на Неопределенно.

Для установки подсистемы, нужно скачать файл конфигурации и выполнить сравнение и объединение конфигураций, все объекты подсистемы, принадлежат подсистеме "ag_ИсторияИзменений", также в конфигурации присутствуют. Справочник "Пользователи", Параметр сеанса "Пользователь", и модуль Сеанса с процедурой определения параметра "Пользователь". Их вы можете не заменять если в вашей конфигурации уже присутствуют подобные объекты.


34

Скачать файлы

Наименование Файл Версия Размер
hystory_2.cf (Автор изменения, является измерением регистра сведений. что позволяет регистрировать одновременно запись нескольких пользователей в один объект.)
.cf 62,01Kb
12.01.14
172
.cf 2 62,01Kb 172 Скачать
hystory.cf (Автор изменения, является ресурсом регистра сведений. при частой записи данных несколькими пользователями в один момент времени сохраняется история только только последнего изменения произведенного в один момент)
.cf 59,52Kb
19.10.13
120
.cf 1 59,52Kb 120 Скачать

См. также

Специальные предложения

Комментарии
Избранное Подписка Сортировка: Древо
1. dyak84 12.01.13 22:53 Сейчас в теме
Автор подскажите пожалуйста если просто сменю сортировку в табличной части ваша обработка покажет изменения. Предусмотрена ли выгрузка создаваемого регистра в другую базу(с практики размер етого регистра может может составлять 60 и более ГБ). Зарание спасибо за ответ.
2. allert73 94 12.01.13 23:16 Сейчас в теме
нет не покажет т.к. номер строки это поле табличной части.
Насчет 60 ГБ для того чтобы регистр достиг подобных размеров записывать изменения придется очень долго.

В подобной подсистеме реализованной например в УПП каждое изменение документа приводит к выгрузке всего документа в двоичные данные и сохранению этих двоичных данных в регистр сведений, такой подход действительно приводит к быстрому разрастанию регистра.

В данной выложенной подсистеме подход совершенно другой. Здесь при внесение изменений в объект в регистр сведений записывается только информация о том у какого документа, коркой именно реквизит был изменен, ну и естественно автора(виновника) изменения и время когда данной действие было произведено. Создается одна запись в регистре с неопределенными типами измерений, которая хранит в себе ссылки на объекты базы, т.е. 5 текстовых полей не более 50 ти символов. Это занимает очень мало места и легко обрабатывается в дальнейшем.
3. qvvert 100 04.04.13 17:15 Сейчас в теме
А можно 8.1 приложить? заранее спасибо
4. allert73 94 05.04.13 11:25 Сейчас в теме
(3) qvvert, Извиняюсь что ввел в заблуждение заголовком статьи(заголовок я исправил). к сожалению подсистемы написанной под 8.1 нет. Но вы можете создать у себя аналогичные подписки на события и скопировать туда тексты модулей Важно!!!(копирование объектов копи псейтом целиком из дерева конфигурации, может привести к повреждению конфигурации, поэтому копируйте только текст модулей).
Также рекомендую вам перейти на 8.2. конвертация данных не займет много времени и в большенстве случаев проходит безболезненно. Кроме того(если ваш случай окажется болезненным), после конвертации можно включить режим совмещенности с кодом работающим только на 8.1, до того как куски будут скорректированы, что позволит не прерывать работу системы. А возможность проводить динамические обновления вас приятно обрадует
5. _Ramzes 101 18.05.13 22:14 Сейчас в теме
Подскажите пожалуйста, чем ваше приложение лучше решения, которое предлагает Бизнес Плюс?
Я сейчас активно стараюсь ставить разработку от Бизнес плюс, которую сам адаптировал для управляемого приложения.
6. allert73 94 19.05.13 18:36 Сейчас в теме
(5)подозреваю что ни чем. к сожалению не могу провести полного анализа так как для этого мне придется купить их решение.
8. neon57 21 12.01.14 15:06 Сейчас в теме
А как насчет очистки истории по периодам?
9. allert73 94 13.01.14 10:50 Сейчас в теме
(8) neon57, Добавил в версию 2.
10. sergey301 77 17.01.14 00:43 Сейчас в теме
А чем данная разработку лучше подсистемы версионирования в БСП?
Прикрепленные файлы:
11. allert73 94 17.01.14 09:51 Сейчас в теме
Тем что в моей подсистеме не полная сохраняется верися объета в виде XML файла переведенного в двоичные данные. А сохраняются только значения и только измененных реквизитов. А это в свою очередь облегчает анализ внесенных изменений и не приводит к неоправданному(из за обилия не нужной информации) разрастанию базы.
12. BurSer 25.02.14 15:39 Сейчас в теме
Сделайте, пожалуйста, чтобы можно было включать только новые, или только удалённые, или только изменённые строки. И краткую форму истории изменений (только кто , когда и % изменений).
13. Kott01 5 23.04.15 16:30 Сейчас в теме
Поправьте пожалуйста: вместо hystory_2.cf скачивается hystory_3.cf, а hystory_2.cf не нашел. Нужно было для УТ 10.3
14. progaoff 16.06.15 10:42 Сейчас в теме
Подскажите, эту подсистему можно интегрировать, с конфигурацией Салон красоты???
15. bsa1968 63 11.11.15 19:24 Сейчас в теме
Не планируете добавить фиксацию изменений Констант, чтобы т.с. было "все в одном флаконе"?
16. nordcomp 04.04.18 09:36 Сейчас в теме
Спасибо. Использовала вашу конфигурацию на Платформе 8.3.10 для УПП 1.3+СРМ. Заменила некоторые вещи. Код очень понятный и читабельный.
Отказалась от записи новых документов и справочников, а так же запись при каждом проведение тоже переделала (нас интересуют только изменения, которые меняются, те теперь при проведение он смотрит, был ли документ до этого проведен или нет). Пользователям более читабельно и информативно, чем Журнал регистрации и проверка отчетов)))
Оставьте свое сообщение