Форум 1С
Программистам, бухгалтерам, администраторам, пользователям
Задай вопрос - получи решение проблемы
17 сен 2021, 16:41

Вывод на печать срок поставки из документа заказа клиента УТ 11.4

Автор aea, 30 янв 2019, 11:54

0 Пользователей и 1 гость просматривают эту тему.

aea

Приветствую всех участников форума.
Задача - добавить числовое поле в документ Заказ клиента - Срок Поставки и чтобы эти данные выводились в случае заполнения.
Что я сделал:
1. В документе Заказ клиента добавил реквизит СрокПоставки
2. В форму документа Заказа клиента добавил поле СрокПоставки с ссылкой на Объект.СрокОплаты для документа Заказ клиента
3. В макет печатной формы доавил параметр и поле СрокПоставки
4. В обработку добавил код:
Если ЗначениеЗаполнено(ДанныеПечати.Ссылка.СрокОплаты) Тогда
      Область = Макет.ПолучитьОбласть("СрокОплаты");
      Область.Параметры.Заполнить(ДанныеПечати);
      ТабличныйДокумент.Вывести(Область);
КонецЕсли;   

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

LexaK

так СрокОплаты или СрокПоставки?
у вас в структуре (или что там у вас) ДанныеПечати нет такого реквизита! :befhbt:
ответ Понравился? (в смысле пригодился?)

aea

Цитата: LexaK от 30 янв 2019, 13:14
так СрокОплаты или СрокПоставки?
у вас в структуре (или что там у вас) ДанныеПечати нет такого реквизита! :befhbt:
Все напутал:
Задача - добавить числовое поле в документ Заказ клиента - Срок Поставки и чтобы эти данные выводились в случае заполнения.
Что я сделал:
1. В документе Заказ клиента добавил реквизит СрокПоставки
2. В форму документа Заказа клиента добавил поле СрокПоставки с ссылкой на Объект.СрокПоставки для документа Заказ клиента
3. В макет печатной формы добавил параметр и поле СрокПоставки
4. В обработку добавил код:
Если ЗначениеЗаполнено(ДанныеПечати.Ссылка.СрокПоставки) Тогда
      Область = Макет.ПолучитьОбласть("СрокПоставки");
      Область.Параметры.Заполнить(ДанныеПечати);
      ТабличныйДокумент.Вывести(Область);
КонецЕсли; 

Параллельно пытаюсь вывести еще и срок оплаты по аналогии

LexaK

ЦитироватьВсе напутал:
с этим понятно

а это
Цитироватьу вас в структуре (или что там у вас) ДанныеПечати нет такого реквизита (ДанныеПечати.СрокОплаты и ДанныеПечати.СрокПоставки)
это кто будет читать(и понимать/исправлять)?
ответ Понравился? (в смысле пригодился?)

aea

Цитата: LexaK от 30 янв 2019, 13:41у вас в структуре (или что там у вас) ДанныеПечати нет такого реквизита (ДанныеПечати.СрокОплаты и ДанныеПечати.СрокПоставки)
это кто будет читать(и понимать/исправлять)?

Цитата: LexaK от 30 янв 2019, 13:41
ЦитироватьВсе напутал:
с этим понятно

а это
Цитироватьу вас в структуре (или что там у вас) ДанныеПечати нет такого реквизита (ДанныеПечати.СрокОплаты и ДанныеПечати.СрокПоставки)
это кто будет читать(и понимать/исправлять)?
Я сделал по аналогии с полем комментарий для печати, который штатно есть в документе и он выводится без проблем.
Где задается структура ДанныеПечати?
Добавлено: 30 янв 2019, 15:37


Цитата: aea от 30 янв 2019, 15:22
Цитата: LexaK от 30 янв 2019, 13:41у вас в структуре (или что там у вас) ДанныеПечати нет такого реквизита (ДанныеПечати.СрокОплаты и ДанныеПечати.СрокПоставки)
это кто будет читать(и понимать/исправлять)?

Цитата: LexaK от 30 янв 2019, 13:41
ЦитироватьВсе напутал:
с этим понятно

а это
Цитироватьу вас в структуре (или что там у вас) ДанныеПечати нет такого реквизита (ДанныеПечати.СрокОплаты и ДанныеПечати.СрокПоставки)
это кто будет читать(и понимать/исправлять)?
Я сделал по аналогии с полем комментарий для печати, который штатно есть в документе и он выводится без проблем.
Где задается структура ДанныеПечати?

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

LexaK



Если ЗначениеЗаполнено(ДанныеПечати.Ссылка.СрокПоставки) Тогда
      Область = Макет.ПолучитьОбласть("СрокПоставки");
      СтруктураДанныхСрок = Новый Структура;
      СтруктураДанныхСрок.Вставить("СрокПоставки", ДанныеПечати.Ссылка.СрокПоставки);
      //Область.Параметры.Заполнить(ДанныеПечати);
      Область.Параметры.Заполнить(СтруктураДанныхСрок);
      ТабличныйДокумент.Вывести(Область);
КонецЕсли;

Добавлено: 30 янв 2019, 16:14


можно же еще и так параметры, по имени заполнять

   Область.Параметры.СрокПоставки = ДанныеПечати.Ссылка.СрокПоставки;
ответ Понравился? (в смысле пригодился?)

aea

Цитата: LexaK от 30 янв 2019, 16:11


Если ЗначениеЗаполнено(ДанныеПечати.Ссылка.СрокПоставки) Тогда
      Область = Макет.ПолучитьОбласть("СрокПоставки");
      СтруктураДанныхСрок = Новый Структура;
      СтруктураДанныхСрок.Вставить("СрокПоставки", ДанныеПечати.Ссылка.СрокПоставки);
      //Область.Параметры.Заполнить(ДанныеПечати);
      Область.Параметры.Заполнить(СтруктураДанныхСрок);
      ТабличныйДокумент.Вывести(Область);
КонецЕсли;

Добавлено: 30 янв 2019, 16:14


можно же еще и так параметры, по имени заполнять

   Область.Параметры.СрокПоставки = ДанныеПечати.Ссылка.СрокПоставки;

Спасибо.
Все получилось
Добавлено: 31 янв 2019, 15:44


Цитата: aea от 30 янв 2019, 16:30
Цитата: LexaK от 30 янв 2019, 16:11


Если ЗначениеЗаполнено(ДанныеПечати.Ссылка.СрокПоставки) Тогда
      Область = Макет.ПолучитьОбласть("СрокПоставки");
      СтруктураДанныхСрок = Новый Структура;
      СтруктураДанныхСрок.Вставить("СрокПоставки", ДанныеПечати.Ссылка.СрокПоставки);
      //Область.Параметры.Заполнить(ДанныеПечати);
      Область.Параметры.Заполнить(СтруктураДанныхСрок);
      ТабличныйДокумент.Вывести(Область);
КонецЕсли;

Добавлено: 30 янв 2019, 16:14


можно же еще и так параметры, по имени заполнять

   Область.Параметры.СрокПоставки = ДанныеПечати.Ссылка.СрокПоставки;

Спасибо.
Все получилось
Не пойму в чем прикол - в тестовой базе всё работает, перенес в рабочую - пишет ошибку Область не найдена СрокПоставки.
В макет добавил область, назначил имя. Не пойму в чем дело?!

Теги:

Похожие темы (5)

Рейтинг@Mail.ru Rambler's Top100

Поиск