Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / [игнор отключен] [закрыт для гостей] / Сериализация / 18 сообщений из 18, страница 1 из 1
14.07.2011, 23:06
    #37352567
dimbasbear
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Сериализация
Добрый день!

Платформа 8,2 (управляемое приложение)
Задача: Передать СписокЗначений из модуля серверного в модуль управляемого приложения. СписокЗначений заполняю выборкой по справочнику, поэтому делаю в серверном модуле. Решил делать через сериализацию (может как-то можно и по другому...)

Модуль управляемого приложения

Код: plaintext
1.
2.
3.
4.
5.
Процедура ВыборОбеда()
	
	Сериализатор = Новый СериализаторXDTO(ФабрикаXDTO);
	ЧтениеСпЗнач = Сериализатор.ПрочитатьXDTO(РаботаСоСправочниками.ВыборкаВариантовОбеда());	
	
КонецПроцедуры


Общий модуль : РаботаСоСправочниками
Настройка модуля: сервер, вызов сервера.


Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
Функция  ВыборкаВариантовОбеда() Экспорт
	
	СтрВариантыОбедов = Новый СписокЗначений;
    ВыборкаОбедов = Справочники.ВариантыОбедов.Выбрать();
	
	Пока ВыборкаОбедов.Следующий() Цикл
		
		Вариант = ВыборкаОбедов.ПолучитьОбъект();
		
		Если ВыборкаОбедов.ПометкаУдаления = Ложь Тогда
			
			СтрВариантыОбедов.Добавить(Вариант);
			
		КонецЕсли;
		
	КонецЦикла; 
	//ФабрикаXDTO = Новый ФабрикаXDTO(XDTO {http://v8.1c.ru/ 8 . 1 /xdto}:ValueListType);
	
 
	Сериализатор = Новый СериализаторXDTO(ФабрикаXDTO);
	ЗаписьСпЗнач = Сериализатор.ЗаписатьXDTO(СтрВариантыОбедов);
	
	
	Возврат ЗаписьСпЗнач; 

	 //ОтметкаОбедов(СтрВариантыОбедов);
КонецФункции

Проблема: При выполнении выдает ошибку:

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
{МодульУправляемогоПриложения( 32 )}: Ошибка при вызове метода контекста (ВыборкаВариантовОбеда)
	ЧтениеСпЗнач = Сериализатор.ПрочитатьXDTO(РаботаСоСправочниками.ВыборкаВариантовОбеда());	
