Реклама на этом месте
Форум 1С
Форум 1С
Программистам. Бухгалтерам. Администраторам. Пользователям
Задай вопрос - получи решение проблемы. Без троллинга и флуда.
16 Дек 2017, 14:18
МультиВход
Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.
Не получили письмо с кодом активации?
 
collapse

Автор Тема: Ошибка отображения типов  (Прочитано 12520 раз)

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

Оффлайн mahaidor

  • **
  • Сообщений: 68
  • РЕПУТАЦИЯ: 0
  • Регистрация: 2014-04-06
  • Сайт: 
  • Профессия: Ученик 1С
Здравствуйте.Платформа 1с 8.3.437 . Выгружаю результат запроса в таблицу значений, в ответ возникает ошибка отображение типов: отсутствует отображение типа ValueTable.
&НаКлиенте
Процедура Ант_Вес_РостПриИзменении(Элемент)
Возраст=СТрока(Объект.Возраст);
Пол=Объект.Пол;
//обращение к табличной чати
СтрТабЧ=Элементы.Ант_Вес_Рост.ТекущиеДанные;
СтрокаВыборки=ВыборРезультатаЗапросаРоста(Возраст,Пол);

//СтрТабЧ.ОценкаРоста=ВыборРезультатаЗапроса(Возраст,Пол);

КонецПроцедуры

&НаКлиенте
Функция ВыборРезультатаЗапросаРоста(Возраст,Пол)
 Рез=ВыборСтрокиКритериевРоста(Возраст,Пол);
 Возврат Рез;
КонецФункции

Функция ВыборСтрокиКритериевРоста(Возраст,Пол)
Запрос=Новый Запрос;
Запрос.Текст=
"ВЫБРАТЬ
| КритерийРоста.Р_1,
| КритерийРоста.Р_2,
| КритерийРоста.Р_3,
| КритерийРоста.Р_4,
| КритерийРоста.Р_5,
| КритерийРоста.Р_6
| ИЗ Справочник.ТаблицаРоста КАК КритерийРоста
|ГДЕ КритерийРоста.Наименование=&Возраст и КритерийРоста.Пол=&Пол";
Запрос.УстановитьПараметр("Возраст",Возраст);
Запрос.УстановитьПараметр("Пол",Пол);
     РезультатЗапроса = Запрос.Выполнить();
ТблЗн=РезультатЗапроса.Выгрузить();
  Возврат ТблЗн;
   
КонецФункции


Оффлайн MuI_I_Ika

  • Гончаров Михаил
  • Администратор
  • *****
  • Сообщений: 6558
  • РЕПУТАЦИЯ: 775
  • КПД: 12%
  • Регистрация: 2012-08-15
    • Skype: MuI_I_Ika
  • Сайт: 
  • Профессия: Программист 1С
Да действительно нельзя передавать таблицу значений с сервера на клиент. Мутабельные переменные не передаются между серверным и клиентским контекстом. Попробуйте максимально перенести логику выполнения на сервер, а  на клиенте получайте уже готовый результат.

Так же можно использовать временное хранилище для передачи таких значений.

Оффлайн mahaidor

  • **
  • Сообщений: 68
  • РЕПУТАЦИЯ: 0
  • Регистрация: 2014-04-06
  • Сайт: 
  • Профессия: Ученик 1С
Да действительно нельзя передавать таблицу значений с сервера на клиент. Мутабельные переменные не передаются между серверным и клиентским контекстом. Попробуйте максимально перенести логику выполнения на сервер, а  на клиенте получайте уже готовый результат.

Так же можно использовать временное хранилище для передачи таких значений.
То есть вы имеете ввиду, что можно использовать объект "Хранилище значений" для передачи таблицы значений?

Оффлайн cska-fanat-kz

  • 1С:Специалист
  • Глобальный модератор
  • *****
  • Сообщений: 5745
  • РЕПУТАЦИЯ: 1099
  • КПД: 19%
  • Красная армия всех сильней!
  • Регистрация: 2010-11-06
    • Skype: cska-fanat-kz81
  • Сайт: cska-fanat-kz.ucoz.kz
  • Профессия: Разработчик 1С
Не ХранилищеЗначений, а временное хранилище - серверный объект, как раз применяющийся для передачи данных с сервера на клиент. Поищите примеры, как в управляемом приложении реализован подбор товаров.
Получил помощь - скажи СПАСИБО.
Разобрался сам - расскажи другим.

Оффлайн mahaidor

  • **
  • Сообщений: 68
  • РЕПУТАЦИЯ: 0
  • Регистрация: 2014-04-06
  • Сайт: 
  • Профессия: Ученик 1С
Про временные хранилища узнал, но решил их не использовать, просто обработал таблицу значений в функции, выполняемой в контексте сервера.
&НаКлиенте
Процедура Ант_Вес_РостПриИзменении(Элемент)
Возраст=СТрока(Объект.Возраст);
Пол=Объект.Пол;
//обращение к табличной чати
СтрТабЧ=Элементы.Ант_Вес_Рост.ТекущиеДанные;
Рост=СтрТабЧ.Рост;
СтрТабЧ.ОценкаРоста=ВыборКритерияРоста(Возраст,Пол,Рост);
КонецПроцедуры

