Как восстановить создание "Приходного ордера на товары" из "Поступления товаров и услуг" в 1С:Управление торговлей 11.3?

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

При обновлении конфигурации 1С:Управление торговлей (УТ) до версии 11.3.4.93 или более поздних, пользователи могут столкнуться с тем, что документ "Приходный ордер на товары" исчезает из списка доступных для создания на основании документа "Поступление товаров и услуг". Это изменение вызывает вопросы и недоумение, поскольку ранее такой функционал был стандартным. Важно понимать, что это не является ошибкой или "глюком" программы, а представляет собой целенаправленное изменение в логике работы, связанное с развитием ордерной схемы документооборота в УТ 11.

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

Подход 1: Использование стандартного рабочего места "Приемка товаров на склад" (рекомендовано 1С)

Для начала, давайте разберем, как фирма 1С предлагает работать с приходными ордерами в версиях УТ 11.3 и выше, особенно при использовании ордерной схемы документооборота. Основная идея заключается в разделении финансового и складского учета. Документ "Поступление товаров и услуг" регистрирует факт финансовых взаиморасчетов с поставщиком (задолженность, стоимость товаров), тогда как фактическое поступление товаров на склад и их размещение фиксируется именно "Приходным ордером на товары". Это позволяет разграничить ответственность и упростить работу различных отделов.

  1. Проверяем настройки ордерной схемы

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

    Здесь нам необходимо проверить следующие флаги:

    • "Ордерные склады": Убедимся, что этот флаг установлен. Его наличие означает, что для складов, где используется ордерная схема, фактическое поступление и отгрузка товаров будут оформляться отдельными ордерами.
    • "Использовать статусы складских документов": Хотя этот флаг не является строго обязательным для работы ордерной схемы, его активация позволяет более гибко управлять процессами приемки и отгрузки товаров, присваивая документам статусы (например, "К поступлению", "Принят", "Отгружен").

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

  2. Используем рабочее место "Приемка товаров на склад"

    Именно это рабочее место является основным инструментом для кладовщика, ответственного за приемку товаров. Мы найдем его в разделе "Склад и доставка", далее в подразделе "Ордерный склад", пункт "Приемка".

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

    • "Заказы поставщику" со статусом "К поступлению". Это наиболее частый сценарий.
    • "Поступление товаров и услуг". Этот документ становится распоряжением, если он оформлен без привязки к "Заказу поставщику" или если в настройках установлен соответствующий порядок оформления.
    • "Заказ на сборку/разборку", если на его основании оформлен и проведен документ "Сборка (разборка) товаров".
    • "Сборка (разборка) товаров", если документ оформлен без указания заказа.
    • "Заказ на перемещение", если на его основании оформлен и проведен документ "Перемещение товаров".
    • "Перемещение товаров", если документ оформлен без указания заказа.
    • "Возврат товаров от клиента".

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

  3. Кнопка "К оформлению..." в документе "Поступление товаров и услуг"

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

    Эта кнопка по сути является ярлыком, который перенаправляет нас в рабочее место для оформления складских документов, где наше "Поступление товаров и услуг" будет представлено как одно из распоряжений на приемку.

Преимущества данного подхода: использование рабочего места "Приемка товаров на склад" соответствует современной логике УТ 11, разделяет ответственность между финансовым отделом и складом, обеспечивает более гибкое и контролируемое управление складскими операциями, а также упрощает учет при большом потоке поступлений. Это рекомендованный фирмой 1С способ работы в условиях ордерной схемы.

Подход 2: Программное восстановление команды "Создать на основании" (доработка конфигурации)

