Непосредственное удаление старых документов из информационной базы, в обход механизма контроля ссылочной целостности

17.12.24

База данных - Чистка данных

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

Скачать файл

ВНИМАНИЕ: Файлы из Базы знаний - это исходный код разработки. Это примеры решения задач, шаблоны, заготовки, "строительные материалы" для учетной системы. Файлы ориентированы на специалистов 1С, которые могут разобраться в коде и оптимизировать программу для запуска в базе данных. Гарантии работоспособности нет. Возврата нет. Технической поддержки нет.

Наименование По подписке [?] Купить один файл
Обработка Удалялка документов для непосредственного удаления старых документов из информационной базы, в обход механизма контроля ссылочной целостности.:
.epf 6,62Kb
12
12 Скачать (1 SM) Купить за 1 850 руб.

Обработка предназначена для непосредственного удаления старых документов из информационной базы, в обход механизма контроля ссылочной целостности. Предполагается, что обработку будет использовать квалифицированный 1С программист, который понимает, что делает. Обработка должна работать с любой конфигурацией на управляемых формах. Работала с 1С: Бухгалтерия предприятия 3.0 версии 3.0.161.22, на платформе 8.3.24.1691.

Непосредственное удаление большого количества старых документов в обход стандартного механизма, через удаление помеченных объектов – это варварство (отсюда и изображение для анонса публикации), но иногда такие задачи неизбежны. Например, у программиста физически нет времени на удаление помеченных объектов или, с чем я столкнулся при обрезке Бухгалтерии 8.3 – значительно количество документов с ручной корректировкой, которые и пометить на удаление нельзя.

Обычно такие задачи возникают при обрезке файловых информационных баз объема близким к предельному. Это неприятные проекты, с большой трудоемкостью и высокими рисками. Если программист работает с малым и средним бизнесом, то такие проекты регулярно появляются.

Прототип этой обработки я сделал для обрезки Бухгалтерии 3.0. После того, как отработала стандартная процедура свертки и все что смогла, пометила на удаление, я запустил свою обработку. По мне так удалить старые документы – это куда проще переноса нужных данных в базу-пустышку при помощи обработки ВыгрузкаЗагрузкаДанныхXML83.

Сценарий работы пользователя.

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

Обработка открывается пользователем с полными правами из меню ФайлОткрыть.

Пользователь заполняет реквизит Дата свертки и использует кнопку Заполнить таблицу документов. Будет заполнена табличная часть Документы на удаление. Табличная часть содержит три колонки: Имя документа – то имя документа, что видит 1С программист в Конфигураторе, заполняется из метаданных конфигурации. флаг Удалить – если снять эту отметку, то   эти документы удалятся не будут. Третья колонка – Дата свертки документа – при заполнении табличной части берется из реквизита Дата свертки. Может потребоваться для каких-то документов изменить дату свертки, пользователь может отредактировать эту дату.  

Дата свертки документа – это дата, начиная с которой в базе будут оставлены документы, т.е. – если установлено 01.01.2020 00:00:00, то последними удаленными документами будут документы с датой 31.12.2019 23:59:59. При обрезке Бухгалтерии остатки на дату свертки формируются документами ОперацияБух, за одну секунду, до даты свертки – поэтому там необходимо отредактировать Дату свертки документа -  31.12.2019 23:59:59 и документы ввода остатков останутся.

Далее пользователь запускает удаление документов, используя кнопку Удаляем документы. По завершению работы пользователю будут выданы сообщения о том какие и сколько документов было удалено из информационной базы.

Не забываем, после удаления документов запустить в конфигураторе Тестирование и исправление информационной базы в режиме Тестирование и исправление с параметрами – Очищать ссылки и удалять объекты.   

 

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

В цикле проходятся строки табличной части, и если в строке установлен флаг Удалить, то запросом получаем по имени ссылки на все документы, дата которых меньше Даты свертки документа и выгружаем эти ссылки в таблицу значений. Далее запускается цикл по строкам полученной на прошлом шаге таблицы значений со ссылками документов. В этом цикле организуем непосредственное удаление документов в транзакции, пакетами по 300 шт. При удалении документа-объекта указываем режим ОбменДанными.Загрузка = Истина, для того, чтобы отключить обработчик события ПередУдалением. Это существенно увеличивает скорость работы.  

Код обработки открытый.

Проверено на следующих конфигурациях и релизах:

  • Бухгалтерия предприятия, редакция 3.0, релизы 3.0.161.22

Обработка удаление старых документов свертка информационной базы обрезка информационной базы

См. также

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

Инструмент представляет собой обработку для проведения свёртки или обрезки баз данных. Работает на ЛЮБЫХ конфигурациях (УТ, БП, ERP, УНФ, КА и т.д.). Поддерживаются серверные и файловые базы, управляемые и обычные формы. Может выполнять свертку одновременно в несколько потоков. А так же автоматически, без непосредственного участия пользователя. Решение в Реестре отечественного ПО

8400 руб.

20.08.2024    24364    159    84    

159

