Имя: Пароль:
1C
1С v8
массив в вебсервисе
0 MiniMuk
 
09.06.14
09:39
Добрый день
Есть массив описанный в wsdl описании сервиса как

<s:complexType name="ArrayOfInt">
<s:sequence>
<s:element minOccurs="0" maxOccurs="unbounded" name="SERVICESId" type="s:int"/>
</s:sequence>
</s:complexType>

Загружаю описание сервиса, создаю переменную

Сервер = WSСсылки.dol.СоздатьWSПрокси("...", "DOLService", "DOLServiceSoap");
SERVICES =  Сервер.ФабрикаXDTO.Тип("...", "ArrayOfInt");

    
а как в фабрику массив передать?
ЗначениеCONNECTIONS = СерверБилайн.ФабрикаXDTO.Создать(PaySystemsId, ????);
  Массив(1,1) проканает? как оно должно работать? не совсем понимаю
1 MiniMuk
 
09.06.14
09:40
сорри создание значения
ЗначениеCONNECTIONS = Сервер.ФабрикаXDTO.Создать(SERVICES, ????);
2 Fragster
 
гуру
09.06.14
09:50
ЫЫ = Создать(SERVICES);
ЫЫ.Добавить(Сервер.ФабрикаXDTO.Создать(ТипINT, 12));

а если бы был тип сложный, то
ЫЫ.Добавить(ОбъектСложногоТипа);
3 MiniMuk
 
09.06.14
09:53
(2) как создать объект сложного типа если это массив чисел?
4 Fragster
 
гуру
09.06.14
09:53
(3) а у тебя это числа. массив простых объектов
5 Fragster
 
гуру
09.06.14
09:53
Для Сч = 1 По 100500 Цикл
ЫЫ.Добавить(Сервер.ФабрикаXDTO.Создать(ТипINT, Сч));
КонецЦикла
6 Fragster
 
гуру
09.06.14
09:55
Вообще непонятно, почему в СписокXDTO можно добавлять только ЗначениеXDTO или ОбъектXDTO. почему не сделали автопреобразование примитивных типов как с реквизитами объектовXDTO - непонятно
7 Fragster
 
гуру
09.06.14
09:56
задолбались, наверное
8 MiniMuk
 
09.06.14
09:56
(5) Спасибо
9 MiniMuk
 
09.06.14
10:04
(7) а может еще спец по сертификатам? у меня сервис по https
на клиенте 3 сертификата корневой от сервиса и на двух пользователей. каждому пользователю раздают разные  данные. сейчас по всдл собираю хмл и оправляю через Новый COMОбъект("WinHttp.WinHttpRequest.5.1") а хотелось бы в теории  и оправлять через wsсылку, вот только как туда прикрутить сертификат читаю читаю не понимаю
10 Fragster
 
гуру
09.06.14
12:16
(9) в 1с с сертификатами ЖП была когда-то (как сейчас - не знаю), делал через stunnel проброс на локальный нешифрованный порт
Глупец, лишенный способности посмеяться над собой вместе с другими, не сможет долго выносить программирование. Фредерик Брукс-младший