Всем привет!
Решал задачу - создания новой базы для новой организации, но с теми же контрагентами и номенклатурой.
Самым простым решением стало - скопировать имеющуюся базу и почистить ее от всех документов. Так и родилась данная внешняя обработка - открывается через Файл - Открыть.
Протестирована на конфигурациях, платформы 1С:Предприятие 8.3 (8.3.13.1644, 8.3.17.1851 и 8.3.18.1289):
- Бухгалтерия предприятия, редакция 3.0 (3.0.71.89, 3.0.96.35)
- Зарплата и управление персоналом, редакция 3.1 (3.1.7.61)
- Управление нашей фирмой, редакция 1.6 (1.6.13.54)
- Управление торговлей, редакция 11 (11.4.13.123)
- Розница, редакция 2.2 (2.2.11.29), есть нюансы с Чеками ККМ - пример тут //infostart.ru/public/1115171/
Обновление от 28-08-2021г:
1. Оптимизирован алгоритм обхода списка документов - теперь обход документов происходит намного быстрее.
2. Решены "детские" проблемы: например, была ошибка запроса для документа ПоказателиЕНВД программы УНФ (подробности смотрите в комментариях).
3. Изменен алгоритм распроведения документов - теперь никакие проверки при распроведении не срабатывают - а значит не надо дополнительно включать/отключать, какие-либо параметры или настройки в программах, и, как дополнение, теперь распроведение работает на многих конфигурациях корректно
4. Порядок обработки документов (распроведение или удаление) происходит так: если вы задали список видов документов, значит по тому порядку как он задан, если не задали, то по порядку имен объектов метаданных (по возрастанию от А до Я).
5. Если вам нужен список обработанных документов (распроведенных или удаленных) - то он появится в конце процесса в сообщении пользователю.
6. Если вам нужно контролировать процесс и иметь возможность останавливать процесс обработки документов, моя рекомендация - запускать процесс через отладку конфигуратора.
Немного теории и практики.
1. Если надо удалить/распровести документы до определенной даты, то ставьте в поле "До даты" любой период. По умолчанию период устанавливается текущей датой.
Можете указать организацию, иначе будут обработаны документы без учета организации.
2. При свертке баз я уже неоднократно использовал удаление только помеченных на удаление документов. Получается так - что те документы, которые вы хотите удалить, вы заранее помечаете на удаление с помощью, например, групповой обработки документов. И наоборот, те документы, которые не нужно удалять, вы не помечаете на удаление.
Пример свертки и удаления только помеченных на удаление документов: //infostart.ru/public/1033813/
В связи с этим добавлена функциональность
3. Однажды удалял документы на измененной типовой базе и столкнулся с тем, что документ-регистратор был удален из базы без проверки связанных ссылок, а записи по регистру сведений удалены не были.
После чего программно или интерактивно удалить записи из регистра не удается!
Задействовал "Тестирование и исправление" с режимом "создания объекта - при наличии ссылок на несуществующие объекты". После чего почистил записи программно.
Так как в той ситуации подобных баз было несколько (филиальная сеть) - решил перед удалением распроводить документы.
И так появилась еще одна функциональность "Распроводить документы перед удалением":
4. В дальнейшем, идея "распроводить" документы перед удалением мне понравилась, и я выделил "Распроведение документов" в отдельный функционал:
5. Иногда при чистке баз требуется оставить вместе с номенклатурой цены, поэтому появилась функциональность "Не удалять документы Установка цен номенклатуры":
6. После удаления документов без проверок связанных ссылок, необходимо почистить вручную все зарегистрированные изменения для обмена. В моем случае в исходной базе был настроен обмен с УТ.
Не забудьте обнулить номера сообщений.
7. Добавил возможность отбирать документы для удаления / распроведения в виде прямых и обратных списков: "Обрабатывать только из списка" и "Не обрабатывать из этого списка".
С помощью данных списков можно исключить из обработки документы, по которым специфичным образом настроены типовые механизмы и из-за которых, к примеру, нельзя распровести документы перед удалением.
ПС. Во время разработки понадобилось узнать максимальную длину наименований документов в БП, разработал вспомогательную обработку (прикладываю в публикации). Оказалось, что в БП максимальная длина документов составляет 93 символа (см. вложенные скрины).
Публикации:
1) Про деньги фрилансера New
2) Внедрение адресного хранения на 1С:КА 2.4. Часть 1.
3) Шаблоны кода (управляемые формы)
4) Заполнение чека ККМ из Реализации или Заказа через штрихкод документа
Расширения:
1) [Расширение] УНФ. Список заказов + Структура подчиненности
2) [Расширение] БП 3.0. Список счетов/ Список реализаций + Связанные документы
3) [Расширение] УТ 11.4. Счет на оплату с факсимиле и баннерами
Внешние обработки (не расширения!):
1) Список заказов поставщикам + структура подчиненности
2) Список заказов покупателей + структура подчиненности
3) Список реализаций со структурой подчиненности + реестр документов
4) Список заказов покупателей (Расширенная версия)
Другие публикации:
1) Удаление справочников для любых баз на управляемых формах
2) Адресное хранение: этикетки складских ячеек со стрелками
3) Удаление чеков ККМ в Рознице 2.2
4) Загрузка товаров, штрихкодов, цен и остатков на УФ - Розница 2.2
5) Отчет Остатки и цены (прайс с остатками)
6) Как свернуть базу УТ 10.3: принципы свертки, технология, вспомогательные обработки
7) [ЦФшник] Доработка конфигурации Конвертация Данных
8) [Внешняя обработка] Ввод показателей план-факта БП 3.0
9) [Шаблоны] Договоры для 1с-ника ТОП-скачиваний
10) Удаление документов для любых баз на обычных формах
11) Выделение документов в списках (обычные формы) для групповой обработки
12) Список номенклатуры с выводом уникального идентификатора для УТ 10.3
13) Замена задвоенных договоров в БП 3.0
Из последнего опубликованного:
15) Анализ прав и ролей: поиск подходящего профиля
Если пригодилась, ставьте плюсы, пишите в комментариях какая конфа и какая платформа.
Всем добра! :)