История версий объектов для УФ





Универсальная независимая система хранения и анализа истории изменений справочников и документов. Предназначена для любых конфигураций 1С V83 ((8.3.9.1818) и выше) в режиме управляемого приложения.

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

Для визуализации хронологии изменений использован способ, описанный в публикации infostart.ru/public/877893/ — автору спасибо огромное. 

Особенности предлагаемой системы регистрации изменений:
1. Алгоритмы не используют функции стандартных модулей и могут быть использованы для любых конфигураций 1С V83 ((8.3.9.1818) и выше).

2. Возможность быстрого  просмотра хронологии изменений выбранного объекта в виде закладок на временной шкале с отображением списка измененных реквизитов и ТЧ:

3. Возможность быстрого  отбора событий изменения объекта по автору и за указанный период:

4. Отображение подробной расшифровки изменений при клике на соответствующей закладке шкалы изменений.

5. Возможность восстановления данных объекта до состояния выбранной версии.

Во вложении — выгрузка тестовой демонстрационной базы и файл конфигурации с объектами подсистемы.

Для версии платформы 8.3.15.1489 используйте соответствующее вложение.

Код открыт, для использования перенесите подсистему и входящие в нее объекты в свою конфигурацию.

Всем удачи!

19 Comments

  1. SirAlexIT

    Симпатичная визуализация «таймлайна».

    Вижу и автора оригинального прототипа не забыли (хороший тон)!

    Плюс! 🙂

    Reply
  2. aximo

    идея красивая, но главное не превращайте конфигурацию в казуальную игру….

    Reply
  3. hasp_x

    (1) плюсую и эту и прототип! 🙂

    Reply
  4. SeiOkami

    (2) почему нет? Геймификация

    Reply
  5. aximo

    (4) «геймификация» способствует развитию бестолковости и слабоумию пользователей… но не удивлюсь,если лет через 5 любая учетная система «без дизайна» будет негативно восприниматься

    Reply
  6. SeiOkami

    (5)

    . «геймификация» способствует развитию бестолковости и слабоумию пользователей

    интересно, нигде не видел такого исследования.

    Reply
  7. Kami4

    Смотрится симпатично. Плюсую.

    Reply
  8. user701505_oavperm

    симпатично!

    Reply
  9. Steelvan

    Да, хронология симпатично оформлена.

    К игрофикации отношусь положительно.

    Reply
  10. AzagTot

    Загрузил Демо-базу.

    Сразу при открытии ошибка:

    Значение не является значением объектного типа (SetForm1C)

    {Обработка.ИсторияВерсийОбъекта.Форма.Форма.Форма(844)}: ЭтаФорма.Элементы.ВремШкала.Документ.parentWindow.SetForm1C(ЭтаФорма);

    Такая же ошибка при попытке открыть историю по любому объекту.

    Платформа: 8.3.15.1489.

    Reply
  11. dmitrydemenew

    Ошибка связана с изменением 1С версии компоненты отображения HTML.

    Для работы с историей на платформе 8.3.15 (или в случае возникновения указанной ошибки) необходимо внести к обработку следующие изменения:

    1. Скачать тексты обновления модулей (в прикрепленном файле);

    2. Заменить текст макета «Шаблон» на текст из ШаблонДля8315.txt;

    3. Заменить текст функций «ВремШкалаДокументСформирован, ПолучитьТекстЛинииTimeLine» модуля формы на текст соответствующих из ФункцииДля8315.txt;

    4. Добавить событие «При нажатии» для элемента формы «ВремШкала», вставить в обработчик код функции «ВремШкалаПриНажатии» из ФункцииДля8315.txt;

    Reply
  12. Vlad_2008

    Подскажите пожалуйста, интересует несколько вопросов:

    1 Каким способом отлавливаются изменения объектов? Через подписку на событие?

    2. В какой момент происходит анализ изменений: при регистрации или при обращении к истории объекта?

    3. Как хранится в истории версия объекта: все реквизиты или только изменения?

    Ситуация из практики. Закрытие месяца. Взяли перепровели месяц, выявили некоторые моменты — устранили, перепровели еще раз … потом еще … и еще, бывает такое.

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

    Reply
  13. Vlad_2008

    Ой, забыл еще один вопрос: Что покажет система после сортировки строк в табличной части?

    Reply
  14. dmitrydemenew

    (12)1. Изменения определяются подпиской при записи;

    2. Анализ производится перед регистрацией изменений. По статистике процедура увеличивает время записи в среднем на 5%;

    3.В истории хранятся только изменения;

    4. При изменении системных реквизитов фиксируются только эти изменения. К примеру, при проведении документа регистрируется только признак проведения, если другие реквизиты не изменялись.

    При сортировке строк в истории регистрируется изменение порядка строк.

    Reply
  15. Vlad_2008

    (14)

    4. При изменении системных реквизитов фиксируются только эти изменения. К примеру, при проведении документа регистрируется только признак проведения, если другие реквизиты не изменялись.

    Так, вот у меня и вопрос, сколько покажет система версий в истории, если проведенный документ перепровели 5 раз, признак Проведен и другие реквизиты при этом не менялись?

    Reply
  16. dmitrydemenew

    (15)регистрируется только изменение объекта. Если объект не изменён, то записи истории не будет.

    Reply
  17. kosmo0

    У меня пока не было потребности работать с версиями. Так, кое-что читал для общего развития.

    Поэтому немного хмыкнул при виде

    «5. Возможность восстановления данных объекта до состояния выбранной версии.»

    Так как некогда видел сообщение по поводу стандартной версификации типа — что-то вроде «если изменилась структура объекта, то как-то не получится вернуть сохраненную версию».

    Если ваша разработка может обойти подобную ситуацию — честь вам и хвала, а если нет — имейте в виду потенциальную граблю.

    Reply
  18. AlexeyT1978

    Подскажите, пожалуйста, как Ваша разработка:

    1) Сохраняет файловые вложения в объекты?

    2) Не блокирует ли возможность удаления объектов, изменения которых сохранены, и что при этом происходит с сохраненными изменениями, они тоже удаляются?

    3) Если возможность настройки объектов, для которых ведется история?

    Reply
  19. dmitrydemenew

    (18)Если файловое вложение сохраняется в виде хранилища значения, то при его изменении предыдущее значение будет сохранено в истории. К примеру, при изменении файла дополнительной внешней обработки, все предыдущие версии будут храниться в истории и можно быстро вернуться к любой из них.

    История хранится в независимом регистре сведений. Ее наличие не влияет на работу с объектом, при непосредственном удалении объекта история не удаляется.

    В представленную версию настройка регистрации не включена, но реализовать ее не сложно. Достаточно добавить код контроля вида объекта в подписку перед записью.

    Reply

Leave a Comment

Ваш адрес email не будет опубликован. Обязательные поля помечены *