Форум 1С
Программистам, бухгалтерам, администраторам, пользователям
Задай вопрос - получи решение проблемы
12 дек 2024, 08:44

Как вывести виртуальную таблицу

Автор Sony_a, 05 мар 2015, 15:07

0 Пользователей и 1 гость просматривают эту тему.

Sony_a

Создала внешнюю обработку, как вывести обработку на экран, через макет например, в модуле формы написала запрос

   
|   ВЫБРАТЬ
| УППБУ_РасходПродуктовФактОбороты.Продукт.УППБУ_ТипПродукта КАК ПродуктУППБУ_ТипПродукта,
| УППБУ_РасходПродуктовФактОбороты.Категория КАК Категория,
| ЛОЖЬ КАК СухойПаек
| ПОМЕСТИТЬ врТипыПродуктов
|ИЗ
| РегистрНакопления.УППБУ_РасходПродуктовФакт.Обороты(&пПериодНачало, &пПериодКонец, , ) КАК УППБУ_РасходПродуктовФактОбороты
| ГДЕ
| НЕ УППБУ_РасходПродуктовФактОбороты.Продукт.УППБУ_ТипПродукта = ЗНАЧЕНИЕ(Справочник.УППБУ_ТипыПродуктовПитания.ПустаяСсылка)
| И УППБУ_РасходПродуктовФактОбороты.Категория = &Категория
|
| СГРУППИРОВАТЬ ПО
| УППБУ_РасходПродуктовФактОбороты.Продукт.УППБУ_ТипПродукта,
| УППБУ_РасходПродуктовФактОбороты.Категория



has

Цитата: Sony_a от 05 мар 2015, 15:07через макет например
Использовать макет и табличный документ. Если просто показать результат запроса, то выгрузить в таблицу значений и показать ее. Еще можно через консоль запросов/отчетов.

Sony_a

Цитата: has от 05 мар 2015, 15:09
Цитата: Sony_a от 05 мар 2015, 15:07через макет например
Использовать макет и табличный документ. Если просто показать результат запроса, то выгрузить в таблицу значений и показать ее. Еще можно через консоль запросов/отчетов.
Да просто показать результат. Подскажите как через таблицу значений это сделать?

has

Только во временную таблицу помещать не надо
Запрос.Выполнить().Выгрузить().ВыбратьСтроку();

Sony_a

Цитата: Sony_a от 05 мар 2015, 15:07врТипыПродуктов

Цитата: has от 05 мар 2015, 15:15
Только во временную таблицу помещать не надо
Запрос.Выполнить().Выгрузить().ВыбратьСтроку();
Мне вот именно нужно вывести  вот эту временную таблицу врТипыПродуктов

LexaK

где создаете запрос, добавьте строку: МенеджерВременныхТаблиц, см.пример

Запрос = Новый Запрос;
Запрос.МенеджерВременныхТаблиц=Новый МенеджерВременныхТаблиц;


после кода у вас в программе где ваш Запрос.Выполнить()....,
добавьте такой код


Запрос.Текст = "Выбрать * из врТипыПродуктов";
Запрос.Выполнить().Выгрузить().ВыбратьСтроку();


Запустите ваш код на выполнение, увидите ТЗ с вашей таблицей врТипыПродуктов.
если помогло нажмите: Спасибо!

Sony_a

Цитата: LexaK от 05 мар 2015, 16:23
где создаете запрос, добавьте строку: МенеджерВременныхТаблиц, см.пример

Запрос = Новый Запрос;
Запрос.МенеджерВременныхТаблиц=Новый МенеджерВременныхТаблиц;


после кода у вас в программе где ваш Запрос.Выполнить()....,
добавьте такой код


Запрос.Текст = "Выбрать * из врТипыПродуктов";
Запрос.Выполнить().Выгрузить().ВыбратьСтроку();


Запустите ваш код на выполнение, увидите ТЗ с вашей таблицей врТипыПродуктов.

Процедура КнопкаВыполнитьНажатие(Кнопка)
МенеджерВТ = Новый МенеджерВременныхТаблиц;
Запрос = Новый Запрос("ВЫБРАТЬ
|    УППБУ_РасходПродуктовФактОбороты.Продукт.УППБУ_ТипПродукта КАК ПродуктУППБУ_ТипПродукта,
|    УППБУ_РасходПродуктовФактОбороты.Категория КАК Категория,
|    ЛОЖЬ КАК СухойПаек
| ПОМЕСТИТЬ врТипыПродуктов
|ИЗ
|    РегистрНакопления.УППБУ_РасходПродуктовФакт.Обороты(&пПериодНачало, &пПериодКонец, , ) КАК УППБУ_РасходПродуктовФактОбороты
| ГДЕ
|    НЕ УППБУ_РасходПродуктовФактОбороты.Продукт.УППБУ_ТипПродукта = ЗНАЧЕНИЕ(Справочник.УППБУ_ТипыПродуктовПитания.ПустаяСсылка)
|    И УППБУ_РасходПродуктовФактОбороты.Категория = &Категория
|
| СГРУППИРОВАТЬ ПО
|    УППБУ_РасходПродуктовФактОбороты.Продукт.УППБУ_ТипПродукта,
|    УППБУ_РасходПродуктовФактОбороты.Категория");
Запрос.МенеджерВременныхТаблиц=МенеджерВТ;
Результат = Запрос.Выполнить();
Запрос = Новый Запрос("ВЫБРАТЬ * ИЗ врТипыПродуктов как УППБУ_РасходПродуктовФактОбороты");
Запрос.МенеджерВременныхТаблиц = МенеджерВТ;
РезультатЗапроса.Загрузить(Запрос.Выполнить().Выгрузить);
КонецПроцедуры
Ругается  Переменная не определена (РезультатЗапроса)
<<?>>РезультатЗапроса.Загрузить(Запрос.Выполнить().Выгрузить); (Проверка: Толстый клиент (обычное приложение))

Добавлено: 05 мар 2015, 17:57


Цитата: has от 05 мар 2015, 15:15
Только во временную таблицу помещать не надо
Запрос.Выполнить().Выгрузить().ВыбратьСтроку();
Что не так делаю?

Дмитрий@

Можно сделать еще проще:
-создать форму
-на форме поместить табличную часть
-в табличной части создать необходимые столбцы и загрузить в нее данные.
Добавлено: 05 мар 2015, 19:03


Там ведь написано неизвестная переменная.
Переменная "РезультатЗапроса" - это должна быть реквизит формы как я понимаю.

LexaK

вот здесь неправильно,

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


я же прислал всего две строчки которые надо добавить, будьте внимательны.

Запрос.Текст = "Выбрать * из врТипыПродуктов";
Запрос.Выполнить().Выгрузить().ВыбратьСтроку();


правда этот код для толстого клиента,
переведите режим работы 1С, если это необходимо в Толстый клиент
если помогло нажмите: Спасибо!

cska-fanat-kz

Цитата: Sony_a от 05 мар 2015, 17:55Что не так делаю?

как вариант
Объект.РезультатЗапроса....
Получил помощь - скажи СПАСИБО.
Разобрался сам - расскажи другим.

Теги:

Похожие темы (5)

Рейтинг@Mail.ru

Поиск