Несмотря на преимущества стандартного рабочего места, некоторые пользователи могут предпочесть вернуть привычную кнопку "Приходный ордер на товары" в меню "Создать на основании" документа "Поступление товаров и услуг". Это возможно, но требует внесения изменений в конфигурацию, то есть доработки. Мы должны быть готовы к тому, что любые модификации могут усложнить будущие обновления конфигурации и потребуют дополнительного внимания.

  1. Изучаем механизм формирования команд "Создать на основании"

    Чтобы понять, почему команда исчезла и как ее вернуть, нам потребуется обратиться к конфигуратору и проанализировать, как формируется список команд "Создать на основании".

    • Открываем конфигуратор и находим документ "Поступление товаров и услуг".

    • Переходим к модулю формы документа "Поступление товаров и услуг" (обычно это основная форма документа). В этом модуле нас интересует обработчик события ПриСозданииНаСервере. В нем, как правило, вызывается стандартная процедура, отвечающая за формирование команд ввода на основании:

      
      // ВводНаОсновании
      ВводНаОсновании.ПриСозданииНаСервере(ЭтотОбъект, Элементы.ПодменюСоздатьНаОсновании);
      // Конец ВводНаОсновании
      

      Эта строка является отправной точкой для формирования динамического списка команд.

    • Запускаем отладку. Установим точку останова на вызове ВводНаОсновании.ПриСозданииНаСервере() и запустим отладку, открыв любой документ "Поступление товаров и услуг". Когда отладчик остановится, войдем в эту процедуру (клавиша F11).

    • Анализируем модуль менеджера. Внутри процедуры ВводНаОсновании.ПриСозданииНаСервере() мы увидим логику, которая определяет, какие команды должны быть доступны. В конечном итоге, управление будет передано в модуль менеджера документа "Поступление товаров и услуг". Нас интересует процедура с именем ДобавитьКомандыСозданияНаОсновании(КомандыСозданияНаОсновании, Параметры) Экспорт. Эта процедура является центральной для программного добавления команд.

      Проанализируем ее содержимое. В типовой конфигурации УТ 11.3, скорее всего, команда для создания "Приходного ордера на товары" просто не добавляется в этой процедуре по умолчанию для данного сценария. Возможно, она была удалена, закомментирована или обернута в условный оператор, который больше не выполняется.

  2. Добавляем команду "Приходный ордер на товары" программно

    Чтобы вернуть команду, нам необходимо внести изменения в процедуру ДобавитьКомандыСозданияНаОсновании модуля менеджера документа "Поступление товаров и услуг". Мы добавим строку, которая явно регистрирует команду создания "Приходного ордера на товары" в общем списке команд.

    Используем стандартный метод ДобавитьКомандуСоздатьНаОсновании соответствующего документа ("Приходный ордер на товары"), который корректно формирует все необходимые параметры и метаданные для команды:

    
    // Пример добавления команды "Приходный ордер на товары"
    // в модуль менеджера документа "Поступление товаров и услуг"
    Процедура ДобавитьКомандыСозданияНаОсновании(КомандыСозданияНаОсновании, Параметры) Экспорт
        // ... Здесь могут быть уже существующие команды,
        // добавленные для других документов ...
    
        // Добавляем команду для создания Приходного ордера на товары
        // Убедитесь, что это соответствует вашей логике и настройкам ордерной схемы.
        // Если ордерная схема не используется, эта команда может быть избыточной.
        Документы.ПриходныйОрдерНаТовары.ДобавитьКомандуСоздатьНаОсновании(КомандыСозданияНаОсновании);
    
        // ... Далее могут следовать остальные команды,
        // которые были изначально в этой процедуре ...
    КонецПроцедуры
    

    Важное замечание: При добавлении этой команды мы должны убедиться, что она согласуется с нашей текущей бизнес-логикой и настройками ордерной схемы. Если на предприятии не используется ордерная схема документооборота, то создание "Приходного ордера на товары" может быть избыточным или даже приводить к ошибкам, так как он не будет иметь практического смысла.

  3. Проверяем права доступа

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

  4. Проверяем видимость команды в командном интерфейсе (дополнительная проверка)

    Хотя в большинстве случаев, если команда программно добавлена, она будет отображаться автоматически, не будет лишним убедиться, что в конфигураторе для документа "Поступление товаров и услуг" на закладке "Командный интерфейс", соответствующая команда для "Приходного ордера на товары" имеет установленный флаг "Видимость". Это гарантирует ее отображение в пользовательском интерфейсе.

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

Заключение

Мы выяснили, что исчезновение "Приходного ордера на товары" из меню "Создать на основании" в "Поступлении товаров и услуг" в 1С:Управление торговлей 11.3 — это не ошибка, а следствие изменения логики работы программы, ориентированной на более строгое разделение финансового и складского учета через ордерную схему.

Наиболее рекомендуемый и поддерживаемый фирмой 1С подход — это использование стандартного рабочего места "Приемка товаров на склад". Этот метод обеспечивает корректный документооборот и соответствует современным стандартам работы в УТ.

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

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

← На главную