Внешняя печатная форма
Показывать по
сообщений
- 1
- 2
24.03.2011
11:22
#1
"Добрый день! Создаю внешнюю печатную форму Заявка на расходование средств.<br>Проверяю модуль на синтаксические ошибки говорит что нет ошибок<br><br>Функция ПечатьЗаявка() Экспорт<br> <br> <br> СсылкаНаОбъект.РасчетыСКонтрагентами = СсылкаНаОбъект.ВидОперации;<br> СсылкаНаОбъект.РасчетыСПодотчетником = СсылкаНаОбъект.ВидОперации;<br> <br> ТабДокумент = Новый ТабличныйДокумент;<br> ТабДокумент.ИмяПараметровПечати = "ПАРАМЕТРЫ_ПЕЧАТИ_ЗаявкаНаРасходованиеСредств";<br> <br> Макет = ПолучитьМакет("Заявка");<br> Обл = Макет.ПолучитьОбласть("Шапка");<br> Обл.Параметры.ЗаголовокЗаявки=""""+ЭтотОбъект+СсылкаНаОбъект.Символы.ПС+СсылкаНаОбъект.ВидОперации;<br><br> Обл.Параметры.Заполнить(СсылкаНаОбъект);<br> ТабДокумент.Вывести(Обл);<br><br> <br> Если СсылкаНаОбъект.РасчетыСПодотчетником тогда<br> ОбластьСтрока = Макет.ПолучитьОбласть("ТаблицаПодотчетник");<br> ОбластьСтрока.Параметры.ДолгПодотчетника =СсылкаНаОбъект.Ссылка;<br> Иначе<br> ОбластьСтрока = Макет.ПолучитьОбласть("ТаблицаКонтрагент");<br> КонецЕсли;<br> ОбластьСтрока.Параметры.Заполнить(ЭтотОбъект);<br> <br> <br> <br><br> ТабДокумент.Вывести(ОбластьСтрока);<br> <br> <br> Обл = Макет.ПолучитьОбласть("Подвал");<br> Обл.Параметры.Заполнить(СсылкаНаОбъект);<br> Обл.Параметры.РуководительЦФО = СсылкаНаОбъект.РуководительЦФО;<br> <br> Запрос = Новый Запрос;<br> Запрос.Текст = "ВЫБРАТЬ<br> | ОтветственныеЛицаОрганизацииСрезПоследних.ОтветственноеЛицо,<br> | ОтветственныеЛицаОрганизацииСрезПоследних.ФизическоеЛицо<br> |ИЗ<br> | РегистрСведений.ОтветственныеЛицаОрганизации.СрезПоследних(&Дата, СтруктурнаяЕдиница = &Организация) КАК ОтветственныеЛицаОрганизацииСрезПоследних";<br> Запрос.УстановитьПараметр("Дата", СсылкаНаОбъект);<br> Запрос.УстановитьПараметр("Организация",СсылкаНаОбъект);<br> Выборка = Запрос.Выполнить().Выбрать();<br> Пока Выборка.Следующий()Цикл<br> Если Выборка.ОтветственноеЛицо = СсылкаНаОбъект.ОтветственныеЛицаОрганизации.ГлавныйБухгалтер Тогда<br> Обл.Параметры.ГлБухгалтер = СсылкаНаОбъект.Выборка.ФизическоеЛицо;<br> ИначеЕсли Выборка.ОтветственноеЛицо = СсылкаНаОбъект.ОтветственныеЛицаОрганизации.БюджетныйКонтролер Тогда<br> Обл.Параметры.БюджетныйКонтролер = СсылкаНаОбъект.Выборка.ФизическоеЛицо;<br> ИначеЕсли Выборка.ОтветственноеЛицо = СсылкаНаОбъект.ОтветственныеЛицаОрганизации.ФинДиректор Тогда<br> Обл.Параметры.ФинДиректор =СсылкаНаОбъект.Выборка.ФизическоеЛицо;<br> КонецЕсли;<br> КонецЦикла;<br> <br> <br> ТабДокумент.Вывести(Обл);<br> <br> Возврат ТабДокумент;<br>КонецФункции<br><br><br>но когда тестирую выдает ошибку<br> <br>Ошибка при вызове метода контекста (ПолучитьФорму): Недопустимое значение параметра (параметр номер '1')<br>Что я не так делаю?"
24.03.2011
12:10
#3
"Да!<br>Функция Печать() Экспорт<br> <br>ТабДокумент = ПечатьЗаявка();<br> <br>Возврат ТабДокумент;<br> <br>КонецФункции"
24.03.2011
12:19
#4
"А я так делал, в этом случае оно вписывается в задуманную концепцию внешних печатных форм типовой конфигурации (в моем случае было Управление торговлей, редакция 11.0 (11.0.5.4)):<br> <br><pre>Функция СведенияОВнешнейОбработке() Экспорт ПараметрыРегистрации = Новый Структура; МассивНазначений = Новый Массив; ПараметрыРегистрации.Вставить("Вид", "ПечатнаяФорма"); МассивНазначений.Добавить("Документ.ЗаказКлиента"); ПараметрыРегистрации.Вставить("Назначение", МассивНазначений); ПараметрыРегистрации.Вставить("Наименование", "Заказ клиента с выводом итога по таблице товаров с учетом НДС при ситуации 'Цена без НДС'"); ПараметрыРегистрации.Вставить("Версия", "1.0"); ПараметрыРегистрации.Вставить("БезопасныйРежим", Истина); ПараметрыРегистрации.Вставить("Информация", "Версия от 11.02.2011 г."); ТаблицаКоманд = ПолучитьТаблицуКоманд(); ДобавитьКоманду(ТаблицаКоманд, "Заказ клиента с итогом по таблице при 'Цена без НДС'", "СчетЗаказ", "ВызовСерверногоМетода", Истина, "ПечатьMXL"); ПараметрыРегистрации.Вставить("Команды", ТаблицаКоманд); Возврат ПараметрыРегистрации;КонецФункции<br>Функция ПолучитьТаблицуКоманд() Команды = Новый ТаблицаЗначений; Команды.Колонки.Добавить("Представление", Новый ОписаниеТипов("Строка")); Команды.Колонки.Добавить("Идентификатор", Новый ОписаниеТипов("Строка")); Команды.Колонки.Добавить("Использование", Новый ОписаниеТипов("Строка")); Команды.Колонки.Добавить("ПоказыватьОповещение", Новый ОписаниеТипов("Булево")); Команды.Колонки.Добавить("Модификатор", Новый ОписаниеТипов("Строка")); Возврат Команды;КонецФункции<br>Процедура ДобавитьКоманду(ТаблицаКоманд, Представление, Идентификатор, Использование, ПоказыватьОповещение = Ложь, Модификатор = """") НоваяКоманда = ТаблицаКоманд.Добавить(); НоваяКоманда.Представление = Представление; НоваяКоманда.Идентификатор = Идентификатор; НоваяКоманда.Использование = Использование; НоваяКоманда.ПоказыватьОповещение = ПоказыватьОповещение; НоваяКоманда.Модификатор = Модификатор;КонецПроцедуры// Сформировать печатные формы объектов//// ВХОДЯЩИЕ:// ИменаМакетов - Строка - Имена макетов, перечисленные через запятую// МассивОбъектов - Массив - Массив ссылок на объекты которые нужно распечатать// ПараметрыПечати - Структура - Структура дополнительных параметров печати//// ИСХОДЯЩИЕ:// КоллекцияПечатныхФорм - Таблица значений - Сформированные табличные документы// ПараметрыВывода - Структура - Параметры сформированных табличных документов//Процедура Печать(МассивОбъектов, КоллекцияПечатныхФорм, ОбъектыПечати, ПараметрыВывода) Экспорт Если УправлениеПечатью.НужноПечататьМакет(КоллекцияПечатныхФорм, "СчетЗаказ") Тогда УправлениеПечатью.ВывестиТабличныйДокументВКоллекцию(КоллекцияПечатныхФорм, "СчетЗаказ", "Заказ клиента", СформироватьПечатнуюФорму(МассивОбъектов, ОбъектыПечати)); КонецЕсли; КонецПроцедуры // Печать() Функция СформироватьПечатнуюФорму(МассивОбъектов, ОбъектыПечати) УстановитьПривилегированныйРежим(Истина); ТабличныйДокумент = Новый ТабличныйДокумент;.... ТабличныйДокумент.АвтоМасштаб = Истина; Если ПривилегированныйРежим() Тогда УстановитьПривилегированныйРежим(Ложь); КонецЕсли; Возврат ТабличныйДокумент; КонецФункции // ПечатнаяФорма() </pre>"
24.03.2011
12:22
#5
А что подразумевалось под<br>> но когда тестирую<br>Вы подключили в сервис-дополнительные внешние отчеты...-Печатные формы, а потом из документа нажали печать и получили ошибку?
24.03.2011
12:24
#7
> А что подразумевалось под<br>> > но когда тестирую<br>> Вы подключили в сервис-дополнительные внешние отчеты...-Печатные формы, а потом из документа нажали печать и получили ошибку?<br>Да!
24.03.2011
12:27
#8
Приведите полный текст ошибки - там еще должна быть ссылка на строку, где произошла ошибка.<br>У вас Клиент-Серверный вариант?<br>Включите в конфигураторе (в режиме отладки) остановку по ошибке и посмотрите что за строка вызывает ошибку, и что за параметр передается.
24.03.2011
12:28
#9
Ничего себе не типовая
<br>С изменениями наверно, но внешние формы работают на ура.

24.03.2011
13:37
#10
> Приведите полный текст ошибки - там еще должна быть ссылка на строку, где произошла ошибка.<br>> У вас Клиент-Серверный вариант?<br>> Включите в конфигураторе (в режиме отладки) остановку по ошибке и посмотрите что за строка вызывает ошибку, и что за параметр передается.<br> <br> Вот именно нет не какой строки. Если была бы можно было понять что я не так делаю. А он только и пишет<br>"Не удалось сформировать внешнюю печатную форму<br>Ошибка при вызове метода контекста (ПолучитьФорму): Недопустимое значение параметра (параметр номер '1')"
- 1
- 2
Субконто с типом "сотрудники" в Бюджетной Бухгалтерии 1 на платформе 8.21С 8.2 Бухгалтерия бюджетного учреждения
Читают тему
(гостей: 1)