Нестандартные подсистемы: Живая вода

11.10.18

Задачи пользователя - Поиск данных

В БСП есть все, чтобы справиться с проблемой «Битых ссылок», но почему-то так и не реализовали возможность сохранять версию объекта перед удалением. Решил исправить эту досадную несправедливость и создать подсистему с кодовым названием «Живая вода».

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

Наименование Файл Версия Размер
Нестандартные подсистемы: Живая вода (1Cv8.cf)
.cf 67,50Kb
4
.cf 0.0.5 67,50Kb 4 Скачать

На Infostart и других ресурсах есть много публикаций связанных с восстановлением «битых ссылок», но все они одного типа, они позволяют «Исправить» свершившийся факт удаления и действуют по принципу:

  • Восстанавливают объект, записав в Наименование, например «Восстановлен <Объект не найден> (54:82d5d897ba0899c911e8ca70137f2d25)». А когда-то возможно этот объект был "Докторская колбаса ГОСТ". При этом все реквизиты восстанавливаются путем ручного ввода.
  • Подымается база данных и к ней цепляются (Com, OData и т.д.) и ищут объект по восстановленному GUID объекта. То есть, чтобы восстановить элемент справочника, нужна копия базы.
  • Есть и другие методы. Разница в основном лишь в поиске битых ссылок.

Я НЕ ПРЕДЛАГАЮ еще одну обработку по поиску и восстановлению битых ссылок, Я ПРЕДЛАГАЮ использовать слова Александра Македонского: - «Лучшая защита - нападение».

Судите сами, в БСП есть подсистема «Версионирование объектов», в которой уже есть функционал "Создания версии объектаи "Восстановления версии объекта". Остается только взять этот функционал, доработать и создать версию объекта «ПередУдалением», ну и добавить возможность восстановить объект по сохраненной версии.

За основу взяты механизмы из "Библиотеки стандартных подсистем", (3.0.1.279). Работает на конфигурациях с БСП и без БСП.

 
 Текущий функционал: 
  • Сохранение и хранение версий по выбранным Документам и Справочникам в виде Fast InfoSet (Чтение\Запись реализована в версии 8.3.10.2168.). Подписка на событие ПередУдалением
  • Восстановление Документов и Справочников по битой ссылке. (Спасибо автору статьи Битые ссылки за его способ определения типов битой ссылки)
  • Восстановление Документов и Справочников по GUID и типу.
 
Тестировалась система на следующих конфигурациях и платформе:
  • 1С:Предприятие 8.3 (8.3.12.1685)
  • Не типовые конфигурации (Без БСП)
  • Демонстрационное приложение (1.0.26.4)
  • Демо "Библиотека стандартных подсистем", (3.0.1.279)
  • Демо Управление торговлей, редакция 11 (11.4.5.111)

По ходу тестирования на других платформах и конфигурациях список буду обновлять.

 
 
 Установка кратко:
 
 Установка подробно:
 
 После установки:

 

Примеры:

 
 Пример использования на базе с БСП:
 
 Пример использования на базе без БСП:

 

 
 Будущее и помощь:
  • Механизм по поиску битых ссылок. Пока решаю писать свой или использовать чей-то готовый, но какую обработку взять? Подскажите в комментариях на какую обратить внимание. Или может быть вы автор одной из таких обработок, и хотите поучаствовать в данной нестандартной подсистеме.
  • Создать единую базу по сбору версий. Обмен по средствам HTTP-Сервисов.
  • Обмен версиями с подсистемой "Версионирование объектов".

Релизы:

 
 Версия 0.0.5 (Текущая)
  • Выбор типов Документов и Справочников, по которым будет вестись хранение версий созданных перед удалением
  • Сохранение версий в виде Fast InfoSet (Чтение\Запись реализована версии 8.3.10.2168.)
  • Восстановление Документов и Справочников по битой ссылке. (Спасибо автору статьи Битые ссылки)
  • Восстановление Документов и Справочников по GUID и типу.

БСП Версионирование объектов Объект не найден ПередУдалением GUID Восстановление битых ссылок битая ссылка подсистема <Объект не найден> Com OData

См. также

Исправление в 1С:ЗУП/ЗКГУ ошибок по НДФЛ и взаиморасчетам с сотрудниками на начало расчетного года.

Корректировка данных Зарплата Платформа 1С v8.3 Сложные периодические расчеты 1С:Зарплата и кадры бюджетного учреждения 1С:Зарплата и Управление Персоналом 3.x Россия Бухгалтерский учет НДФЛ Платные (руб)

Обработка исправляет технические ошибки по НДФЛ, взаиморасчетам с сотрудниками в 1С:ЗУП (1С:ЗКГУ) на начало года. Фактически все ошибки, которые проявляются в ведомостях на выплату, расчетных листках, при заполнении ведомостей на выплату и отчетах 6-НДФЛ и т.д. нужно начинать исправлять с начала расчетного года. Это позволит быть уверенными, что после завершения расчетов предыдущего года, начали работать с «чистого листа» без ошибочных остатков.

