табличная часть внешней обработки.
29.10.2008
11:14
#1
"Делаю внешнюю обработку с табличной частью, никак не могу полчить ссылку на внешнюю обработку для использования в запросе<br>Запрос.УстановитьПараметр("ТекущаяОбработка",ЭтотОбъект);<br>со словом "ссылка" тоже не катит<br>утомился весь, первая таки обработка"
29.10.2008
12:20
#2
"Что вы хотите передать в запрос?<br>Табличную часть? То есть вы хотите запросом сохдать временную таблицу?<br>Если вы запрос делаете из этой же обрботки, а табличная часть в этой же обработке, то<br>Запрос.УстановитьПараметр("ТекущаяОбработка", ТабличнаяЧасть.Выгрузить());<br>ТабличнаяЧасть - это название таличной части, как оно у вас лично задано в конфигураторе<br><br>И запрос у вас должен быть что-то типа<br><br>МВТ = Новый МенеджерВременныхТаблиц;<br>Запрос=Новый Запрос;<br>Запрос.МенеджерВременныхТаблиц = МВТ;<br>Запрос.УстановитьПараметр("ТекущаяОбработка",ТабличнаяЧасть.Выгрузить());<br>Запрос.Текст = "ВЫБРАТЬ *<br>|ПОМЕСТИТЬ НазваниеВременнойТаблицы<br>|ИЗ &ТекущаяОбработка КАК ТекущаяОбработка";<br>Запрос.Выполнить();<br><br>А дальше вы уже работаете с таблицей "НазваниеВременнойТаблицы", как с обычной таблицей базы<br>Связь между запросам по менеджеру временных таблиц<br>"
29.10.2008
12:50
#3
из таблицы хочу вытянуть данные в макет<br>можно обойтись без временной таблицы?
29.10.2008
13:10
#4
"Можно. Зачем тогда <br>>Запрос.УстановитьПараметр("ТекущаяОбработка",ЭтотОбъект);<br>??????<br><br> Макет = ПолучитьМакет("Макет");<br> ОблСтрока = Макет.ПолучитьОбласть("Область1");<br> ТабДок = Новый ТабличныйДокумент;<br> <br> Для каждого СтрокаТаблицы Из ТабличнаяЧасть Цикл<br> ОблСтрока.Параметры.Заполнить(СтрокаТаблицы); //Это если названия параметров соответствуют названиям реквизитов таблитчной части<br> ОблСтрока.Параметры.НазваниеПараметра = СтрокаТаблицы.НазваниеРеквизитаТаблЧасти;<br> ТабДок.Вывести(ОблСтрока);<br> КонецЦикла; <br> ТабДок.Показать();<br>"
29.10.2008
13:21
#5
"косноязычно все написал. есть табличная часть внешней обработки "ТЧ", поля "номенклатура", "количество". надо вытянуть данные в макет "таблица" На примере внешней печатной формы "счета" смотрел что это делается через запрос, вот только там таблица не встроена в обработку, а ссылка на нее получаеться через Запрос.УстановитьПараметр("ТекущийДокумент", СсылкаНаОбъект);"
29.10.2008
13:53
#6
">Запрос.УстановитьПараметр("ТекущийДокумент", СсылкаНаОбъект); <br>Так это вообще-то имеется ввиду ссылка на объет базы данных, причем не на табличную часть, а на сам документ<br>А табличная часть внешней обработки в базе данных никак не отражается, поэтому смотрите первый ответ."
29.10.2008
13:55
#7
Спасибо огромное, с выборкой разобрался, незнаю, вроде каряво но работает. Разобрался через менеджер временных таблиц
29.10.2008
14:01
#8
С менеджером - это уже здорово. Хуже было, когда действительно приходилось делать обход по каждой строке таблицы. Если допустим есть код номенклатуры, откуда-нибудь полученный, а надо к нему было еще найти номенклатуру и цены, приходилось делать обход по каждой строке, а сейчас во временную таблицу и одним запросм получаешь все. Работает в разы быстрее
Читают тему
(гостей: 2)