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

Ошибка, несоответствие типов

Автор Igmok, 10 апр 2017, 12:16

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

Igmok

Добавляю новый макет для печати, ниже части кода с которыми происходит ошибка:

                Макет = ПолучитьМакет("Доп_ДКП_Новый");
                ОбластьМакета = Макет.ПолучитьОбласть("Шапка");


                ТабДокумент.Вывести(ОбластьМакета);

                На стороне пользователя, при попытке печати формы появляется ошибка:

Цитировать{Документ.РеализацияАвтомобилей.Форма.ФормаДокумента.Форма(1868)}: Ошибка при вызове метода контекста (Вывести)
      ТабДокумент.Вывести(ОбластьМакета);
по причине:
Несоответствие типов (параметр номер '1')

"Доп_ДКП_Новый" - макет Табличного типа.

Что может быть не так?


has

В отладчике ОбластьМакета какой тип имеет?

Igmok

Цитата: has от 10 апр 2017, 12:45
В отладчике ОбластьМакета какой тип имеет?
Не смог запустить отладчик по шагово, такая иде для меня "ново". Можно ли узнать тип данных по другому?
Да, верно, эта переменная инициализирована, при присвоении. Какой должен быть у неё тип данных?

has

Цитата: Igmok от 10 апр 2017, 12:56Можно ли узнать тип данных по другому?
Ну как вариант
Сообщить(ТипЗнч(ОбластьМакета));
Цитата: Igmok от 10 апр 2017, 12:56Какой должен быть у неё тип данных?
Табличный документ
Переменная больше нигде не используется? Область "Шапка" в самом макете есть надеюсь?


Igmok

Цитата: has от 10 апр 2017, 13:04Сообщить(ТипЗнч(ОбластьМакета));
Не определено.

Цитата: has от 10 апр 2017, 13:04Переменная больше нигде не используется?
ОбластьМакета.Параметры.сПаспорт = ВыборкаП.Серия;
ОбластьМакета.Параметры.нПаспорт = ВыборкаП.Номер;
ОбластьМакета.Параметры.ДатаПаспорт = Формат(ВыборкаП.ДатаВыдачи,"ДФ=dd.MM.yyyy") ;
ОбластьМакета.Параметры.ВыдалПаспорт = ВыборкаП.КемВыдан;
ОбластьМакета.Параметры.КодПодразделенияПаспорт = ВыборкаП.НомерБланка;

Используется на протяжении всей функции для сбора данных из формы.
И завершается:
Сообщить(ТипЗнч(ОбластьМакета));
ТабДокумент.Вывести(ОбластьМакета);
//ТабДокумент.ВывестиГоризонтальныйРазделительСтраниц();
Возврат ТабДокумент; 
КонецФункции

ТабДокумент в параметрах функции. Инициализирован в процедуре.

Цитата: has от 10 апр 2017, 13:04Область "Шапка" в самом макете есть надеюсь?
https://yadi.sk/i/HMcizfSK3GpHyB

Добавлено: 10 апр 2017, 13:50


Я инициализировал ОбластьМакета, типом ТабличныйДокумент.

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

alex0402

Цитата: Igmok от 10 апр 2017, 12:16ТабДокумент.Вывести(ОбластьМакета);
это не на стороне клиента случайно?
&НаКлиенте
Спасибо за Сказать спасибо

Igmok

Цитата: alex0402 от 10 апр 2017, 13:56
Цитата: Igmok от 10 апр 2017, 12:16ТабДокумент.Вывести(ОбластьМакета);
это не на стороне клиента случайно?
&НаКлиенте
Продукт не много другой "на платформе 1с предприятие", думаю -что сервер
// Модуль документа на стороне конфигурации

alex0402

Цитата: Igmok от 10 апр 2017, 12:16Что может быть не так?

вроде все так, разве что

между строками

ОбластьМакета = Макет.ПолучитьОбласть("Шапка");
И
ТабДокумент.Вывести(ОбластьМакета);
ОбластьМакета присваивается другое значение.
попробуйте:

Сообщить(ОбластьМакета);
ТабДокумент.Вывести(ОбластьМакета);
Спасибо за Сказать спасибо

Igmok

Цитата: alex0402 от 10 апр 2017, 14:13
Цитата: Igmok от 10 апр 2017, 12:16Что может быть не так?

вроде все так, разве что

между строками

ОбластьМакета = Макет.ПолучитьОбласть("Шапка");
И
ТабДокумент.Вывести(ОбластьМакета);
ОбластьМакета присваивается другое значение.
попробуйте:

Сообщить(ОбластьМакета);
ТабДокумент.Вывести(ОбластьМакета);


Да пустой макет у меня отображается. Спасибо, дело в коде и заполнение параметров.

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

Рейтинг@Mail.ru

Поиск