по причине:
Ошибка при вызове серверного метода.
по причине:
Ошибка передачи данных между клиентом и сервером. Значение недопустимого типа.
по причине:
Ошибка преобразования данных XDTO:
Запись значения свойства 'ret':
	форма: Элемент
	имя: {http://v8.1c.ru/ 8 . 2 /managed-application/modules}ret
по причине:
Ошибка отображения типов:
Отсутствует отображение для типа 'ОбъектXDTO'


Вопрос: В чем у меня ошибка, может как-то по другому можно это сделать??? заранее спасибо :(
...
Рейтинг: 0 / 0
14.07.2011, 23:30
    #37352587
dimbasbear
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Сериализация
Похоже проблема была в том не в том что я передавал СписокЗначений, а в том что в нем хранились Ссылка. Заменил на Код или Наименование - все пошло.
...
Рейтинг: 0 / 0
15.07.2011, 02:19
    #37352702
Программист 1с
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Сериализация
Такая ошибка была когда например таблицу значений и прочее пытался передать с сервера на клиента.

Ссылка - можно.
...
Рейтинг: 0 / 0
15.07.2011, 02:28
    #37352709
dimbasbear
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Сериализация
Программист 1сТакая ошибка была когда например таблицу значений и прочее пытался передать с сервера на клиента.

Ссылка - можно.
Я вот смог победить когда передал в СпискеЗначений просто тупо строку. Не подскажите, а как быть , если мне например нужно передать что-то на клиент где два столбца?? как быть....(
...
Рейтинг: 0 / 0
15.07.2011, 02:30
    #37352710
dimbasbear
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Сериализация
может всетаки пользоваться этим СЕРИАЛИЗАТОРОМ, но что-то через него тоже не получилось
...
Рейтинг: 0 / 0
15.07.2011, 10:44
    #37353080
y-niko
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Сериализация
А что мешает использовать функции серверного контекста и просто делать "Возврат СписокЗначений"?
Я сейчас попробывал сделать, правда обе функции (клиентского и серверного контекстов) были в одной форме, но тем не менее список значений, содержащий строки успешно сериализовался автоматически.
...
Рейтинг: 0 / 0
15.07.2011, 10:54
    #37353109
y-niko
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Сериализация
Также проверил передачу списка значений со значениями типа "ссылка на контрагентов" - все работает.
...
Рейтинг: 0 / 0
15.07.2011, 13:19
    #37353425
Программист 1с
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Сериализация
y-nikoА что мешает использовать функции серверного контекста и просто делать "Возврат СписокЗначений"?
Я сейчас попробывал сделать, правда обе функции (клиентского и серверного контекстов) были в одной форме, но тем не менее список значений, содержащий строки успешно сериализовался автоматически.
...
Рейтинг: 0 / 0
19.07.2011, 12:38
    #37357471
XenoX
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Сериализация
Реквизиты формы для передачи данных не предлогать?
...
Рейтинг: 0 / 0
19.07.2011, 17:19
    #37358172
dimbasbear
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Сериализация
XenoXРеквизиты формы для передачи данных не предлогать?

В смысле?
...
Рейтинг: 0 / 0
19.07.2011, 17:27
    #37358185
XenoX
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Сериализация
Ну...... эээ....


Добавить на форму реквизит с типом СписокЗначений

&НаСервере
Процедура ЗаполнитьСписокСервер()
Список.Очистить();
Список.Добавить();
....
КонецПроцедуры

&НаКлиенте
Процедура ЗаполнитьСписокКлиент()
ЗаполнитьСписокСервер()
СделатьПолезныеВещиСДаннымиФормыКоллекцией.....
......
...
Рейтинг: 0 / 0
19.07.2011, 17:28
    #37358186
dimbasbear
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Сериализация
XenoXНу...... эээ....


Добавить на форму реквизит с типом СписокЗначений

&НаСервере
Процедура ЗаполнитьСписокСервер()
Список.Очистить();
Список.Добавить();
....
КонецПроцедуры

&НаКлиенте
Процедура ЗаполнитьСписокКлиент()
ЗаполнитьСписокСервер()
СделатьПолезныеВещиСДаннымиФормыКоллекцией.....
......

тоже вариант, но хотелось бы понять каковы возможности передачи между клиентом и сервером без дополнительных реквизитов .
...
Рейтинг: 0 / 0
19.07.2011, 17:30
    #37358188
XenoX
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Сериализация
Так вроде списокзначений и прочие няшки не поддерживаются на клиенте, если передать влоб то будет что-то вроде "отсутсвует отображение для ....." вы вот это вот сериализованное нечто потом как хотите использовать?
...
Рейтинг: 0 / 0
19.07.2011, 17:33
    #37358198
dimbasbear
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Сериализация
XenoXТак вроде списокзначений и прочие няшки не поддерживаются на клиенте, если передать влоб то будет что-то вроде "отсутсвует отображение для ....." вы вот это вот сериализованное нечто потом как хотите использовать?

Из справки:

авторДоступность:

Тонкий клиент, веб-клиент, сервер, толстый клиент, внешнее соединение.
Возможен обмен с сервером. Сериализуется. Данный объект может быть сериализован в/из XDTO. Тип XDTO, соответствующий данному объекту, определяется в пространстве имен { http://v8.1c.ru/8.1/data/core}. Имя типа XDTO: ValueListType

Мне например нужно сделать чтобы относительно того что хранится в СЗ - что-то происходило у пользователя на форме. Например как в первом моем посте. Пользователь выбрал обеды, которые хранятся в неком СЗ. Потом выбранные варианты передались опять на сервер и там что-то сделалось.
...
Рейтинг: 0 / 0
19.07.2011, 17:40
    #37358210
XenoX
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Сериализация
dimbasbearXenoXТак вроде списокзначений и прочие няшки не поддерживаются на клиенте, если передать влоб то будет что-то вроде "отсутсвует отображение для ....." вы вот это вот сериализованное нечто потом как хотите использовать?

Из справки:

авторДоступность:

Тонкий клиент, веб-клиент, сервер, толстый клиент, внешнее соединение.
Возможен обмен с сервером. Сериализуется. Данный объект может быть сериализован в/из XDTO. Тип XDTO, соответствующий данному объекту, определяется в пространстве имен { http://v8.1c.ru/8.1/data/core}. Имя типа XDTO: ValueListType

Мне например нужно сделать чтобы относительно того что хранится в СЗ - что-то происходило у пользователя на форме. Например как в первом моем посте. Пользователь выбрал обеды, которые хранятся в неком СЗ. Потом выбранные варианты передались опять на сервер и там что-то сделалось.

Так вы посмотрите как типовые решения под УФ решают данную задачу, сериализаций списокв значений там точно нет, все через реквизиты формы делается :)
...
Рейтинг: 0 / 0
19.07.2011, 17:41
    #37358213
dimbasbear
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Сериализация
XenoXdimbasbearпропущено...


Из справки:

пропущено...


Мне например нужно сделать чтобы относительно того что хранится в СЗ - что-то происходило у пользователя на форме. Например как в первом моем посте. Пользователь выбрал обеды, которые хранятся в неком СЗ. Потом выбранные варианты передались опять на сервер и там что-то сделалось.

Так вы посмотрите как типовые решения под УФ решают данную задачу, сериализаций списокв значений там точно нет, все через реквизиты формы делается :)

Спасибо! .Просто думал что можно как-то обойтись без них.
...
Рейтинг: 0 / 0
19.07.2011, 17:42
    #37358214
XenoX
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Сериализация
dimbasbearXenoXпропущено...


Так вы посмотрите как типовые решения под УФ решают данную задачу, сериализаций списокв значений там точно нет, все через реквизиты формы делается :)

Спасибо! .Просто думал что можно как-то обойтись без них.

Незачто, там итак "подарков" хватает, оставьте себе хотябы плюшки в виде реквизитов формы
...
Рейтинг: 0 / 0
19.07.2011, 17:46
    #37358219
dimbasbear
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Сериализация
XenoXdimbasbearпропущено...


Спасибо! .Просто думал что можно как-то обойтись без них.

Незачто, там итак "подарков" хватает, оставьте себе хотябы плюшки в виде реквизитов формы

ага. :) В принципе тема закрыта, разобрался, спасибо всем за ответы!
...
Рейтинг: 0 / 0
Форумы / [игнор отключен] [закрыт для гостей] / Сериализация / 18 сообщений из 18, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]