&НаСервере
Функция  ВыборКритерияРоста(Возраст,Пол,Рост)
//Запрос на получение строки критериев роста согласно полу и возрасту
Запрос=Новый Запрос;//создаем новый запрос
Запрос.Текст=      //вводим содержание запроса
"ВЫБРАТЬ             
| КритерийРоста.Р_1,
| КритерийРоста.Р_2,
| КритерийРоста.Р_3,
| КритерийРоста.Р_4,
| КритерийРоста.Р_5,
| КритерийРоста.Р_6
| ИЗ Справочник.ТаблицаРоста КАК КритерийРоста
|ГДЕ КритерийРоста.Наименование=&Возраст и КритерийРоста.Пол=&Пол";
Запрос.УстановитьПараметр("Возраст",Возраст);//вводим в запрос значениие возраста
Запрос.УстановитьПараметр("Пол",Пол);  //вводим в запрос значениие пола
     РезультатЗапроса = Запрос.Выполнить(); //выполениеие запроса
//обработка результатов запроса
ТблЗн=РезультатЗапроса.Выгрузить();//выгружаем результаты запроса в таблицу значений для обработки в ней данных
Для Каждого СтрокаТблЗн из ТблЗн Цикл //запускаем цмкл обработки данных в таблице значений
//определение критерия очень низкого роста
Если СтрокаТблЗн.Р_1>Рост Тогда КритерийРоста=Перечисления.Критерии_Рост_Вес.Очень_низкий; КонецЕсли;
  //определение критерия низкого роста
Если ((СтрокаТблЗн.Р_1=Рост) или (СтрокаТблЗн.Р_1<Рост))
    И (СтрокаТблЗн.Р_2>Рост) Тогда КритерийРоста=Перечисления.Критерии_Рост_Вес.Низкий; КонецЕсли;
  //определение критерия  роста ниже среднего
Если ((СтрокаТблЗн.Р_2=Рост) или (СтрокаТблЗн.Р_2<Рост))
И (СтрокаТблЗн.Р_3>Рост) Тогда КритерийРоста=Перечисления.Критерии_Рост_Вес.Ниже_Среднего; КонецЕсли;
  //определение критерия среднего роста
Если ((СтрокаТблЗн.Р_3=Рост) или (СтрокаТблЗн.Р_3<Рост))
И (СтрокаТблЗн.Р_4>Рост) Тогда КритерийРоста=Перечисления.Критерии_Рост_Вес.Средний; КонецЕсли;
    //определение критерия  роста выше среднего
Если ((СтрокаТблЗн.Р_4=Рост) или (СтрокаТблЗн.Р_4<Рост))
И (СтрокаТблЗн.Р_5>Рост) Тогда КритерийРоста=Перечисления.Критерии_Рост_Вес.Выше_Среднего; КонецЕсли;
     //определение критерия высокого роста
Если ((СтрокаТблЗн.Р_5=Рост) или (СтрокаТблЗн.Р_5<Рост))
И ((СтрокаТблЗн.Р_6>Рост)или (СтрокаТблЗн.Р_6=Рост)) Тогда КритерийРоста=Перечисления.Критерии_Рост_Вес.Высокий; КонецЕсли;
     //определение критерия очень высокого роста
Если (СтрокаТблЗн.Р_6<Рост)  Тогда КритерийРоста=Перечисления.Критерии_Рост_Вес.Очень_Высокий; КонецЕсли;
КонецЦикла;
  Возврат  КритерийРоста;
КонецФункции
Вопрос решен, всем спасибо.


Теги:
 

При открытии обр-ки в "Предприятии" есть ошибка, а в "Отладке" нет

Автор proofetРаздел Конфигурирование, программирование в "1С - Предприятие 8"

Ответов: 2
Просмотров: 4545
Последний ответ 21 Сен 2011, 17:35
от proofet
ошибка "Невозможно обработать параметр "ПрофильПолномочийПользователя""

Автор lindeluРаздел Конфигурирование, программирование в "1С - Предприятие 8"

Ответов: 5
Просмотров: 6104
Последний ответ 06 Июн 2012, 09:15
от lindelu
Синтаксическая ошибка "В" Номенклатура.Ссылка = <<?>> В ИЕРАРХИИ(&Ссылка)

Автор maskitoРаздел Конфигурирование, программирование в "1С - Предприятие 8"

Ответов: 4
Просмотров: 4213
Последний ответ 28 Апр 2014, 15:53
от maskito
При создании нового документа "Заявка на кассовый расход" Ошибка "Значение 9 поля "номер" не уникально

Автор ppkmliteРаздел Конфигурирование, программирование в "1С - Предприятие 8"

Ответов: 14
Просмотров: 8530
Последний ответ 22 Ноя 2014, 04:50
от cska-fanat-kz
Ошибка при загрузке данных через (Обработка "Выгрузка и загрузка данных XML")

Автор Сергей_87Раздел Конфигурирование, программирование в "1С - Предприятие 8"

Ответов: 1
Просмотров: 8572
Последний ответ 26 Апр 2012, 23:08
от Dethmontt

* Живое общение

Не устроил ответ?

Зарегистрируйся и задай свой вопрос. Живое общение приносит результат намного быстрее.


Зарегистрироваться

* Реклама

* Поиск

* Последние задачи на разработку (фриланс)

* Реклама

* Последние вакансии

* Топ 10 авторов за месяц

Геннадий ОбьГЭС Геннадий ОбьГЭС
157 Сообщений
ilyay ilyay
66 Сообщений
alex0402
53 Сообщений
AIFrame
47 Сообщений
oleg-x
44 Сообщений
andron81_81
44 Сообщений
BuhRust
33 Сообщений
MuI_I_Ika MuI_I_Ika
32 Сообщений
Golickoff Golickoff
31 Сообщений
Dima Dddd Dima Dddd
24 Сообщений

* Кто онлайн

  • Точка Гостей: 257
  • Точка Скрытых: 0
  • Точка Пользователей: 5
  • Точка Сейчас на форуме:

* Облако тэгов

* Форум 1С с мобильного

* Инструменты

* Дополнительно

Поиск

 
SimplePortal 2.3.5 © 2008-2012, SimplePortal