внешняя печатная форма
21.11.2009
11:15
#1
"Добрый день
Во внешней печатной форме создана форма ПКО, в ней создана таблица Услуги (соответствено в Табличные части тоже есть Услуги с рекизитами). Пытаюсь сделать выборку данных из этой таблицы с последующей записью в макет. Запрос следующий:
ОбластьСтроки = Макет.ПолучитьОбласть("Строка");
МВТ = Новый МенеджерВременныхТаблиц;
ЗапросУслуги=Новый Запрос;
Запрос.МенеджерВременныхТаблиц = МВТ;
ЗапросУслуги.Текст = "ВЫБРАТЬ *
|ПОМЕСТИТЬ ТаблицаПКО
|ИЗ
| &ВнешнийИсточник КАК Внешний"
;
Запрос.УстановитьПараметр("ВнешнийИсточник",Услуги);
ЗапросУслуги.Выполнить();
Запрос2 = Новый Запрос;
Запрос2.МенеджерВременныхТаблиц = МВТ;
Запрос2.Текст = "ВЫБРАТЬ
| ТаблицаПКО.НомерСтроки КАК НомерСтроки
| ТаблицаПКО.Номенклатура КАК Услуги
| ТаблицаПКО.Количество КАК Количество
| ТаблицаПКО.Цена КАК Цена
| ТаблицаПКО.Сумма КАК Сумма
| ИЗ ТаблицаПКО КАК Внешний";
ТабПКО = Запрос2.Выполнить().Выгрузить();
Для Каждого СтрокаТабличнойЧасти Из ТабПКО Цикл
НомерСтроки = 0;
НомерСтроки = НомерСтроки + 1;
ОбластьСтроки.Параметры.НомерСтроки = СтрокаТабличнойЧасти.НомерСтроки;
ОбластьСтроки.Параметры.Количество = СтрокаТабличнойЧасти.Количество;
ОбластьСтроки.Параметры.Цена = СтрокаТабличнойЧасти.Цена;
ТабДокумент.Вывести(ОбластьСтроки);
КонецЦикла;
при тестировании выдается сообщение с ошибкой
Не удалось сформировать внешнюю печатную форму!
Ошибка при вызове метода контекста (Выполнить): {(4, 5)}: Не задано значение параметра "ВнешнийИсточник"
<>>&ВнешнийИсточник КАК Внешний
"
Во внешней печатной форме создана форма ПКО, в ней создана таблица Услуги (соответствено в Табличные части тоже есть Услуги с рекизитами). Пытаюсь сделать выборку данных из этой таблицы с последующей записью в макет. Запрос следующий:
ОбластьСтроки = Макет.ПолучитьОбласть("Строка");
МВТ = Новый МенеджерВременныхТаблиц;
ЗапросУслуги=Новый Запрос;
Запрос.МенеджерВременныхТаблиц = МВТ;
ЗапросУслуги.Текст = "ВЫБРАТЬ *
|ПОМЕСТИТЬ ТаблицаПКО
|ИЗ
| &ВнешнийИсточник КАК Внешний"
;
Запрос.УстановитьПараметр("ВнешнийИсточник",Услуги);
ЗапросУслуги.Выполнить();
Запрос2 = Новый Запрос;
Запрос2.МенеджерВременныхТаблиц = МВТ;
Запрос2.Текст = "ВЫБРАТЬ
| ТаблицаПКО.НомерСтроки КАК НомерСтроки
| ТаблицаПКО.Номенклатура КАК Услуги
| ТаблицаПКО.Количество КАК Количество
| ТаблицаПКО.Цена КАК Цена
| ТаблицаПКО.Сумма КАК Сумма
| ИЗ ТаблицаПКО КАК Внешний";
ТабПКО = Запрос2.Выполнить().Выгрузить();
Для Каждого СтрокаТабличнойЧасти Из ТабПКО Цикл
НомерСтроки = 0;
НомерСтроки = НомерСтроки + 1;
ОбластьСтроки.Параметры.НомерСтроки = СтрокаТабличнойЧасти.НомерСтроки;
ОбластьСтроки.Параметры.Количество = СтрокаТабличнойЧасти.Количество;
ОбластьСтроки.Параметры.Цена = СтрокаТабличнойЧасти.Цена;
ТабДокумент.Вывести(ОбластьСтроки);
КонецЦикла;
при тестировании выдается сообщение с ошибкой
Не удалось сформировать внешнюю печатную форму!
Ошибка при вызове метода контекста (Выполнить): {(4, 5)}: Не задано значение параметра "ВнешнийИсточник"
<>>&ВнешнийИсточник КАК Внешний
"
21.11.2009
11:30
#2
"Насколько я понимаю в конструкции "Запрос.УстановитьПараметр("ВнешнийИсточник",Услуги);" УСЛУГИ должна иметь тип ТаблицаЗначений, а у Вас, похоже, это ТабличнаяЧасть документа."
21.11.2009
11:43
#4
"В книге простые примеры разработки (А.П.Габец, Д.И.Гончаров) приведен пример:
Запрос.УстановитьПараметр("ВнешнийИсточник",ЭлементыФормы.ТПРезультатЗапроса.Значение);
где ТПРезультатЗапроса - табличное поле, тип значения - таблица значений, но сказано, что
в качестве внешнего источника может использоваться таблица значений, результат запроса, табличная часть.
пробовал также (Запрос.УстановитьПараметр("ВнешнийИсточник",ЭлементыФормы.Услуги.Значение) но получил <>>ЭлементыФормы."
Запрос.УстановитьПараметр("ВнешнийИсточник",ЭлементыФормы.ТПРезультатЗапроса.Значение);
где ТПРезультатЗапроса - табличное поле, тип значения - таблица значений, но сказано, что
в качестве внешнего источника может использоваться таблица значений, результат запроса, табличная часть.
пробовал также (Запрос.УстановитьПараметр("ВнешнийИсточник",ЭлементыФормы.Услуги.Значение) но получил <>>ЭлементыФормы."
21.11.2009
11:57
#6
выдало ошибку:
Не удалось сформировать внешнюю печатную форму!
Поле объекта не обнаружено (Значение)
Не удалось сформировать внешнюю печатную форму!
Поле объекта не обнаружено (Значение)
21.11.2009
12:25
#7
"> МВТ = Новый МенеджерВременныхТаблиц;
> ЗапросУслуги=Новый Запрос;
> Запрос.МенеджерВременныхТаблиц = МВТ;
> ЗапросУслуги.Текст = "ВЫБРАТЬ *
Ничего странного не замечаете? ЗапросУслуги не равен Запрос!"
> ЗапросУслуги=Новый Запрос;
> Запрос.МенеджерВременныхТаблиц = МВТ;
> ЗапросУслуги.Текст = "ВЫБРАТЬ *
Ничего странного не замечаете? ЗапросУслуги не равен Запрос!"
21.11.2009
12:29
#8
Спасибо исправил, но ошибка прежняя
Не удалось сформировать внешнюю печатную форму!
Ошибка при вызове метода контекста (Выполнить): {(4, 5)}: Не задано значение параметра "ВнешнийИсточник"
<>>&ВнешнийИсточник КАК ВнешнийИсточник
Может в качестве внешнего источника указать название внешней печатной формы
и еще как обращатся к внешней обработке в запросе? К документу - Документ.РеализацияТоваровУслуг, а к обработке?
Не удалось сформировать внешнюю печатную форму!
Ошибка при вызове метода контекста (Выполнить): {(4, 5)}: Не задано значение параметра "ВнешнийИсточник"
<>>&ВнешнийИсточник КАК ВнешнийИсточник
Может в качестве внешнего источника указать название внешней печатной формы
и еще как обращатся к внешней обработке в запросе? К документу - Документ.РеализацияТоваровУслуг, а к обработке?
Читают тему
(гостей: 1)