К статье
Практический материал

Администрирование · 12 мин

Как в 1С массово поменять вид операции

Способы массовой замены вида операции в 1С 8.3: групповая обработка реквизитов, обработка «Поиск и замена значений», программное изменение через встроенный язык и проверка результата.

Замена вида операции у большого количества документов — типовая задача при исправлении ошибок ввода, реорганизации учёта или переносе данных. Вручную перебирать сотни документов долго и рискованно: легко пропустить объект или изменить не тот реквизит. В 1С есть несколько штатных и программных способов выполнить такую замену массово.

Выбор инструмента зависит от конфигурации, объёма данных и прав пользователя. Для типовых конфигураций на управляемых формах (Бухгалтерия предприятия 3.0, Управление торговлей 11, ERP) обычно достаточно встроенной обработки группового изменения реквизитов. Для нестандартных ситуаций используют обработку «Поиск и замена значений» или программное изменение через встроенный язык.

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

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

Вид операции — это реквизит документа, который определяет алгоритм его проведения: какие проводки будут сформированы, по каким регистрам документ сделает движения, какие поля доступны для заполнения. Например, у документа «Поступление товаров и услуг» виды операции разделяют закупку товаров, услуг, оборудования, и у каждого варианта свой набор счетов учёта.

Массовая замена требуется в типичных ситуациях: документы введены с неверным видом операции из-за ошибки оператора или обмена данными, изменилась учётная политика и часть операций нужно переквалифицировать, после переноса данных из другой программы вид операции заполнен значением по умолчанию. Во всех этих случаях ручное исправление десятков или сотен документов неэффективно.

Важно понимать: вид операции — не просто текстовая пометка. Его смена влияет на проведение документа. Поэтому после замены документы, как правило, нужно перепровести, а в ряде случаев — проверить корректность сформированных проводок.

Подготовка: резервная копия и анализ данных

Первый шаг — резервное копирование. В файловой базе достаточно скопировать файл 1Cv8.1CD или выгрузить базу через конфигуратор (Администрирование → Выгрузить информационную базу). В клиент-серверном варианте используйте средства СУБД или выгрузку через конфигуратор. Проверьте, что копия создалась и файл выгрузки не нулевого размера.

Второй шаг — определить точный перечень документов для изменения. Сформируйте список документов нужного вида за период, добавьте в список колонку «Вид операции» и убедитесь, что отбор по текущему (неверному) значению охватывает именно те документы, которые нужно исправить. Лишние документы в выборке — главный источник порчи данных при массовых операциях.

Третий шаг — проверить, нет ли ограничений: дата запрета редактирования, закрытые периоды, документы в статусе согласования, заблокированные объекты. Эти ограничения либо остановят обработку, либо приведут к частичному изменению, когда часть документов обновится, а часть — нет.

Контрольные точки

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

Резервная копия
Норма

Файл выгрузки создан, размер соответствует базе

Тревожный признак

Копия не создавалась или выгрузка прервана ошибкой

Отбор документов
Норма

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

Тревожный признак

В выборке есть документы, которые менять не нужно

Права и ограничения
Норма

Нет даты запрета редактирования на нужный период

Тревожный признак

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

Способ 1. Групповое изменение реквизитов

Основной штатный инструмент в типовых конфигурациях на платформе 8.3 — обработка «Групповое изменение реквизитов». Она находится в разделе «Администрирование» → «Обслуживание» → «Корректировка данных». Для её запуска нужны права администратора или роль, допускающая корректировку данных.

Порядок работы: откройте обработку, в поле выбора типа укажите нужный вид документа (например, «Поступление товаров и услуг»). Затем настройте отбор: добавьте условие «Вид операции = старое значение», при необходимости ограничьте период датами. Обработка покажет количество найденных элементов — сверьте его со своим списком.

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

Обратите внимание на режим выполнения. По умолчанию обработка может работать в режиме «Показывать служебные реквизиты» выключенном — если реквизит «Вид операции» не виден в списке, включите отображение служебных реквизитов через меню «Ещё».

Порядок действий в обработке
  1. 1
    Сделайте резервную копию базы
  2. 2
    Откройте Администрирование → Обслуживание → Корректировка данных → Групповое изменение реквизитов
  3. 3
    Выберите вид документа и задайте отбор по старому виду операции
  4. 4
    Сверьте количество найденных документов с контрольным списком
  5. 5
    Отметьте реквизит «Вид операции» и укажите новое значение
  6. 6
    Нажмите «Изменить реквизиты» и дождитесь отчёта о выполнении
  7. 7
    Проверьте несколько документов и перепроведите изменённые

Способ 2. Обработка «Поиск и замена значений»

Если вид операции — это ссылочное значение (элемент перечисления или справочника), можно использовать универсальную обработку «Поиск и замена значений». Она ищет все ссылки на указанное значение во всех объектах базы и заменяет их на другое значение.

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

Поэтому «Поиск и замена значений» применяйте осторожно: сначала запустите поиск ссылок без замены, изучите список найденных объектов и только потом выполняйте замену. После замены перепроведите затронутые документы и проверьте отчёты.

Сравнение способов

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

Штатно, с отбором и отчётом о выполнении. Подходит для большинства задач. Ограничение: работает в рамках одного вида объектов за запуск.

Поиск и замена значений

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

Программное изменение

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

Способ 3. Программное изменение через встроенный язык

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

