Шаблон обработки 1С сэкономит время для решения задач по обработке данных (изменение, перепроведение, удаление и т.п.).
Требуется внести минимальные изменения для получения результата.
В обработке заложен тестовый пример (можно сразу ознакомиться с принципом работы).
Функционал
- Техническая часть
- Запрос к данным через СКД
- Динамическое формирование таблицы на форме в зависимости от выбранных полей в СКД
- Работа с фоновым заданием (запуск, отслеживание с выводом прогресса обработки элементов, отмена)
- Готовая процедура для обхода выбранных элементов (в транзации)
- Замеры времени
- Пользовательский интерфейс
- Отбор и анализ элементов перед обработкой
- Пометка необходимых элементов для обработки
- Запуск обработки данных в фононом режиме с выводом прогресса выполнения
- Возможность отменить обработку
- Возможность посмотреть текст запроса (для технарей)
- Представлены 2 варианта обработки данных (с предварительными отборами и без них)
- Обработка имеет одинаковое поведение во всех вариантах использования
- Внешняя обработка (файл - открыть)
- Дополнительная обработка
- Объект конфигурации
- Объект расширения конфигурации
Основная идея шаблона
Иногда появляются задачи по групповой обработке данных (массово изменить реквизит объекта, сделать запись в регистр, пометить на удаление по специфическим отборам, создать корректировки записей регистров и т.п.).
Во многом задачи схожи между собой (наличие ключевых объектов справочник/документ, произвольные отборы по объектам), различаются в основном метаданными и алгоритмами обработки данных. Обработки 1С могут быть как разовыми, так и постоянными.
Автору, как разработчику, надоело каждый раз с нуля создавать новую обработку 1С для очередной задачи, и он решил создать шаблон обработки 1С.
Обозначенные требования к шаблону:
- Требуется внести минимум изменений в шаблон обработки 1С для решения новой задачи по групповой обработке данных;
- Предусмотреть, что готовую обработку 1С будут использовать пользователи, сделать ее максимально удобной в использовании (интерфейс, юзабилити и т.п.);
- Позволить пользователю задавать произвольный отбор элементов и выводить их в таблице перед обработкой данных (должна быть возможность указать галочками обрабатываемые элементы, по умолчанию все галочки должны стоять).
Автор прекрасно понимает что подобных обработок на данном ресурсе выложено достаточно, но все же решил поделиться своим вариантом (он был написан давно, и требует минимальных изменений для получения результата).
Предварительный отбор и анализ данных перед обработкой
Запуск обработки данных в фоне
Результат успешного выполнения обработки данных
Результат выполнения обработки данных с ошибками
- Для варианта с предварительным отбором элементов (если выбрали вариант без отборов - данный шаг можно пропустить):
- Изменить текст запроса макета "ОсновнаяСхемаКомпоновкиДанных". На форме можно будет накладывать отборы на основании выбранных полей в СКД.
- При необходимости в функции "АдресВременногоХранилищаПараметровОбработки()" добавьте необходимые параметры для передачи в фоновое задание по обработке данных
- В модуле объекта:
- Для быстрых тестов и ознакомления с обработкой измените функцию "ИмяСправочникаДляДемонстрацииРаботы()" на любой Ваш справочник (по умолчанию указан "Организации")
- Доработайте процедуру "ОбработатьДанные" в области "ДорабатываемаяЧасть"
- Обратите внимание на комментарии "ДОБАВИТЬ_", "УДАЛИТЬ_"
- Управляемые формы;
- Платформа 1С:Предприятие версии 8.3.6 и выше;
- Библиотека стандартных подсистем версии 2.3.2 и выше (все актуальные типовые конфигурации под это требование подходят).
02.04.2023 Добавлена пилотная версия шаблона обработки