Всем привет, помогите новичку..
Есть УФ, внешняя обработка, в ней форма (ТЗ+ текстовое поле с сылкой на документ)+ макет, пытаюсь вывести все на печать. (в макете секция Шапка с ячейкой Заполнение-Параметр, а параметр текстовое поле.)
Выдает ошибку Недопустимое значение параметра 1, РеквизитФормыВЗначение должен иметь объект, непойму у меня он какой?? Подскажите как исправить??
Даже если написать РеквизитФормыВЗначение("Объект"), тоже ошибка.
Есть УФ, внешняя обработка, в ней форма (ТЗ+ текстовое поле с сылкой на документ)+ макет, пытаюсь вывести все на печать. (в макете секция Шапка с ячейкой Заполнение-Параметр, а параметр текстовое поле.)
&НаСервере
Функция ПолучитьМакетНаСервере()
Возврат РеквизитФормыВЗначение("Макет").ПолучитьМакет("Макет");
КонецФункции
&НаКлиенте
Процедура Печать(Команда)
//ПечатьНаСервере();
ТабличныйДокумент = Новый ТабличныйДокумент; //Создаем табличный документ
Макет = ПолучитьМакетНаСервере();
Шапка = Макет.ПолучитьОбласть("Шапка");
ТабличныйДокумент.Вывести(Шапка);
ТабличныйДокумент.Показать(Строка(ТО.Ссылка));
КонецПроцедуры
ПоказатьВыдает ошибку Недопустимое значение параметра 1, РеквизитФормыВЗначение должен иметь объект, непойму у меня он какой?? Подскажите как исправить??
Даже если написать РеквизитФормыВЗначение("Объект"), тоже ошибка.
По теме из базы знаний
- Как я создал внешнюю печатную форму из встроенной
- Учим обработку выгрузки налоговой накладной в XML использовать внешнюю печатную форму.
- Создание внешних печатных форм под управляемым приложением с нуля
- Пользовательские макеты для внешних печатных форм в УПП 1.3
- Счет-фактура 981 для БП 3.0 со своим макетом
Найденные решения
(11) Прямо:
Через временное хранилище:
&НаКлиенте
Процедура Печать(Команда)
ТабличныйДокумент = СформироватьТабличныйДокументНаСервере();
ТабличныйДокумент.Показать()
КонецПроцедуры
&НаСервереБезКонтекста
Функция СформироватьТабличныйДокументНаСервере()
ТабличныйДокумент = Новый ТабличныйДокумент;
Макет = ПолучитьМакетНаСервере();
Шапка = Макет.ПолучитьОбласть("Шапка");
ТабличныйДокумент.Вывести(Шапка);
Возврат ТабличныйДокумент
КонецФункции
ПоказатьЧерез временное хранилище:
&НаКлиенте
Процедура Печать(Команда)
АдресТабДокаВХранилище = СформироватьТабличныйДокументНаСервере();
ТабличныйДокумент = ПолучитьИзВременногоХранилища(АдресТабДокаВХранилище);
ТабличныйДокумент.Показать()
КонецПроцедуры
&НаСервереБезКонтекста
Функция СформироватьТабличныйДокументНаСервере()
ТабличныйДокумент = Новый ТабличныйДокумент;
Макет = ПолучитьМакетНаСервере();
Шапка = Макет.ПолучитьОбласть("Шапка");
ТабличныйДокумент.Вывести(Шапка);
АдресТабДокаВХранилище = ПоместитьВоВременноеХранилище(ТабличныйДокумент);
Возврат АдресТабДокаВХранилище
КонецФункции
ПоказатьОстальные ответы
Подписаться на ответы
Инфостарт бот
Сортировка:
Древо развёрнутое
Свернуть все
попробуй так:
&НаСервере
Функция ПолучитьМакетНаСервере()
ТабличныйДокумент = Новый ТабличныйДокумент;
Макет = ПолучитьМакет("Макет");
Шапка = Макет.ПолучитьОбласть("Шапка");
ТабличныйДокумент.Вывести(Шапка);
возврат ТабличныйДокумент;
КонецФункции
&НаКлиенте
Процедура Печать(Команда)
ТабличныйДокумент = ПолучитьМакетНаСервере();
ТабличныйДокумент.Показать(Строка(ТО.Ссылка));
КонецПроцедуры
Показать
(2) Почти верно.
&НаСервере
Функция ПолучитьМакетНаСервере()
ТабличныйДокумент = Новый ТабличныйДокумент;
Макет = РеквизитФормыВЗначение("Объект").ПолучитьМакет("Макет");
Шапка = Макет.ПолучитьОбласть("Шапка");
ТабличныйДокумент.Вывести(Шапка);
возврат ТабличныйДокумент;
КонецФункции
&НаСервере
Функция ПолучитьМакетНаСервере()
Возврат РеквизитФормыВЗначение("Объект").ПолучитьМакет("Макет");
КонецФункции
Должно быть так. Вместо РеквизитФормыВЗначение("Макет") надо РеквизитФормыВЗначение("Объект")
Функция ПолучитьМакетНаСервере()
Возврат РеквизитФормыВЗначение("Объект").ПолучитьМакет("Макет");
КонецФункции
Должно быть так. Вместо РеквизитФормыВЗначение("Макет") надо РеквизитФормыВЗначение("Объект")
(4) Спасибо - это помогло, макет получает, но еще не печатает на клиенте, перенес все на сервер
&НаСервере
Процедура ПечатьНаСервере()
ТабличныйДокумент = Новый ТабличныйДокумент; //Создаем табличный документ
Макет = ПолучитьМакетНаСервере();
Шапка = Макет.ПолучитьОбласть("Шапка");
ТабличныйДокумент.Вывести(Шапка);
ТабличныйДокумент.Показать(Строка(ТО.Ссылка)); // сдесь опять ошибка
КонецПроцедуры
Показать
(11) Прямо:
Через временное хранилище:
&НаКлиенте
Процедура Печать(Команда)
ТабличныйДокумент = СформироватьТабличныйДокументНаСервере();
ТабличныйДокумент.Показать()
КонецПроцедуры
&НаСервереБезКонтекста
Функция СформироватьТабличныйДокументНаСервере()
ТабличныйДокумент = Новый ТабличныйДокумент;
Макет = ПолучитьМакетНаСервере();
Шапка = Макет.ПолучитьОбласть("Шапка");
ТабличныйДокумент.Вывести(Шапка);
Возврат ТабличныйДокумент
КонецФункции
ПоказатьЧерез временное хранилище:
&НаКлиенте
Процедура Печать(Команда)
АдресТабДокаВХранилище = СформироватьТабличныйДокументНаСервере();
ТабличныйДокумент = ПолучитьИзВременногоХранилища(АдресТабДокаВХранилище);
ТабличныйДокумент.Показать()
КонецПроцедуры
&НаСервереБезКонтекста
Функция СформироватьТабличныйДокументНаСервере()
ТабличныйДокумент = Новый ТабличныйДокумент;
Макет = ПолучитьМакетНаСервере();
Шапка = Макет.ПолучитьОбласть("Шапка");
ТабличныйДокумент.Вывести(Шапка);
АдресТабДокаВХранилище = ПоместитьВоВременноеХранилище(ТабличныйДокумент);
Возврат АдресТабДокаВХранилище
КонецФункции
Показать
Для получения уведомлений об ответах подключите телеграм бот:
Инфостарт бот