Как вставить номер заказа клиента в форму накладной из реализации товаров?

База знаний Одина — Одинэсника Форумы ODIN — Форум по 1С Предприятию Как вставить номер заказа клиента в форму накладной из реализации товаров?

Просмотр 1 ветки ответов
  • Автор
    Сообщения
    • #36833
      Фото аватараOdineski
      Участник

        Вставить номер заказа клиента в форму Расходной накладной при печати из реализации товаров

      • #36834
        bot_avaOdin — Одинэсник
        Участник

          Чтобы вставить номер заказа клиента в печатную форму Расходной накладной, которая печатается из документа РеализацияТоваровУслуг, нужно сделать следующее:

          1. Проверить, что в документе РеализацияТоваровУслуг есть ссылка на ЗаказКлиента

          В типовой конфигурации в документе РеализацияТоваровУслуг есть реквизит ЗаказКлиента (ссылка на документ ЗаказКлиента). Если его нет — нужно добавить.

          2. Открыть макет печатной формы Расходной накладной

          — В конфигураторе откройте объект «Документ.РеализацияТоваровУслуг».
          — Перейдите в раздел «Макеты печатных форм».
          — Найдите макет Расходной накладной (обычно называется «РасходнаяНакладная» или похожим именем).
          — Откройте макет в редакторе (FastReport или встроенный редактор).

          3. Добавить поле для номера заказа клиента

          — В нужном месте макета (например, в шапке документа или рядом с реквизитами документа) добавьте текстовое поле.
          — В качестве выражения для этого поля укажите:

          Если макет на FastReport, то выражение будет примерно такое:

          4. Если в макете нет объекта «Документ.ЗаказКлиента» — нужно расширить выборку данных

          В макете печатной формы данные берутся из объекта, который формируется в коде печатной формы.

          — В модуле менеджера документа РеализацияТоваровУслуг найдите процедуру, которая формирует печатную форму (например, СформироватьПечатнуюФормуРасходнойНакладной).
          — В этой процедуре нужно добавить передачу реквизита ЗаказКлиента в макет.

          Пример (в модуле менеджера расширения):

          |&Вместо(«СформироватьПечатнуюФормуРасходнойНакладной»)
          |Функция СформироватьПечатнуюФормуРасходнойНакладной(Параметры)
          | ИсходнаяФорма = ЭтотОбъект.СформироватьПечатнуюФормуРасходнойНакладной(Параметры);
          | ИсходнаяФорма.ОбластьДанных.Параметры.ЗаказКлиента = ЭтотОбъект.ЗаказКлиента;
          | Возврат ИсходнаяФорма;
          |КонецФункции

          5. В макете добавить параметр «ЗаказКлиента»

          — В редакторе макета добавьте параметр «ЗаказКлиента» типа «ДокументСсылка.ЗаказКлиента».
          — В поле для номера заказа укажите выражение:

          6. Проверить и протестировать

          — Сохраните изменения.
          — Запустите 1С в режиме предприятия.
          — Откройте документ РеализацияТоваровУслуг, у которого заполнен реквизит ЗаказКлиента.
          — Распечатайте Расходную накладную.
          — Убедитесь, что номер заказа клиента отображается.

          Если хотите сделать через расширение конфигурации, то:

          — Создайте расширение.
          — В модуле менеджера документа РеализацияТоваровУслуг сделайте перехват функции формирования печатной формы.
          — Добавьте передачу реквизита ЗаказКлиента в макет.
          — В макете расширения добавьте поле с номером заказа.

          Рекомендую посмотреть подробный пример по добавлению реквизита в печатную форму здесь:
          https://infostart.ru/public/1590240/

          Там подробно описан процесс добавления своего реквизита в макет печатной формы.

      Просмотр 1 ветки ответов
      • Для ответа в этой теме необходимо авторизоваться.
      База знаний 1С