Имя: Пароль:
1C
 
Как использовать оператор Выполнить()?
0 Викуся
 
19.03.10
06:29
Хочу посмотреть временную таблицу в запросе.
После прохождения строк

Запрос.Текст = "выбрать ... поместить ВТБаза";
Запрос.Выполнить();

Пишу в табло
Выполнить("Запрос1 = Новый запрос(Запрос.Текст+"""; выбрать* из ВТБаза как ВТБаза1"""); Запрос1.выполнить().выгрузить().Выбратьстроку();")

Что не так?
1 Викуся
 
19.03.10
06:31
+ не работает даже Выполнить("ПеременнаяМодуля=10"). Остается в переменной то же значение.
2 Егор Сергеевич
 
19.03.10
06:33
Выполнить() - это функция, а не оператор.
3 Егор Сергеевич
 
19.03.10
06:34
Посмотри эту таблицу в консоли запросов.
4 чувак
 
19.03.10
06:34
Табло где? В конфигруторе или в режиме предприятие?
5 Dirk Diggler
 
19.03.10
06:35
(2) Ты не понял. Это другое выполнить
6 Викуся
 
19.03.10
06:36
(3)в консоли неудобно,тк там 20 параметров половина массивы). Долго заносить их.
7 Викуся
 
19.03.10
06:36
(4)В конфигураторе при отладке.
8 чувак
 
19.03.10
06:38
(7) Попробуй так:
Запрос.Выполнить.Выгрузить()
9 чувак
 
19.03.10
06:38
Т.е.
Запрос.Выполнить().Выгрузить()
10 Викуся
 
19.03.10
06:40
(9)То же самое: "ожидается выражение"
11 чувак
 
19.03.10
06:49
(10) Что именно писала в табло, сможешьпоказать?
12 Викуся
 
19.03.10
06:51
(11)Выполнить("Запрос1 = Новый запрос(Запрос.Текст+"""; выбрать* из ВТБаза как ВТБаза1"""); Запрос1.выполнить().выгрузить();")
13 чувак
 
19.03.10
06:51
(12) Напиши просто :
Запрос1.выполнить().выгрузить()
14 Викуся
 
19.03.10
06:55
(13)я это и написала. определила новый запрос1 и твою строчку.
15 чувак
 
19.03.10
06:58
(14) .напиши только мою строку и больше ничего !
16 Викуся
 
19.03.10
07:01
(15)Чувак, Переменной Запрос1 нет в модуле я ее создаю в опрераторе Выполнить(). Если выгрузить результат переменной Запрос будет фига, тк все помещается во временную таблицу.
17 Defender aka LINN
 
модератор
19.03.10
07:21
1. Менеджер временных таблиц у запроса не установлен
2. Выполнить() - процедура, а не функция, в табло использоваться не может.
18 ilkoder
 
19.03.10
07:28
(0) у тебя раньше такое срабатывало? или типа новая идея?
19 чувак
 
19.03.10
07:37
Боюсь у тебя не получится. Лучше копируй текст запроса без "Поместить ВТБаза" в Косло запроса или в консоль отчета
20 Рэйв
 
19.03.10
08:01
(16)
>Запрос.Текст = "выбрать ... поместить ВТБаза";
>Запрос.Выполнить();

Как вариант,помести в модуль приложения функцию:

//Функция позволяет просмтреть внутреннюю таблицу запроса, возвращаемую в виде ТЗ, в табло при отладке

Функция  ЛукВТ(Запрос=Неопределено, ИмяВнутреннейТаблицы=Неопределено) Экспорт
   Перем ЗапросТМП, Р;

   //Получаем таблицу из менеджера временных таблиц запроса
   ЗапросТМП=Новый Запрос("ВЫБРАТЬ * ИЗ "+ИмяВнутреннейТаблицы);
          ЗапросТМП.МенеджерВременныхТаблиц=Запрос.МенеджерВременныхТаблиц;
       Р=ЗапросТМП.Выполнить().Выгрузить();
       Возврат Р;
КонецФункции
//-----------

потом в табло после выполнения запроса:

ЛукВТ(Запрос,"ВТБаза")
21 чувак
 
19.03.10
08:16
(20) Мне кажется она хочет не трогая кода получить данные временной таблицы