4800 руб.

06.10.2023    2139    28    14    

32

Тестирование и исправление ключей аналитики ERP, УТ11, КА

Корректировка данных Платформа 1С v8.3 1С:ERP Управление предприятием 2 1С:Управление торговлей 11 1С:Комплексная автоматизация 2.х Платные (руб)

Незаменимая обработка для сопровождения конфигураций: ERP, УТ, КА. Позволяет вычистить многие ошибки в ключах аналитики, в ключевых справочниках конфигурации.

3600 руб.

10.02.2017    106570    631    173    

673

Быстрый поиск дублей с четким/нечетким поиском по любому сочетанию реквизитов/реквизитов таб. частей с отбором и быстрой заменой значений в ЛЮБЫХ базах 8.1-8.3 (УТ 10.3, БП 2, ЗУП 2.5, КА 1.1, УТ 11, БП 3, УНФ 1.6/3.0, КА 2, ЗУП 3 и т.д.)

Поиск данных Платформа 1С v8.3 Управляемые формы Конфигурации 1cv8 Платные (руб)

Обработки помогут Вам легко и, главное, быстро (в 5 раз и быстрее штатной обработки 1С), выполнить поиск дублирующих данных в Ваших базах 1С на платформах 8.1-8.3. Это позволит уменьшить объем лишней информации в справочниках и документах, планах видов характеристик и др., упростит работу с данными пользователям. А так же можно, одним нажатием, узнать в каких ссылочных объектах есть вообще дубли! Понятное расположение команд и настроек, в сочетании с описанием и справкой, еще упростят процесс. А так же обновления Вы получаете бесплатно в течение года с момента приобретения данных обработок! (Обновление от 27.11.2023, версия 6.12)

9600 руб.

14.05.2012    155063    324    252    

556

Журнал изменений с восстановлением состояния ссылочных объектов и архивацией по HTTP / COM (расширение + конфигурация, 8.3.14+, ЛЮБАЯ конфигурация)

Архивирование (backup) Журнал регистрации Поиск данных Платформа 1С v8.3 Управляемые формы Конфигурации 1cv8 1С:Управление торговлей 11 Платные (руб)

База данных «сама» меняет данные в документах/справочниках? Тогда данный журнал изменений для Вас! Практически не влияет на скорость записи объектов за счет быстрого алгоритма! Скорость работы почти в 2 раза выше типового механизма "История изменений"! Позволяет следить за изменениями и удалением в любых ссылочных объектах конфигурации, с возможностью архивации по HTTP(!) или COM, и сверткой данных. А так же, может восстановить состояние реквизитов (значения) до момента изменения или удаления объекта из базы. Есть ДЕМО-база где можно самостоятельно протестировать часть функционала! Работает на любых платформах выше 8.3.14+ и любых конфигурациях! Версия 3.1 от 24.08.2023!

19200 руб.

15.05.2017    42470    10    24    

38

Ускоренное проведение документов (x4), устранение ошибок 60/62 счетов и зачет авансов (Бухгалтерия 3.0)

Закрытие периода Инструменты администратора БД Корректировка данных Бухгалтерский учет 1С:Бухгалтерия 3.0 Россия Бухгалтерский учет Платные (руб)

Расширение «Оперативное проведение» в 4 раза уменьшает время проведения документов и закрытия месяца. Является комплексным решением проблем 62 и 60 счетов. Оптимизирует проведение при включенной функциональной опции «Раздельный учет НДС». Используется в более 10 организациях уже 2 года. Совместимо с конфигурацией Бухгалтерия 3.0 (+КОРП).

14400 руб.

29.04.2020    27149    78    146    

59

Заполнение документа "Корректировка регистров" произвольными данными

Закрытие периода Корректировка данных Платформа 1С v8.3 Система компоновки данных 1С:Управление нашей фирмой 1.6 1С:ERP Управление предприятием 2 1С:Управление торговлей 11 Управленческий учет Платные (руб)

Внешняя обработка, позволяющая произвольным образом заполнять документ "Корректировка регистров" Предназначена для использования в конфигурациях "Управление торговлей 11", "Управление небольшой фирмой", "ERP Управление предприятием", а также в других конфигурациях, в состав которых входит библиотека стандартных подсистем (БСП) версии 2.2+ и указанный выше документ.

2400 руб.

13.07.2015    50090    171    29    

121

Исправление ошибки закрытия месяца "Обнаружены ненулевые остатки по суммам при нулевом остатке по количеству в регистре себестоимости по организации". УТ 11.4,УТ 11.5, КА 2.4,КА 2.5, ERP 2.4, ERP 2.5, КА 2 Казахстан, Управление торговлей 3 для Казахстана

Закрытие периода Корректировка данных Платформа 1С v8.3 Оперативный учет 1С:Управление торговлей 11 Управленческий учет Платные (руб)

