Почему в 1С:Комплексная автоматизация 2.4 заблокировано поле «Вид операции» в документе реализации и как это исправить?

Бизнес-аналитик 1С v8.3 (Управляемые формы) 1С:Комплексная автоматизация Управленческий учет Торговля и дистрибуция
← На главную

При работе в программе 1С:Комплексная автоматизация 2.4 (КА 2.4) или 1С:ERP Управление предприятием пользователи часто сталкиваются с ситуацией, когда в документе РеализацияТоваровУслуг (Реализация товаров и услуг) поле «Вид операции» становится недоступным для редактирования. Например, возникает необходимость изменить стандартную операцию «Реализация» на «Реализация (Товары в пути)», но поле полностью заблокировано («серый» шрифт), даже если документ предварительно распроведен, а дата запрета изменения данных не установлена.

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

Причина 1. Глобальные функциональные опции программы

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

Проанализируем глобальные настройки программы по следующим шагам:

  1. Перейдем в раздел НСИ и администрирование — Настройка НСИ и разделов — Продажи.
  2. Развернем подраздел Оптовые продажи.
  3. Проверим наличие и активность флага «Отгрузка без перехода права собственности». Если этот флаг снят, операция «Реализация (товары в пути)» будет недоступна для выбора во всей базе данных. Установим этот флаг.
  4. Также рекомендуется проверить настройку «Статусы реализаций товаров и услуг» — в некоторых релизах корректная смена видов операций зависит от жизненного цикла статусов документа.

Причина 2. Настройки Соглашения или Договора с клиентом

Если глобальные опции включены, но поле в документе по-прежнему заблокировано, причиной обычно является жесткая привязка условий продажи к конкретному клиенту. В ERP-решениях 1С вид операции в накладной жестко контролируется правилами, зафиксированными в справочнике СоглашенияСКлиентами (или ДоговорыКонтрагентов, если соглашения не используются).

Выясним, как это исправить:

  1. Откроем проблемный документ реализации и обратим внимание на заполненное поле «Соглашение» (или «Договор»). Откроем карточку этого соглашения/договора.
  2. Перейдем на вкладку Условия продаж.
  3. Найдем признак отложенного перехода права собственности — флаг «Возможна отгрузка без перехода права собственности». Если этот флаг выключен, система считает, что по данному соглашению возможна только стандартная продажа, и блокирует выбор операции «Товары в пути» в самом документе.
  4. Установим данный флаг в соглашении и запишем изменения.
  5. Вернемся в документ реализации, перезаполним (перевыберем) поле соглашения, чтобы форма обновила контекст. После этого поле выбора вида операции должно стать доступным.

Причина 3. Влияние документа-основания «Заказ клиента»

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

Рассмотрим порядок действий в этой ситуации:

  1. Проверим, заполнено ли в реализации поле «Заказ». Если документ оформлен по заказу, то менять хозяйственную операцию необходимо в самом первоисточнике.
  2. Откроем документ-основание ЗаказКлиента.
  3. Перейдем на вкладку Дополнительно и найдем там реквизит «Операция».
  4. Если в соглашении к заказу включена возможность отгрузки без перехода права собственности (см. Причину 2), изменим операцию в заказе на «Реализация (товары в пути)», проведем заказ и обновим на его основе реализацию.
  5. В качестве временного обходного пути (если это не нарушает логику резервирования и обеспечения товаров) можно попробовать очистить связь с заказом в реализации, изменить вид операции, а затем вернуть ссылку на заказ обратно. Однако наиболее методологически верным является изменение операции именно в документе-основании.

Причина 4. Электронный документооборот и подписание документа

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

Для решения этой проблемы проверим статус ЭДО в нижней части формы документа или на панели навигации. Если документ имеет статус «Подписан» или «Отправлен», потребуется отменить подписание или создать аннулирование электронного документа, после чего поля снова станут доступными для редактирования.

Причина 5. Блокировка периода при закрытии месяца

В конфигурациях ERP и КА 2.4 помимо стандартной даты запрета изменения данных действует так называемый «второй контур» защиты — блокировка документов регламентными операциями в рабочем месте «Закрытие месяца». Если за расчетный месяц уже выполнены процедуры распределения расходов и расчета себестоимости, система блокирует формы документов даже для пользователей с полными правами (администраторов).

Чтобы внести изменения, необходимо временно открыть заблокированный период в рабочем месте закрытия месяца, внести правки в реализацию, а затем заново запустить процедуру расчета себестоимости за этот период.

Причина 6. Технический обход блокировки реквизита (для администраторов)

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

Проанализируем два технических способа решения:

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

  1. Перейдем в раздел НСИ и администрирование — Обслуживание — Корректировка данных — Групповое изменение реквизитов.
  2. В поле «Выбирать элементы» укажем объект: Документы: Реализация товаров и услуг.
  3. С помощью ссылки «Все элементы» обязательно настроим отбор по конкретной ссылке или номеру нашего документа, чтобы случайно не изменить лишние данные.
  4. Нажмем кнопку Дополнительные параметры (в правом нижнем углу или в меню «Еще») и установим флаг «Показывать служебные реквизиты».
  5. Найдем в списке реквизитов поле ХозяйственнаяОперация (в интерфейсе программы это и есть «Вид операции»).
  6. Установим новое значение: РеализацияТоварыВПути (Реализация (Товары в пути)).
  7. Нажмем кнопку Изменить реквизиты.

Способ Б. Программное изменение с обходом проверок

Если форма документа блокирует запись стандартными средствами из-за процедур ПередЗаписью или ПриЗаписи, программист может принудительно изменить значение реквизита в режиме загрузки данных, когда все платформенные проверки бизнес-логики отключаются.

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


// Определим ссылку на изменяемый документ реализации
СсылкаНаДокумент = Документы.РеализацияТоваровУслуг.НайтиПоНомеру("00КА-000125", ТекущаяДата());

Если Не СсылкаНаДокумент.Пустая() Тогда
    // Получим объект документа для редактирования
    ОбъектДокумента = СсылкаНаДокумент.ПолучитьОбъект();
    
    // Включим режим загрузки данных для отключения проверок формы и модуля
    ОбъектДокумента.ОбменДанными.Загрузка = Истина;
    
    // Принудительно меняем вид операции на "Товары в пути"
    ОбъектДокумента.ХозяйственнаяОперация = Перечисления.ХозяйственныеОперации.РеализацияТоварыВПути;
    
    // Записываем документ без проведения, чтобы не нарушить движения
    ОбъектДокумента.Записать(РежимЗаписиДокумента.Запись);
    
    Сообщить("Вид операции успешно изменен на 'Товары в пути'!");
КонецЕсли;

Важное предупреждение: Использование технических методов (Способы А и Б) позволяет обойти программные ограничения интерфейса, но может привести к несогласованности данных (например, если в соглашении с клиентом запрещена отгрузка без перехода права собственности, а документ принудительно переведен в этот статус). Используйте программные методы только в крайних случаях и обязательно проверяйте корректность движений документа по регистрам после изменения реквизита.

← На главную