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

Внешняя обработка для Заказ Покупателя, нужна помощь

Автор zhonya, 20 мар 2014, 10:44

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

zhonya

Доброго времени суток.
У меня стоит задача - чтобы в Заказе Покупателя в печатной форме выводилось поле Дополнительное Описание Номенклатуры.
8.2 Комплексная автоматизация.
Сделал внешнюю печатную форму, добавил Основное изображение, а вот как вытащить  Дополнительное Описание Номенклатуры для указанной в Заказе Номенклатуры не могу домыслить. Прошу подсказать, как это сделать.
Ниже часть модуля объекта:
СекцияОбластьНомера = ОбластьНомера;
      СекцияОбластьКодов = ОбластьКодов;
      СекцияНоменклатура = ОбластьТовар;
      СекцияОбластьДанных = ОбластьДанных;
      СекцияОбластьСкидок = ОбластьСкидок;
      СекцияОбластьСуммы = ОбластьСуммы;
      СекцияКартинка = ОбластьКартинка_БезКартинки;
      Картинка = Неопределено;
      СекцияОписание = ОбластьОписание_БезОписания;
      Описание = Неопределено;
      
      Если ЗначениеЗаполнено(ПараметрыПозиции.Номенклатура.ОсновноеИзображение) Тогда
         Картинка = ПараметрыПозиции.Номенклатура.ОсновноеИзображение.Хранилище.Получить();
      КонецЕсли;
      Если ЗначениеЗаполнено(ПараметрыПозиции.Номенклатура.ДополнительноеОписаниеНоменклатуры) Тогда
         Описание = ПараметрыПозиции.Номенклатура.ДополнительноеОписаниеНоменклатуры;
      КонецЕсли;

      Если ЗначениеЗаполнено(Картинка) Тогда
         СекцияОбластьНомера = ОбластьНомера_Картинка;
         СекцияОбластьКодов = ОбластьКодов_Картинка;
         СекцияНоменклатура = ОбластьТовар_Картинка;
         СекцияКартинка = ОбластьКартинка;
         СекцияОбластьДанных = ОбластьДанных_Картинка;
         СекцияОбластьСкидок = ОбластьСкидок_Картинка;
         СекцияОбластьСуммы = ОбластьСуммы_Картинка;
         СекцияКартинка.Рисунки["Изображение"].Картинка = Картинка;
      КонецЕсли;

      Если ЗначениеЗаполнено(Описание) Тогда
         СекцияОбластьНомера = ОбластьНомера_Описание;
         СекцияОбластьКодов = ОбластьКодов_Описание;
         СекцияНоменклатура = ОбластьТовар_Описание;
         СекцияОписание = ОбластьОписание;
         СекцияОбластьДанных = ОбластьДанных_Описание;
         СекцияОбластьСкидок = ОбластьСкидок_Описание;
         СекцияОбластьСуммы = ОбластьСуммы_Описание;
         //СекцияОписание = ОбластьОписание_Описание;
      КонецЕсли;

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

zhonya

Что никто не сталкивался с подобной задачей?

wise

(1)нет :P

КА у меня нет под рукой...

ГДЕ твоя строчка в которой ты ВЫВОДИШЬ описание??
если ЭТО { //СекцияОписание = ОбластьОписание_Описание; } :^454^:
если ЭТО { СекцияОписание = ОбластьОписание; } :^454^:
ПОПРОБУЙ это {СекцияОписание = Описание;} :ooifh:
Представьте себе, какая была бы тишина, если бы люди говорили только то, что знают

zhonya

Цитата: wise от 21 мар 2014, 09:14
(1)нет :P

КА у меня нет под рукой...

ГДЕ твоя строчка в которой ты ВЫВОДИШЬ описание??
если ЭТО { //СекцияОписание = ОбластьОписание_Описание; } :^454^:
если ЭТО { СекцияОписание = ОбластьОписание; } :^454^:
ПОПРОБУЙ это {СекцияОписание = Описание;} :ooifh:

Вот как раз в этом у меня и затуп.
Сейчас попробую {СекцияОписание = Описание;}


wise

Представьте себе, какая была бы тишина, если бы люди говорили только то, что знают

zhonya

Попробовал, выдает ошибку:
Ошибка при вызове метода контекста (Присоединить)
      ТабДокумент.Присоединить(СекцияОписание);
по причине:
Несоответствие типов (параметр номер '1')

   Если ЗначениеЗаполнено(Описание) Тогда
         СекцияОбластьНомера = ОбластьНомера_Описание;
         СекцияОбластьКодов = ОбластьКодов_Описание;
         СекцияНоменклатура = ОбластьТовар_Описание;
         СекцияОписание = Описание;
         СекцияОбластьДанных = ОбластьДанных_Описание;
         СекцияОбластьСкидок = ОбластьСкидок_Описание;
         СекцияОбластьСуммы = ОбластьСуммы_Описание;
         //СекцияОписание = Описание;
      КонецЕсли;

      СекцияОбластьНомера.Параметры.Заполнить(ПараметрыПозиции);
      ТабДокумент.Вывести(СекцияОбластьНомера);

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

      СекцияНоменклатура.Параметры.Заполнить(ПараметрыПозиции);
      ТабДокумент.Присоединить(СекцияНоменклатура);
      
      ТабДокумент.Присоединить(СекцияКартинка);
      ТабДокумент.Присоединить(СекцияОписание);

wise

:o
СекцияОписание = ОбластьОписание;
НАДО в "ОбластьОписание" заполнить параметр данными {Описание}
ДОПУСТИМ, что в ОбластьОписание ЕСТЬ параметр "Описание"
напиши:{
ОбластьОписание.Параметры.Описание = Описание;
}
и ВЕРНИ ОБРАТНО!! СекцияОписание = ОбластьОписание; :P
Представьте себе, какая была бы тишина, если бы люди говорили только то, что знают

zhonya

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


Все супер получилось!!!!!
:zebzdr:
Спасибо большое за подсказку.:ooifh::ooifh::ooifh:

Теги:

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

Рейтинг@Mail.ru

Поиск