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

Помогите разобраться с добавлением дополнительных сведений в документ

Автор Anna_7, 23 окт 2017, 20:39

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

Anna_7

Есть Документ РеализацияУслугПоПереработке и Дополнительное сведение ИдентификаторГК.
Для того чтобы вытащить данное доп. сведение пишу функцию:

функция ПолучитьИдентификаторГосКонтракта(ИдентификаторГосКонтракта)

   Запрос = Новый Запрос;
   Запрос.Текст =
      "ВЫБРАТЬ
      |   ЕСТЬNULL(ДополнительныеСведения.Значение, """") КАК ИдентификаторГосКонтракта,
      |   РеализацияУслугПоПереработке.Ссылка КАК Ссылка
      |ИЗ
      |   Документ.РеализацияУслугПоПереработке КАК РеализацияУслугПоПереработке
      |      ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.ДополнительныеСведения КАК ДополнительныеСведения
      |      ПО РеализацияУслугПоПереработке.Ссылка = ДополнительныеСведения.Объект
      |         И (ДополнительныеСведения.Свойство = &ИдентификаторГосКонтракта)
      |ГДЕ
      |   РеализацияУслугПоПереработке.Ссылка = &Ссылка";
   
   Запрос.УстановитьПараметр("Ссылка",ИдентификаторГосКонтракта);
   Запрос.УстановитьПараметр("ИдентификаторГосКонтракта",ПланыВидовХарактеристик.ДополнительныеРеквизитыИСведения.НайтиПоНаименованию("ИдентификаторГосКонтракта"));
   РезультатЗапроса = Запрос.Выполнить();
   Если не РезультатЗапроса.Пустой() тогда
      ВыборкаДетальныеЗаписи = РезультатЗапроса.Выбрать();
   ВыборкаДетальныеЗаписи.Следующий();
   ИдентификаторГосКонтракта = ВыборкаДетальныеЗаписи.ИдентификаторГосКонтракта;
   иначе
   ИдентификаторГосКонтракта = "";
    КонецЕсли;    
   Возврат ИдентификаторГосКонтракта;   
КонецФункции

Далее необходимо результат поместить в макет, подскажите как это реализовать?

oleg-x

Создать параметр в макете, там где надо. И в коде, при получение той области где размещен параметр задать значение:
ОбластьШапка.Параметр.ИмяПараметра = ИндентификаторГК;
Помог, нажми спасибо. Не помог, нажми спасибо :-)
Если у Вас есть проблема, то её уже кто то решил @Yandex, @Google

Anna_7

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

Простейшее - но не понимаю.!

Обьясните, пожалуйста!

riff666

ОбластьШапка.Параметр.ИмяПараметра = ПолучитьИдентификаторГосКонтракта(ИдентификаторГосКонтракта);
Может так.

oleg-x

Цитата: Anna_7 от 23 окт 2017, 23:53
Это понятно.
Описание макета для печати происходит в процедуре "........."
как из процедуры вызвать функцию, которая указана выше и что должно стоять в скобках?

Простейшее - но не понимаю.!

Обьясните, пожалуйста!
Тогда выкладывай код иначе ни как, только в теги заключай
Помог, нажми спасибо. Не помог, нажми спасибо :-)
Если у Вас есть проблема, то её уже кто то решил @Yandex, @Google

Теги:

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

Рейтинг@Mail.ru

Поиск