bsl
Запрос = Новый Запрос;
Запрос.Текст =
"ВЫБРАТЬ
| ПоступлениеТоваровУслуг.Ссылка КАК Ссылка
|ИЗ
| Документ.ПоступлениеТоваровУслуг КАК ПоступлениеТоваровУслуг
|ГДЕ
| ПоступлениеТоваровУслуг.ВидОперации = &СтарыйВид
| И ПоступлениеТоваровУслуг.Дата МЕЖДУ &Начало И &Конец";
Запрос.УстановитьПараметр("СтарыйВид", Перечисления.ВидыОперацийПоступлениеТоваровУслуг.Товары);
Выборка = Запрос.Выполнить().Выбрать();
Пока Выборка.Следующий() Цикл
 ДокОбъект = Выборка.Ссылка.ПолучитьОбъект();
 ДокОбъект.ВидОперации = Перечисления.ВидыОперацийПоступлениеТоваровУслуг.Услуги;
 ДокОбъект.Записать(РежимЗаписиДокумента.Проведение);
КонецЦикла;

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

Для больших объёмов выполняйте обработку в транзакции порциями или в монопольном режиме, чтобы избежать конфликтов блокировок. Запускайте такой код только через внешнюю обработку в режиме предприятия либо через консоль кода с правами администратора.

Проверка результата и перепроведение

После массовой замены выполните контрольные проверки. Откройте список документов с отбором по новому виду операции — количество должно совпасть с числом изменённых объектов из отчёта обработки. Затем проверьте, что по старому виду операции не осталось документов, которые должны были быть изменены.

Далее перепроведите документы. В типовых конфигурациях для этого есть обработка «Проведение документов» (раздел «Операции» или «Администрирование» в зависимости от конфигурации). Перепроведение восстановит последовательность документов и обновит проводки в соответствии с новым видом операции.

Финальная проверка — сформируйте ключевые отчёты (оборотно-сальдовую ведомость, анализ счёта) за затронутый период и сравните с ожидаемым результатом. Если вид операции влиял на счета учёта, обороты по соответствующим счетам должны измениться.

Типичные ошибки
01
Замена без резервной копии — при ошибке в отборе откатить изменения невозможно
02
Слишком широкий отбор — изменяются документы, которые трогать не планировали
03
Забытое перепроведение — проводки и отчёты показывают старые данные
04
Игнорирование даты запрета редактирования — обработка частично не срабатывает, и это остаётся незамеченным
05
Замена в закрытом периоде — расходятся данные со сданной отчётностью

Ограничения и частные случаи

Не во всех конфигурациях реквизит называется «Вид операции» и не везде он доступен для группового изменения. В некоторых документах вид операции определяется функциональной опцией или вычисляется. Если реквизит не отображается в обработке группового изменения даже в режиме служебных реквизитов, значит, разработчик конфигурации запретил его массовое редактирование — тогда остаётся программный способ.

В распределённых базах (РИБ) массовые изменения выполняйте в центральном узле, чтобы изменения корректно разошлись по периферийным. Изменение в подчинённом узле может привести к коллизиям при обмене.

Если база работает в клиент-серверном режиме с большим числом пользователей, выполняйте массовые операции в нерабочее время: запись тысяч документов создаёт нагрузку и может блокировать таблицы.

Маршрут решения

Как выбрать способ

Нужно поменять вид операции у документов одного вида по простому условиюИспользуйте «Групповое изменение реквизитов»
Нужно заменить значение во всех объектах базы сразуИспользуйте «Поиск и замена значений» с предварительным просмотром ссылок
Условие сложное или нужно сразу перепровести документыНапишите обработку на встроенном языке
Документы в закрытом периоде со сданной отчётностьюНе правьте напрямую — введите корректирующие документы

Часто задаваемые вопросы

Можно ли отменить массовую замену вида операции?

Штатной кнопки отката нет. Восстановить данные можно только из резервной копии, сделанной до изменения. Поэтому копия базы — обязательный первый шаг. Менее радикальный вариант — повторная групповая обработка с обратной заменой, но она не восстановит исходные проводки, если документы уже перепроведены.

Почему в обработке группового изменения не виден реквизит «Вид операции»?

Включите отображение служебных реквизитов через меню «Ещё» в обработке. Если реквизит всё равно отсутствует, разработчик конфигурации исключил его из списка редактируемых — тогда используйте программное изменение через встроенный язык.

Нужно ли перепроводить документы после смены вида операции?

Да, если документы проведены. Смена вида операции меняет алгоритм формирования движений, и без перепроведения проводки останутся старыми. Используйте обработку «Проведение документов» за затронутый период.

Что делать, если обработка изменила не все документы?

Откройте отчёт о выполнении — там указаны причины пропуска. Обычно это дата запрета редактирования, отсутствие прав, блокировка объекта другим пользователем или ошибка при записи. Устраните причину и повторите обработку по оставшимся документам.

Можно ли менять вид операции в закрытом периоде?

Технически — да, если снята дата запрета редактирования. Но методологически это неверно: изменятся данные, по которым уже сдана отчётность. Правильный путь — корректирующие документы текущей датой или согласованная корректировка прошлого периода с пересдачей отчётности.

Итог

Что важно запомнить

Массовая замена вида операции выполняется через «Групповое изменение реквизитов», обработку «Поиск и замена значений» или программно. Обязательный порядок: резервная копия → точный отбор → изменение → перепроведение → проверка отчётов. Документы закрытого периода напрямую не правят.