Форум 1С
Программистам, бухгалтерам, администраторам, пользователям
Задай вопрос - получи решение проблемы
06 июл 2022, 23:28

Не могу передать данные запроса в форму

Автор antipod, 04 июн 2019, 08:17

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

antipod

Написал такой код, На строке "Новый ТаблицаЗначений" пишет что тип не определен, а без нее ошибка отображения типов
&НаКлиенте
Процедура ЗаполнитьИтогоИзМеню(Команда)
//ТабИтого = Новый ТаблицаЗначений;
ТабИтого = ПолучитьИтогоССервера(Объект.Ссылка);
КонецПроцедуры
&НаСервере
Функция ПолучитьИтогоССервера (Документ)
ОЗапрос = Новый Запрос;
ОЗапрос.Текст = "тут запрос";
ОЗапрос.УстановитьПараметр("Док",Документ);
РезультатЗапроса = ОЗапрос.Выполнить();
Возврат РезультатЗапроса.Выгрузить();
КонецФункции

LexaK

на тонкий клиент нельзя передать ТаблицуЗначений!!
вот один из вариантов массив структур (каждая структура как строка с именами полей)

Функция ПолучитьИтогоССервера (Документ)
    ОЗапрос = Новый Запрос;
    ОЗапрос.Текст = "тут запрос";
    ОЗапрос.УстановитьПараметр("Док",Документ);
    лкРезультат = ОЗапрос.Выполнить();
    //Возврат РезультатЗапроса.Выгрузить();

Если лкРезультат.Пустой() Тогда
//нет данных
лкДанные = Неопределено;
Иначе
//формируем массив сруктур с данными построчно, аналог ТЗ
лкВыборка = лкРезультат.Выбрать();
лкДанные  = Новый Массив;
Пока лкВыборка.Следующий() Цикл
лкСтрока = Новый Структура;
Для каждого лкКол Из лкРезультат.Колонки Цикл
лкСтрока.Вставить(лкКол.Имя,лкВыборка[лкКол.Имя]);
КонецЦикла;
лкДанные.Добавить(лкСтрока);
КонецЦикла;
КонецЕсли;

Возврат лкДанные;
КонецФункции

если помогло нажмите: Спасибо!

Теги:

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

Рейтинг@Mail.ru Rambler's Top100

Поиск