Имя: Пароль:
1C
1С v8
УФ.Выбор значения из списка. Ошибка при передачи с клиента на сервер.
0 ffidelite
 
05.03.17
22:30
Доброго времени суток!
8.3.6.
Не можете помочь.Есть проблема с УФ.
При выборе значения из списка появляется ошибка.
Понимаю, что передаю на сервер не то. Но как сделать не могу понять

Ошибка передачи данных между клиентом и сервером. Значение недопустимого типа.
по причине:
Ошибка преобразования данных XDTO:
Запись значения свойства 'param':
    форма: Элемент
    имя: {http://v8.1c.ru/8.2/managed-application/modules}param
по причине:
Ошибка отображения типов:
Отсутствует отображение для типа 'ЭлементСпискаЗначений'



&НаКлиенте
Процедура АдресаВыгрузкиНачалоВыбора(Элемент, ДанныеВыбора, СтандартнаяОбработка)
    
    СтандартнаяОбработка = Ложь;
    
    Список=СписокАдресаВыгрузки(Объект.ДатаНачала,Объект.ДатаОкончания,Объект.Организация);
    СписокВыбора = Новый СписокЗначений;

    Для Каждого Сп из Список.Адреса Цикл
        СписокВыбора.Добавить(Сп.Значение,Сп.Представление);
    КонецЦикла;
    
    ДопПараметры = Новый Структура;
    ОписаниеОповещения = Новый ОписаниеОповещения("ВыборСписокАдресаВыгрузки",ЭтаФорма,ДопПараметры);
    ПоказатьВыборИзСписка(ОписаниеОповещения,СписокВыбора);

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

Процедура ВыборСписокАдресаВыгрузки(Элемент, Параметры) Экспорт
    
    Если Элемент <> Неопределено  Тогда
        Объект.АдресаВыгр<p class="indent">узки = Элемент.Значение;
        
        Сообщить(Элемент.Значение);
    КонецЕсли;  

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

&НаСервереБезКонтекста
Функция СписокАдресаВыгрузки(ДатаНачала,ДатаОкончания,Организация)
    
    Запрос = Новый Запрос;
    Запрос.Текст =
        "ВЫБРАТЬ
        |    ДополнительныеСведения.Значение КАК Адрес
        |ИЗ
        |    РегистрСведений.ДополнительныеСведения КАК ДополнительныеСведения,
        |    Документ.РеализацияТоваровУслуг.Услуги КАК РеализацияТоваровУслугУслуги
        |ГДЕ
        |    ДополнительныеСведения.Объект=РеализацияТоваровУслугУслуги.Номенклатура
        |    И ТИПЗНАЧЕНИЯ(ДополнительныеСведения.Объект) = ТИП(Справочник.Номенклатура)
        |    И ДополнительныеСведения.Свойство.Наименование=&ДопСвед
        |    И НЕ РеализацияТоваровУслугУслуги.Ссылка.ПометкаУдаления
        |    И РеализацияТоваровУслугУслуги.Ссылка.Организация = &Организация
        |    И РеализацияТоваровУслугУслуги.Ссылка.Дата МЕЖДУ &ДатаНачала И &ДатаОкончания
        |СГРУППИРОВАТЬ ПО ДополнительныеСведения.Значение
        |УПОРЯДОЧИТЬ ПО ДополнительныеСведения.Значение";
    Запрос.УстановитьПараметр("ДопСвед", "Выгрузка_адрес_сайта (Номенклатура)");
    Запрос.УстановитьПараметр("ДатаНачала", НачалоДня(ДатаНачала));
    Запрос.УстановитьПараметр("ДатаОкончания", КонецДня(ДатаОкончания));
    Запрос.УстановитьПараметр("Организация", Организация);
    
    Выборка = Запрос.Выполнить().Выбрать();
    
    Список = Новый СписокЗначений;    
    СтруктураДанные = Новый Структура();
    СтруктураДанные.Вставить("Адреса", Список);
    
    Пока Выборка.Следующий() Цикл
        Список.Добавить(Выборка.Адрес,Выборка.Адрес);
    КонецЦикла;
    Возврат СтруктураДанные;
    
КонецФункции
1 Lexey_
 
05.03.17
22:38
(0) "Отсутствует отображение для типа 'ЭлементСпискаЗначений'", передавай не ЭлементСпискаЗначений, а его значение
2 Lexey_
 
05.03.17
22:41
(0) сделай процедуру ВыборСписокАдресаВыгрузки клиентской
3 RomaH
 
naïve
05.03.17
23:03
странно, что вообще работает
должно, вроде ругаться, что не нашло процедуры "ВыборСписокАдресаВыгрузки" - ибо нет её на клиенте
4 Lexey_
 
05.03.17
23:12
(3) а где написано, что должно ругаться?
5 ffidelite
 
06.03.17
14:05
(1),(2) Спасибо, попробую.
6 ffidelite
 
07.03.17
14:16
Сделал так,получилось.

&НаКлиенте
Процедура ВыборСписокАдресаВыгрузки(Элемент, Параметры) Экспорт
    
    Если Элемент <> Неопределено  Тогда
        ЗаписатьАдрес( Элемент.Значение);
        Объект.АдресаВыгрузки=Элемент.Значение;
    КонецЕсли;  
КонецПроцедуры

&НаСервере
Процедура  ЗаписатьАдрес(Значение)
         Объект.АдресаВыгрузки= Значение;
КонецПроцедуры