Универсальный подбор и обработка объектов

Обновлено: Просмотров: 9951
💡 В этом уроке
В этом видео показаны инструменты для группового изменения реквизитов объектов, перепроведения и отмены проведения документов, перенумерация справочников системы и обработка объектов с использованием встроенного языка 1С
Универсальный подбор и обработка объектов

В этом уроке на примере конфигурации Бухгалтерия Предприятия 3.0 показаны инструменты для группового изменения реквизитов объектов, перепроведения и отмены проведения документов, перенумерация справочников системы, а также изменение комментария в элементах справочника номенклатуры и перепроведение документов поступления с использованием встроенного языка 1С (произвольный алгоритм).

В качестве инструмента использована обработка Универсальный подбор и обработка объектов.

Универсальный подбор и обработка объектов

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

Скачать саму обработку можно по ссылке.

Запустим обработку через меню Файл - Открыть:

открытие обработки из файла

выбор файла обработки

Может появится окно предупреждения безопасности. Разрешаем открыть файл:

предупреждение безопасности

В результате откроется форма обработки, где в поле поиска выбираем объект, с которым будем работать (редактировать, проводить/распроводить и т.д.).

форма обработки универсальный подбор и обработка объектов в 1с

Преимуществом данной обработки является возможность задавать множественные отборы, если нужно обрабатывать не все документы или элементы справочников:

множественные отборы

Условия отбора можно группировать по одному из вариантов связи: И, Или, Не. Таким образом, можно задавать гибкие настройки отборов для дальнейшей обработки объектов:

варианты группировки условий отбора

Групповое изменение реквизитов

Рассмотрим механизм группового изменения реквизитов на примере документов Реализации.

Допустим, перед нами стоит задача изменить склад во всех проведенных документах реализации.

Выберем объект поиска:

объект поиска для группового редактирования реквизитов

Т.к. нам нужны только проведенные документы, установим соответствующий отбор.

По кнопке Настройки отбора открывается окно настроек. Нажимаем кнопку Добавить новый элемент, в добавившейся строке кликнув по трем точкам откроется список полей для отбора. Выбираем поле Объект, раскрываем его реквизиты и выбираем Проведен:

выбор полей в настройках отбора

выбор поля проведен

Установим Вид сравнения - Равно, Значение - Да, нажимаем кнопку Применить. Таким образом, мы задали настройки для отбора проведенных документов реализации:

отбор проведенных документов реализации

После установки отбора, выполняем команду Найти ссылки. В результате будут отобраны все проведенные документы реализации. Слева для каждого документа по умолчанию устанавливается галка, которая означает, что данный документ будет обработан. Если у каких-то документов менять реквизиты не нужно, для них галки можно отключить. Для группового включения/отключения галок на командной панели выведены соответствующие кнопки:

выполнение команды найти ссылки

отобранные документы реализации

На втройке закладке выбираем обработку Установка реквизитов. Кликом по обработке открывается окно, в которм нужно выбрать один или несколько реквизитов для редактирования. Отметим реквизит Склад, укажем его значение. Нажимаем кнопку Выполнить:

выбор реквизита для групповой обработки

В результате выполнения операции появится сообщение о завершении с количеством обработанных объектов, а сам реквизит в документах будет изменен на заданный в настройках. Убедимся в этом, открыв несколько рандомных документов или посмотрев список документов: 

обработка изменения реквизитов завершена

изменен реквизит склад

Согласно заданным настройкам было обработано три документа (в одном из них вид операции Услуги не требует заполнения склада).

Перепроведение и отмена проведения документов

Сначала распроведем документы с помощью обработки Отменить проведение документов.

На закладке Найденные объекты при необходимости задаем отбор (если нужно распровести не все документы), по кнопке Найти ссылки заполнится список документов, которые будем распроводить.

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

На закладке Обработки кликом открываем форму нужной нам обработки, нажимаем кнопку Выполнить.

отмена проведения документов

 

По окончании операции появится сообщение о выполнении:

