Может кто поделиться опытом использования типовой обработки для пометки на удаление документов. Интересует вопрос уменьшения времени работы при удалении большого количества документов за длительный период.
Возможные варианты:
1. запуск обработки за весь период удаления.
2. Пометка на удаление частями (по-квартально, годично).
3. Пометка на удаление, удаление части документов.
Возможны и другие варианты.
Имхо первый вариант самый долгий.
1. В обработке цикл разбить на более мелкие транзакции (я делал по 3-5 тишч).
2. ТА и БИ перенести на дату, меньше первого документа - не будет перезаписи в рег. итогов и пересчет.
а) транзакции
б) если регистры не забываем про ТА (чтоб при каждом .Удалить(0) не двигать ТА)
в) Базу на СКУЛЬ - а там средствами скуля удаляем документы. Потом ТиИ с очисткой битых ссылок. (обработки есть на инфостарте).
а вообще сия операция обычна индивидуальна.
г) для совсем ниндзей: http://pro1c.org.ua/redirect.php?http://1czone.ru/vopros/18-kak-bystro-udalit-iz-bazy-1s-77-vse-dokumenty.html
1. Перемещаем ТА и Бух итоги назад. На дату когда не велись операции.
2. Удаляем документы в транзакции за весь период удаления.
3. Помещаем ТА и Бух итоги на место.
--
Если без пункта 1 и 3 то помечаем документы на удаление в обратном хронологическом порядке.
*на минуточку: транзакции для SQL-базы - не есть хорошо
в файловом да.
Самое надежное удалять по-квартально.
(это дополнение к предыдущему оратору)
Как происходит распровдедение документа в 7.7:
Например дата документа 23.12.2004 года. Сегодня 23.12.2014
1. Удаляются проводки одного документа.
2. Пересчитываются бух итоги и бух обороты по участвовавшим счетам и субконто. за 10 лет - это пересчитываются 40 отдельных периодов.
3. Переходим к следующему документу.
4. Идём к пункт 1.
В транзакции алгоритм наверно не меняется. Просто блокировки таблиц не проверяются.
Поэтому основной элемент ускорения - это отмотать итоги назад чтобы при удалении проводок ничего не пересчитывалось.
А потом мы возвращаем итоги назад и за один раз пересчитываем все итоги по новым проводкам.
Украинский 1С форум: всё про 1С 8.3, 1С 8.2, 1С 8.1, 1С 8.0, 1С 7.7
https://pro1c.org.ua