helpf.pro
Регистрация

v8: Не выводится заголовок и поле

MaxVL
03.07.2012 02:48Прочитано: 5656
Здравствуйте! Помогите, пожалуйста, что не так. Выдает ошибку:

{Отчет.ПКО.Форма.ФормаОтчета.Форма(41)}: Ошибка при вызове метода контекста (Вывести)
ТабДок.Вывести(Заголовок);
по причине:
Несоответствие типов (параметр номер '1')

Код 1C v 8.2 УП
 Процедура Сформировать(ТабДок) Экспорт
ЭлементыФормы.Таб.Очистить();
Запрос = Новый Запрос;
Запрос.Текст ="ВЫБРАТЬ
   | НД_ПКО.Контрагент КАК Контрагент,
   | НД_ПКО.Подразделение КАК Подразделение,
   | НД_ПКО.СуммаДокумента КАК СуммаДокумента
   | ИЗ
   | Документ.НД_ПКО КАК НД_ПКО
   | ГДЕ НД_ПКО.Ссылка.Проведен
   | УПОРЯДОЧИТЬ ПО Подразделение,СуммаДокумента
   | ИТОГИ СУММА(СуммаДокумента) ПО Подразделение";   
	Результат = Запрос.Выполнить().Выгрузить();
	выборка = Запрос.Выполнить().Выбрать();
	Таб = Новый ТабличныйДокумент;
	ТекМакет = ПолучитьМакет("Макет");
	Заголовок = ТекМакет.ПолучитьОбласть("Заголовок");
	Шапка = ТекМакет.ПолучитьОбласть("Шапка");
	Строки = ТекМакет.ПолучитьОбласть("Строки");
	Итого = ТекМакет.ПолучитьОбласть ("Итого");
	СуммаДокументаИтого = 0;
	выборка.следующий();
	ТабДок.Вывести(Заголовок);
	ТабДок.Вывести(Шапка);
				  					  	  
	Для Каждого Строка Из Результат Цикл
	Строки.Параметры.Заполнить(Строка);
	Если ЗначениеЗаполнено(Строка.СуммаДокумента) Тогда 
        СуммаДокументаИтого = Строка.СуммаДокумента + СуммаДокументаИтого;
		 КонецЕсли;
		
	Строки.Параметры.Контрагент = Строка.Контрагент;
	Строки.Параметры.Подразделение = Строка.Подразделение;
	Строки.Параметры.СуммаДокумента = СуммаДокумента;
	ТабДок.Вывести(Строки);
	КонецЦикла;
			   
 
	Итого.Параметры.СуммаДокументаИтого = СуммаДокументаИтого;
	ТабДок.Вывести(Итого);			 

Процедура КнопкаСформироватьНажатие(Кнопка) Экспорт
	      Сформировать(ЭлементыФормы.Таб);
	   КонецПроцедуры   


Макет отчета:
title

Еще вылезает одна ошибка:

{Отчет.ПКО.Форма.ФормаОтчета.Форма(50)}: Поле объекта не обнаружено (Контрагент)
Строки.Параметры.Контрагент = Строки.Контрагент;
Изменено 03.07.12 08:26:39
Yandex
Возможно, вас также заинтересует
Реклама на портале
theelectric
03.07.2012 12:53Ответ № 1
(0) MaxVL, смотри... Ты пытаешься создать переменные для областей с аналогичными именами. Попробуй все-таки их назвать "ОбластьЗаголовок", чтобы это выглядело примерно так...
Код 1C v 8.2 УП
 ТекМакет = ПолучитьМакет("Макет");
	ОблЗаголовок = ТекМакет.ПолучитьОбласть("Заголовок");
	ОблШапка = ТекМакет.ПолучитьОбласть("Шапка");
	ОблСтроки = ТекМакет.ПолучитьОбласть("Строки");
	ОблИтого = ТекМакет.ПолучитьОбласть ("Итого");
	СуммаДокументаИтого = 0;
	выборка.следующий();
	ТабДок.Вывести(ОблЗаголовок);
	ТабДок.Вывести(ОблШапка);   
MaxVL
04.07.2012 02:34Ответ № 2
theelectric, спасибо!
Подсказка: Щелникни по Имени пользователя напротив ответа, и тем самым покажешь, что сообщение адресовано ему.
Вы не можете отправить комментарий анонимно, пожалуйста войдите или зарегистрируйтесь.
Загрузка... Дождитесь завершения!