Чистка данных Системный администратор Программист Платформа 1С v8.3 Управляемые формы 1C:Бухгалтерия 1С:Управление торговлей 10 1С:Управление торговлей 11 Платные (руб)

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

9600 руб.

22.02.2013    140101    270    146    

440

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

Позволяет удалить организации из любых из информационных баз 1С на управляемых формах (БП 3.0, УТ 11, КА 2, ERP 2, ЗУП 3.0, УНФ, Розница 2.0 и пр.). Главное требование - программа должна содержать справочник "Организации". Реализован самый быстрый алгоритм непосредственного удаления объектов. Работает даже на базах большого размера. Для ускорения работы алгоритма не запускается проверка контроля ссылочной целостности. Проверку учета можно запустить отдельно с помощью дополнительной обработки. Необходимо перед удалением самостоятельно проверить базу на наличие перекрестных ссылок разных организаций в одном документе. Эту дополнительную обработку проверки перекрестных ссылок по запросу предоставляем бесплатно нашим покупателям.

3582 руб.

16.03.2015    215225    223    82    

258

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

Обработка позволяет удобно и выборочно удалить данные из базы 1С на управляемых формах например БП 3.0, УТ 11, КА 2, ERP, УНФ, ЗУП 3, Розница и др. Это могут быть как неиспользуемые элементы справочников, так и неактуальные организации. При этом есть возможность провести анализ пересечений документов с другими организациями и таким образом уберечься от того, что при удалении обороты по другой организации изменятся.

3350 руб.

28.11.2019    26997    72    18    

86

Оптовая торговля Логистика, склад и ТМЦ Чистка данных Программист Бухгалтер Пользователь Платформа 1С v8.3 Оперативный учет 1С:Управление торговлей 11 Россия Управленческий учет Платные (руб)

Если вы начали работать в программном продукте Управление Торговлей, редакция 11 или Комплексная Автоматизация редакция 2 и включили механизм учёта серий, то перейти обратно в учёт без серий будет не так-то просто. Сложность заключается в том, что нужно очистить серии в табличной части документа, например, Реализация Товаров и услуг. Предлагаем алгоритм перехода на учет без серий для программного продукта УТ11. (Очистка серий.)

2400 руб.

09.04.2019    29659    47    15    

48

Чистка данных Системный администратор Программист Бухгалтер Пользователь Управляемые формы 1C:Бухгалтерия Россия Платные (руб)

Решение по удалению дублей позволяет определить связанные элементы в двух синхронизированных базах в качестве оригиналов и избежать необходимости ручного сравнения объектов в базах перед синхронизацией.

3960 руб.

27.06.2018    19529    12    3    

17

Чистка данных Системный администратор Программист Платформа 1С v8.3 Управляемые формы 1С:Бухгалтерия 3.0 1С:Управление производственным предприятием 1С:ERP Управление предприятием 2 1С:Управление холдингом 1С:Зарплата и кадры государственного учреждения 3 1С:Зарплата и Управление Персоналом 3.x 1С:Комплексная автоматизация 2.х 1С:Управление нашей фирмой 3.0 1С:Управление торговлей 11 1С:Розница 2 Абонемент ($m)

Универсальный инструмент для очистки базы. Работает как на конфигурациях на основе БСП, так и самописных. Позволяет выбрать данные, отобразить форму списка, увидеть структуру метаданных, очистить базу применяя при необходимости условия. Удаление производится по выбранным элементам в таблице значений. Наложение условий позволяет удалить документы по выбранной организации.

1 стартмани

25.12.2023    9381    207    WeterSoft    5    

15

Чистка данных Инструментарий разработчика Системный администратор Программист Платформа 1С v8.3 Абонемент ($m)

Очередная вариативная очистка кэша 1С с помощью Исполнителя 3.0.2.2.

1 стартмани

25.10.2023    5917    6    SerVer1C    27    

25
Комментарии
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
1. ovasiliev 6 21.12.24 10:47 Сейчас в теме
"Предполагается, что обработку будет использовать квалифицированный 1С программист".. Любой квалифицированный 1С программист, и даже не очень квалифицированный, всегда напишет такое сам, между двумя глотками кофе.
2. Petr54-ru 92 21.12.24 18:35 Сейчас в теме
(1) Согласен, чужой труд, он вообще ничего не стоит.

Для того, чтобы упростить жизнь программистам я тут специально подробно описал алгоритм, почитав который, все сразу становится очевидным и простым. Вы как думаете, - не стоило тут алгоритм описывать?
3. ovasiliev 6 22.12.24 10:28 Сейчас в теме
(2) Не стоило писать , что "предполагается, что обработку будет использовать квалифицированный 1С программист". А всё остальное - стоило. Для этого эта площадка и существует.
4. Petr54-ru 92 22.12.24 18:08 Сейчас в теме
(3) Я это сознательно написал, исходя из третьего фундаментального принципа ИТ, - принципа CYA (cover your ass). Нужно людей заранее предупредить об опасности заплыва за буйки.
Оставьте свое сообщение