количество обработанных обработкой объектов

Все документы распроведены:

распроведены документы реализации

Теперь с помощью обработки Провести документы проведем документы снова (этой же обработкой можно выполнить и перепроведение документов).

Точно так же вызываем обработку и нажимаем Выполнить. В результате документы проведены.

проведение документов с помощью обработки

 

обработка проведения завершена

документы проведены обработкой

Рассмотрим задачу, когда требуется перепровести документы реализации за 2023 год по конкретной организации. Для этого зададим нужные отборы, найдем ссылки и запустим обработку проведения.

отборы для проведения документов обработкой

Найдено три документа, соответствующие отбору. Перепроведем их.

документы для перепроведения по отбору

перепроведение документов обработкой

завергение перепроведения документов реализации

 

Перенумерация объектов

Рассмотрим механизм перенумерации на примере справочника Номенклатура.

В поле поиска веберем объект Номенклатура, никаких отборов задавать не будем. Нажимаем Найти ссылки - система выдаст нам список всей номенклатуры и групп номенклатуры:

список номенклатуры в отборе

На второй закладке запустим обработку Перенумерация объектов. В открывшемся окне необходимо указать:

  • начальный номер нумерации (в нашем примере нумерация будет начинаться с единицы);
  • варианты изменения префиксов (заменим существующие префиксы на введенную строку, при этом строку префикса оставим пустой).

настройки перенумерации объектов

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

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

справочник номенклатура с перенумерованными кодами

Теперь добавим какой-нибудь префикс. Снова запускаем обработку, в строке префикса укажем значение нового префикса, выбираем настройку для замены существующего на введенную строку, нажимаем кнопку Выполнить:

добавление префикса

В результате получим новый префикс у всей номенклатуры:

новый префикс у номенклатуры

Теперь добавим в начало префиксов букву А:

доавление символов в начало префиксов

 Проверяем результат:

символ в начале префикса

Заменим в префиксе слово ТЕСТ на букву Б:

настройки замены части префикса

Результат:

результат изменения части префикса

Добавление символов в конец префиксов работает аналогично добавлению в начало, только для этого выбирается другая настройка:

добавление символов в конец префикса

Произвольный алгоритм

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

Для возможности использования данного механизма, у пользователя должны быть некоторые навыки работы с языком программирования 1С. С помощью произвольного алгоритма можно выполнять множество операций с объектами системы. Рассмотрим некоторые из них.

Запустим соответствующую обработку. В открывшемся окне нужно прописать код, который будет выполняться для выбранных объектов.

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

изменение комментария в номенклатуре

 

В результате появилось сообщение об успешном выполнении операции и одновременно об ошибке. Текст ошибки говорит о том, что изменение реквизита Комментарий для группы недоступно. 

ошибка при выполнении произвольного алгоритма

Исключим групппы номенклатуры из выборки. Сделать это можно с помощью настроек отбора:

исключение групп номенклатуры из выборки

Далее нажимаем Найти ссылки. В результате будет отобрана только номенклатура (без групп):

номенклатура без групп

Теперь наш произвольный алгоритм отработает без ошибок:

произвольный алгоритм выполнен

Открыв любую карточку номенклатуры убедимся, что комментарий заполнен:

комментарий в карточке номенклатуры

Добавим к существующему комментарию какой-нибудь текст. Пусть это будет ДОПТЕКСТ. Нужно написать такой код:

добавляем текст к комментарию

Проверяем результат:

добавлен текст к комментарию

Теперь покажем, как выполнить перепроведение документов с помощью произвольного алгоритма на примере документов поступления.

Выбираем объект поиска, выполняем поиск ссылок. 

список документов поступления для перепроведения

Открываем произвольный алгоритм, пишем код, нажимаем Выполнить:

код для перепроведения документов

операция перепроведения завершена

Операция завершена успешно. Документы поступления перепроведены.

 

Дмитрий Медведков

Дмитрий Медведков

Сертифицированный разработчик решений для 1С (имею 10 сертификатов)

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