Как выставить несколько счетов на оплату на разные позиции одного заказа в 1С:УТ 11

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

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

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

Анализ архитектуры: Почему в УТ 11 нельзя просто «выбрать товары» в счете

Проанализируем ситуацию с точки зрения разработчиков системы. В современных конфигурациях (УТ 11, КА 2, ERP) учет строится вокруг документа Заказ клиента. Именно в нем фиксируются все условия: что продаем, по какой цене и когда ожидаем оплату. Документ Счет на оплату в этой цепочке не является самостоятельным товарным документом. Он предназначен лишь для того, чтобы сообщить клиенту банковские реквизиты и сумму, которую нужно оплатить согласно графику.

Когда мы нажимаем кнопку «Создать на основании» — Счет на оплату, программа обращается к табличной части Этапы оплаты в заказе. Если в заказе один этап оплаты (например, «Предоплата 100%»), то и счет будет один на всю сумму заказа. При этом в печатную форму счета система по умолчанию выводит весь перечень товаров из заказа, так как на уровне базы данных нет жесткой связи между конкретной строкой товара и конкретным счетом. Есть только связь «сумма к оплате — документ-основание».

Способ №1: Дробление заказа на несколько документов

Это самый «чистый» способ с точки зрения типовой логики программы, хотя он и требует от менеджера больше действий. Если клиент просит разные счета на разные группы товаров (например, из-за разных сроков поставки или разных плательщиков), логично разделить и сами заказы.

Рассмотрим пошагово, как это сделать правильно:

  1. Создаем один общий Заказ клиента, вносим туда все позиции, согласовываем цены и наличие.
  2. Если клиент подтверждает готовность платить частями по разным спискам товаров, воспользуемся функцией Разбить заказ.
  3. Для этого в форме заказа выделим те позиции, которые должны уйти в отдельный счет, и нажмем кнопку перевода строк в новый документ (или просто скопируем заказ, удалив лишние строки в оригинале и копии).
  4. В итоге мы получаем, например, три документа Заказ клиента. На основании каждого из них формируется свой Счет на оплату.

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

Недостатки: Если позиций 80 и их нужно дробить постоянно, это увеличивает объем документооборота.

Способ №2: Использование внешних печатных форм с подбором товаров

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

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

Пример логики формирования такой печатной формы на языке 1С (упрощенно):


// В обработке печати вызываем форму подбора позиций
ПараметрыПодбора = Новый Структура("СписокТоваров, СуммаЗаказа", ТаблицаТоваровЗаказа, ИтоговаяСумма);
ФормаВыбора = ПолучитьФорму("ВнешняяОбработка.ПечатьСчетаСВыбором.Форма.ФормаПодбора", ПараметрыПодбора);
ВыбранныеСтроки = ФормаВыбора.ОткрытьМодально();

// Далее формируем табличный документ только по ВыбранныеСтроки
Для Каждого Строка Из ВыбранныеСтроки Цикл
    ОбластьСтрока.Параметры.Номенклатура = Строка.Номенклатура;
    ОбластьСтрока.Параметры.Сумма = Строка.Сумма;
    ТабДок.Вывести(ОбластьСтрока);
КонецЦикла;

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

Способ №3: Настройка этапов оплаты в графике заказа

Посмотрим на ситуацию через механизм Правила оплаты. В заказе клиента на вкладке «Основное» (или в отдельном окне «Правила оплаты», в зависимости от настроек) можно указать несколько этапов оплаты.

Например:

  1. Предоплата (до обеспечения) — 30%
  2. Предоплата (перед отгрузкой) — 50%
  3. Кредит (после отгрузки) — 20%

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

Важный нюанс: Штатно в печатную форму счета все равно попадут все товары заказа. Чтобы в счете на 30% предоплаты отображались только товары, относящиеся к этой предоплате, потребуется либо ручная корректировка печатной формы (кнопка с карандашом в окне предпросмотра), либо использование расширения конфигурации.

Способ №4: Использование расширений конфигурации

Для тех, кто хочет вернуть функционал 10.3 максимально близко к оригиналу, рекомендуется использовать Расширения конфигурации. Расширение позволяет добавить в документ Счет на оплату реальную табличную часть Товары, которая не затирается при обновлении типовой конфигурации.

Разберем, как это меняет работу:

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

Резюме и рекомендации

Проанализировав все варианты, можно сделать следующие выводы:

1. Если вы хотите оставаться строго в рамках типовой логики 1С:УТ 11 и иметь идеальный учет — используйте дробление заказов (Способ №1). Это гарантирует отсутствие ошибок в распределении оплат и отгрузок.

2. Если вам важна визуальная часть (чтобы клиент видел в счете только часть товара) и вы не хотите множить заказы — закажите программисту внешнюю печатную форму с выбором позиций (Способ №2). Это самый быстрый и бюджетный вариант доработки.

3. Если вы готовы к небольшим изменениям в структуре базы данных ради удобства — используйте расширение, добавляющее табличную часть в счета (Способ №4).

Помните, что в УТ 11 контроль исполнения обязательств ведется по заказам, поэтому любое «виртуальное» дробление счетов требует внимательности от бухгалтерии при разнесении входящих платежей в банковской выписке.

← На главную