Закрытие месяца - важный процесс в современных конфигурациях, таких как УТ 11.4, УТ 11.5, КА 2.4, КА 2.5 ERP 2.4,ERP 2.5, КА 2 Казахстан, УТ 3 Казахстан регламентные операции влияют на расчет себестоимости, и ошибки в данном расчете не дают картины деятельности организации.

2400 руб.

27.10.2021    22223    298    35    

71
Комментарии
В избранное Подписаться на ответы Сортировка: Древо развёрнутое
Свернуть все
1. Vo-Va 723 12.10.18 23:55 Сейчас в теме
Почему живая вода? Я бы назвал это корзиной.
6. dsdred 3231 15.10.18 10:15 Сейчас в теме
(1)Корзина вызывает у меня какие то негативные ощущения, да и это Микрософтская тема.

Живая вода - элемент сказок. Убили, полили, оживили.

Сработает ли если битая ссылка возникла во время обмена риб?


Вообще по подписке на событие версия записывается в РС и поидее если передать данные РС тогда сработает.

П.С. В следующих версиях планируется отдельное Хранилище для версий созданных перед удалением. Ну и механизм обмена по http нарисую.
2. Vo-Va 723 12.10.18 23:56 Сейчас в теме
Сработает ли если битая ссылка возникла во время обмена риб?
3. Xershi 1473 13.10.18 01:10 Сейчас в теме
(2) автор же написал перед удалением. А после обменов и не только РИБ объектов ещё не было, там сразу битая ссылка.
rpgshnik; +1 Ответить
4. nvv1970 14.10.18 22:35 Сейчас в теме
Удаление не реализовано, потому что в РС.ВерсииОбъектов сам Объект сделан как Ссылка. Это очень плохо по многим причинам.
Например в аналогичной самописной я свободно использую логирование удаления, восстановление.
Использую только простые типы и как следствие свободное перемещение истории во внешнюю базу с доступом по внешнему источнику. А там полное раздолье: секционирование, сжатие, хоть за 100 лет история.
Полный комфорт.
dsdred; SlavaKron; +2 Ответить
8. dsdred 3231 15.10.18 10:21 Сейчас в теме
(4)Я планирую тоже внешнюю базу в следующем релизе с коннектом по http, но через ВИП тоже вариант.
9. nvv1970 15.10.18 10:27 Сейчас в теме
(8) а в какой среде собираетесь хранить данные и поднимать http?

Через внешний источник данные получаются мгновенно. Это очень удобно. Запросы, динамические списки и т.п.
HTTP - вещь перспективная, но архитектурно более сложная реализация.
10. dsdred 3231 15.10.18 10:35 Сейчас в теме
(9) Мудрить не буду. На 1с сделаю.
Там по идее работы часа на два, просто пока с временем не получается.
11. nvv1970 15.10.18 10:41 Сейчас в теме
(10) вот это и хотел спросить. Это плохой вариант.
Лишняя база 1с. Бррррр... Лишняя прослойка. Зачем?
Я думал что вы замахнулись на какой-нибудь OneClick )))

У меня реализация такая:
- пишется с текущую базу
- регламентно джоб скуля переносит данные во внешнюю базу, но на этом же сервере (можно рассматривать другой)
- читаем только через внешний источник...

Работоспособность никак не зависит от коннекта ,наличия базы и т.д. На миллиардах записей все крайне производительно.
12. dsdred 3231 15.10.18 10:49 Сейчас в теме
(11) Пока так, а потом посмотрим и в других направлениях в будущем.

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

А уже потом когда реализую и изложу то что хотел, можно заморачиваться.
5. vpaoli 26 15.10.18 09:26 Сейчас в теме
Вместо одной корзины здесь 2 корзины. Достаточно сложное решение. Аналогичный эффект можно получить просто скрывая помеченные на удаление элементы из формы списков.
7. dsdred 3231 15.10.18 10:19 Сейчас в теме
(5) 2-е корзины? Не совсем понял где вторая?

Эффект от скрывания помеченных на удаление не аналогичный...
В планах создать отдельную базу в которую будут стекать версии. То есть ошметки будут храниться в отдельном хранилище, а помеченные это тот шлак который никуда не делся.
13. vpaoli 26 17.10.18 16:29 Сейчас в теме
1) помечаем элемент на удаление, он попадает в первую корзину.
2) удаляем элемент непосредственно, при этом согласно вашему алгоритму создается и хранится его версия. Это и есть вторая корзина с версиями удаленных элементов.

Корзина - подмножество элементов БД.
Зачем что то удалять, а потом создавать версии, если можно просто не удалять, а скрывать из поля зрения.
14. dsdred 3231 17.10.18 21:28 Сейчас в теме
(13)Все, я Вас понял.

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


Не зря же есть сроки хранения данных(дел), документооборот, ГОСТы по делопроизводству, документоведы и процедуры уничтожения старых\архивных дел.
Оставьте свое сообщение