Имя: Пароль:
1C
1С v8
ВПФ Заказ покупателя с указанием складов (прошу помочь допилить код)
0 sotnikov
 
19.05.15
16:04
Имеется следующая печатная форма для УТ 10.3:


Функция ПечатьДокумента()
    
    
    //Созданим и заполним табличный документ
    ТабДокумент = Новый ТабличныйДокумент;
    
    Макет = ПолучитьМакет("МакетЗаказПокупателяПоСкладамРезерва");
    
    СекцияЗаголовок     = Макет.ПолучитьОбласть("Заголовок");
    СекцияПоставщик     = Макет.ПолучитьОбласть("Поставщик");
    СекцияПокупатель     = Макет.ПолучитьОбласть("Покупатеь");
    СекцияШапкаТаблицы     = Макет.ПолучитьОбласть("ШапкаТаблицы");
    СекцияСтрока         = Макет.ПолучитьОбласть("Строка");
    СекцияИтого         = Макет.ПолучитьОбласть("Итого");
    СекцияИтогоНДС         = Макет.ПолучитьОбласть("ИтогоНДС");
    СекцияСуммаПрописью = Макет.ПолучитьОбласть("СуммаПрописью");
    СекцияПодвалЗаказа     = Макет.ПолучитьОбласть("ПодвалЗаказа");
        
    СекцияЗаголовок.Параметры.ТекстЗаголовка     = "Заказ покупателя № " + СсылкаНаОбъект.Номер + " от " + СсылкаНаОбъект.Дата;
    ТабДокумент.Вывести(СекцияЗаголовок);
    
    СекцияПоставщик.Параметры.Поставщик         = СсылкаНаОбъект.Организация;
    ТабДокумент.Вывести(СекцияПоставщик);
    
    СекцияПокупатель.Параметры.Покупатель         = СсылкаНаОбъект.Контрагент;
    СекцияПокупатель.Параметры.Комментарий         = СсылкаНаОбъект.Комментарий;
    ТабДокумент.Вывести(СекцияПокупатель);
    
    ТабДокумент.Вывести(СекцияШапкаТаблицы);
    
    Сумма            = 0;
    СуммаНДС           = 0;
    НумераторСтрок     = 0;
    
        
    Для каждого СтрТаб Из СсылкаНаОбъект.Товары Цикл
        НумераторСтрок = НумераторСтрок + 1;
        СекцияСтрока.Параметры.Номенклатура         = СсылкаНаОбъект.Товары;
        ЗаполнитьЗначенияСвойств(СекцияСтрока.Параметры,СтрТаб);
        ТабДокумент.Вывести(СекцияСтрока);
    КонецЦикла;
    СекцияИтого.Параметры.Итого            = СсылкаНаОбъект.СуммаДокумента;
    ТабДокумент.Вывести(СекцияИтого);
    
    //СекцияИтогоНДС.Параметры.ВсегоНДС    = СуммаНДС;
    //ТабДокумент.Вывести(СекцияИтогоНДС);
    
    Сумма = СсылкаНаОбъект.СуммаДокумента;
    //СуммаКПрописи = Сумма + ?(СсылкаНаОбъект.Шапка.СуммаВключаетНДС, 0, СуммаНДС);
    СуммаКПрописи = Сумма;
    СекцияСуммаПрописью.Параметры.ИтоговаяСтрока ="Всего наименований " + НумераторСтрок + ", на сумму " + ОбщегоНазначения.ФорматСумм(СуммаКПрописи, СсылкаНаОбъект.ВалютаДокумента);
    СекцияСуммаПрописью.Параметры.СуммаПрописью = ОбщегоНазначения.СформироватьСуммуПрописью(СуммаКПрописи, СсылкаНаОбъект.ВалютаДокумента);
    ТабДокумент.Вывести(СекцияСуммаПрописью);
    
    СекцияПодвалЗаказа.Параметры.Ответственный = СсылкаНаОбъект.Ответственный;
    ТабДокумент.Вывести(СекцияПодвалЗаказа);
    
    //ТабДокумент.ОтображатьЗаголовки = Ложь;
    //ТабДокумент.ОтображатьСетку     = Ложь;
    //ТабДокумент.ТолькоПросмотр     = Истина;
    
    Возврат ТабДокумент;

КонецФункции // ПечатьДокумента()

Функция Печать() Экспорт
    
    ТабДокумент = ПечатьДокумента();
    Возврат ТабДокумент;
    
КонецФункции // Печать

Проблема в том, что Номенклатура, берущаяся из табличной части Товары имеет в себе только название, а мне нужно что бы выводилось ПолноеНаименование (с артикулом).
Подскажите как мне это сделать в рамках данного модуля?

Модуль не мой, так что отвечать за то, как он написан я не могу.

ЗЫ: Пытался сделать свой модуль на основе обычной ВПФ Заказ покупателя, но никак не смог подцепить туда вывод склада.

Пол дня убил на это, думал по быстрому получится.
1 fishb1
 
19.05.15
16:13
Думаю, что где-то в районе .0(1,2,3...) 41-ой строки надо написать вместо:
СекцияСтрока.Параметры.Номенклатура =
СсылкаНаОбъект.Товары;
вот так:
СекцияСтрока.Параметры.Номенклатура =
СтрТаб.Номенклатура.ПолноеНаименование;

И поставить эту строчку после строки:
ЗаполнитьЗначенияСвойств(СекцияСтрока.Параметры,СтрТаб);
2 Serg_1960
 
19.05.15
16:19
Угу. Типа так:

ЗаполнитьЗначенияСвойств(СекцияСтрока.Параметры,СтрТаб);
СекцияСтрока.Параметры.Номенклатура = СокрЛП(СтрТаб.Номенклатура.ПолноеНаименование) + " (" + СокрЛП(СтрТаб.Номенклатура.Артикул) + ")";
3 sotnikov
 
19.05.15
17:15
(1) Не удалось сформировать внешнюю печатную форму!
Поле объекта не обнаружено (ПолноеНаименование)
4 sotnikov
 
19.05.15
17:23
(3) То что нужно. Спасибо.
5 sotnikov
 
19.05.15
18:04
Кстати, может быть в догонку подскажете еще как организовать сортировку вывода по Артикулу?