|
v8: Йеллоупукки-йеллоупукки, переставь нам прямо руки. Ø (XLife 03.02.2012 12:01) | ☑ | ||
---|---|---|---|---|
0
tytti
03.02.12
✎
12:00
|
Внешняя печатная форма.
Выходит ошибка: "При печати Реализация товаров 0000000002 от 03.02.2012 9:48:42 обнаружены ошибки : Обработчик печатной формы ТоварныйЧек (внешняя): {Справочник.ВнешниеПечатныеФормы.МодульОбъекта(100)}: Метод объекта не обнаружен (Печать)" Что я сделала неправильно? //Печать Товарного чека Функция Печать() Экспорт ТабДокумент = Новый ТабличныйДокумент; Табдокумент.ИмяПараметровПечати = "Параметры_Печати_Товарный_Чек"; Макет = ПолучитьМакет("ТоварныйЧек"); Запрос = Новый Запрос; Запрос.УстановитьПараметр("ТекущийДокумент", СсылкаНаОбъект); //Запрос.УстановитьПараметр("Дата", СсылкаНаОбъект.Дата); запрос.Текст = "ВЫБРАТЬ | РеализацияТоваровТовары.Номенклатура, | РеализацияТоваровТовары.Количество, | РеализацияТоваровТовары.ЕдиницаИзмерения, | РеализацияТоваровТовары.Цена, | РеализацияТоваровТовары.Сумма, | РеализацияТоваровТовары.ПроцентСкидки, | РеализацияТоваровТовары.СуммаСкидки, | РеализацияТоваровТовары.СтавкаНДС, | РеализацияТоваровТовары.СуммаНДС, | РеализацияТоваровТовары.ХарактеристикаНоменклатуры, | РеализацияТоваровТовары.СуммаВсего, |ИЗ | Документ.РеализацияТоваров.Товары КАК РеализацияТоваров |ГДЕ | РеализацияТоваров.Ссылка = &ТекущийДокумент"; Выборка = Запрос.Выполнить().Выбрать(); дата = ссылкаНаОбъект.Дата; ВалютаДокумента = ссылкаНаОбъект.ВалютаДокумента; Организация = ссылкаНаОбъект.Организация; Контрагент = ссылкаНаОбъект.контрагент; подразделениеКомпании = ссылкаНаОбъект.ПодразделениеКомпании; складКомпании = ссылкаНаОбъект.складКомпании; //для начала настроим макет ОбластьШапкаТаблицы = дкПривестиМакетПечатнойФормы(СсылкаНаОбъект,Макет); //вывод заголовка документа ОбластьМакета = Макет.ПолучитьОбласть("Заголовок"); ОбластьМакета.Параметры.Заполнить(СсылкаНаОбъект); ТекстЗаголовка = "Товарный чек " +" № "+дкПолучитьНомерДляПечати(СсылкаНаОбъект)+" от "+Формат(Дата,"ДФ=dd.MM.yyyy"); //ТекстЗаголовка = дкПолучитьПредставление(СсылкаНаОбъект); ОбластьМакета.Параметры.ТекстЗаголовка = ТекстЗаголовка; Если НЕ обЗначениеНеЗаполнено(ПодразделениеКомпании) И НЕ обЗначениеНеЗаполнено(ПодразделениеКомпании.КПП) Тогда СтрокаПредставления = спПолучитьПредставление(Организация); ОбластьМакета.Параметры.ПредставлениеПоставщика = СтрЗаменить(СтрокаПредставления, Организация.КПП, ПодразделениеКомпании.КПП); Иначе ОбластьМакета.Параметры.ПредставлениеПоставщика = спПолучитьПредставление(Организация); КонецЕсли; ОбластьМакета.Параметры.ПредставлениеПокупателя = спПолучитьПредставление(Контрагент); ОбластьМакета.Параметры.ПредставлениеСклада = спПолучитьНаименование(СкладКомпании); //вывод свойств СтрокаСвойств = дкПолучитьСтрокуСвойствДокумента(СсылкаНаОбъект); ОбластьМакета.Параметры.СтрокаСвойств = СтрокаСвойств; ТабДокумент.Вывести(ОбластьМакета); НомерСтраницы = 2; НомерСтраницыПред = НомерСтраницы; // ОбластьШапкаТаблицы.Параметры.Товар = "Товар"; //теперь выводим шапку ТабДокумент.Вывести(ОбластьШапкаТаблицы); //готовим области строки ОбластьМакета = Макет.ПолучитьОбласть("Строка"); ОбластьМакетаИтогоПоСтранице = Макет.ПолучитьОбласть("ИтогоПоСтранице"); СтруктураИтоговПоСтранице = Новый Структура("ВалютаДокумента,СуммаСкидки,СуммаНДС,СуммаВсего",ВалютаДокумента,0,0,0); //заполним параметры шапки таблицы для следующего листа ОбластьШапкаТаблицы.Параметры.ТекстЗаголовка = ТекстЗаголовка; ОбластьШапкаТаблицы.Параметры.НомерСтраницы = "Страница: " + НомерСтраницы; ОбластьПодвал = Макет.ПолучитьОбласть("Подвал"); //перебор строк ВыборкаТабличнойЧасти = СсылкаНаОбъект.Товары; Для каждого СтрокаТабличнойЧасти Из ВыборкаТабличнойЧасти Цикл //заполняем данные строки СтруктураСтроки = дкПолучитьПредставлениеДанныхТоварнойСтроки(СтрокаТабличнойЧасти,СсылкаНаОбъект); ОбластьМакета.Параметры.Заполнить(СтруктураСтроки); //доп. области мсвДопОбластиПодвала = Неопределено; Если ВыборкаТабличнойЧасти.Индекс(СтрокаТабличнойЧасти) = ВыборкаТабличнойЧасти.Количество()-1 Тогда мсвДопОбластиПодвала = Новый Массив; мсвДопОбластиПодвала.Добавить(ОбластьПодвал); КонецЕсли; //выводим строку, делая проверку попадания на лист НомерСтраницы = дкВывестиГоризонтальнуюОбласть(ТабДокумент, ОбластьМакета, ОбластьШапкаТаблицы, ОбластьМакетаИтогоПоСтранице, НомерСтраницы, СтруктураИтоговПоСтранице, СсылкаНаОбъект, мсвДопОбластиПодвала); //инициализация итогов по странице Если НомерСтраницы <> НомерСтраницыПред Тогда СтруктураИтоговПоСтранице = Новый Структура("ВалютаДокумента,СуммаСкидки,СуммаНДС,СуммаВсего",ВалютаДокумента,0,0,0); НомерСтраницыПред = НомерСтраницы; ОбластьШапкаТаблицы.Параметры.НомерСтраницы = "Страница: " + НомерСтраницы; КонецЕсли; //добавляем итоги дкДобавитьИтогиПоСтранице(СтрокаТабличнойЧасти,СтруктураИтоговПоСтранице); КонецЦикла; //выводим последний подвал, если страниц больше единицы Если НомерСтраницы > 2 Тогда дкВывестиИтогиПоСтранице(ТабДокумент,ОбластьМакетаИтогоПоСтранице,СтруктураИтоговПоСтранице,СсылкаНаОбъект); КонецЕсли; //итоги ОбластьПодвал.Параметры.ВалютаДокумента = ВалютаДокумента; СуммаВсего = ВыборкаТабличнойЧасти.Итог("СуммаВсего"); ОбластьПодвал.Параметры.СуммаВсего = суммаВсего; НДСВсего = ВыборкаТабличнойЧасти.Итог("СуммаНДС"); ОбластьПодвал.Параметры.НДСВсего =НДСВсего; Если ВыборкаТабличнойЧасти.Итог("СуммаСкидки")>0 ИЛИ ВыборкаТабличнойЧасти.Итог("СуммаСкидкиСтроки") > 0 Тогда СкидкаВсего = ВыборкаТабличнойЧасти.Итог("СуммаСкидки"); Попытка СкидкаВсего = СкидкаВсего + ВыборкаТабличнойЧасти.Итог("СуммаСкидкиСтроки"); Исключение КонецПопытки; ОбластьПодвал.Параметры.СкидкаВсего = СкидкаВсего; КонецЕсли; ОбластьПодвал.Параметры.СуммаПрописью = "Всего наименований "+ВыборкаТабличнойЧасти.Количество()+" на сумму " + обЧислоПрописью(СуммаВсего,СсылкаНаОбъект.ВалютаДокумента); // Выводим представления и расшифровки подписей Отпустил = дкОтветственноеЛицо(СсылкаНаОбъект,"Отпустил"); Отпустил.ОтпустилПредставление = ?(обЗначениеНеЗаполнено(Отпустил.Отпустил),"","/ "+ Отпустил.ОтпустилПредставление); ОбластьПодвал.Параметры.Заполнить(Отпустил); Получил = дкОтветственноеЛицо(СсылкаНаОбъект,"Получил"); Получил.ПолучилПредставление = ?(обЗначениеНеЗаполнено(Получил.Получил),"","/ "+ Получил.ПолучилПредставление); ОбластьПодвал.Параметры.Заполнить(Получил); НомерСтраницы = дкВывестиГоризонтальнуюОбласть(ТабДокумент, ОбластьПодвал, , , НомерСтраницы,,СсылкаНаОбъект); Возврат ТабДокумент; КонецФункции |
|||
1
Mnemonic1C
03.02.12
✎
12:00
|
И не жаль кода?
|
|||
2
XLife
03.02.12
✎
12:01
|
родился...
|
|||
3
H A D G E H O G s
03.02.12
✎
12:01
|
(0) Перепишите форму под Тонкого Клиента
|
|||
4
H A D G E H O G s
03.02.12
✎
12:02
|
А по факту там в начале модуля стоит
#Если Клиент Тогда |
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |