Имя: Пароль:
1C
1С v8
Web сервис - Передать массив
, ,
0 Gateways
 
25.06.19
21:44
Прывет Всем! Я не русскый так что простите за граматику :) так, создаль веб-сервис, возвращаемое значение хочу массив и выбираю тип - Array (http://v8.1c.ru/8.1/data/core)

код :

&НаКлиенте
Процедура Команда1(Команда)
    Команда1НаСервере();
КонецПроцедуры

&НаСервере
Процедура Команда1НаСервере()
    массив = Новый массив;
    ЗащищенноеСоединение = Новый ЗащищенноеСоединениеOpenSSL();
    Определение = Новый WSОпределения("blablabla,"blabla","");
    Прокси = Новый WSПрокси(Определение,"blablabla","My_Test_ws","My_Test_wsSoap");
    Фабрика = Прокси.ФабрикаXDTO;
    рез = прокси.ReturnDocs(массив);
    КонецПроцедуры


и получаю ошибку Несоответствие типов (параметр номер '1')
когда я изменаю тип  на строку и Передаю в функцию строку все работает...

как передать массив?
1 Широкий
 
25.06.19
22:12
Предположу что твой параметр нужно преобразовать в XDTO :)
2 dmpl
 
25.06.19
22:13
СериализаторXDTO используй для преобразования массива в/из ОбъектXDTO.
3 Gateways
 
25.06.19
22:16
а как это сделать?
4 dmpl
 
25.06.19
22:23
(3) Ну, есть у этого объекта пара методов - ЗаписатьXDTO() и ПрочитатьXDTO().
5 Gateways
 
25.06.19
22:36
(4) можно пример? пожалуйста
6 Широкий
 
25.06.19
22:41
7 Gateways
 
25.06.19
23:03
все сделаль и работает спс всем!

ОбъектXDTO = СериализаторXDTO.ЗаписатьXDTO(массив);

и тип anyType (http://www.w3.org/2001/XMLSchema)
8 Gateways
 
26.06.19
00:57
еще 1 вопрос, как можно передать таблицу значениий?
9 DGorgoN
 
26.06.19
02:28
(8) Переделать её в массив?
10 DGorgoN
 
26.06.19
02:28
Само собой без сложных 1с-ных полей, только строка/число
11 Галахад
 
гуру
26.06.19
04:21
(8) Да так же.
Основная теорема систематики: Новые системы плодят новые проблемы.