Имя: Пароль:
1C
1С v8
Нужна помощь в "кормлении" web сервиса
0 alexarchangel
 
06.04.17
10:56
Добрый день, необходимо обратится к сервис, пока он просил строковые типы все было просто и понятно что ему давать (type="s:string"), но сейчас ему нужен (type="tns:ArrayOfDelivery") подскажите как сделать эту штуку в 1С.
http://nk.rossko.ru/service/v1/GetCheckout?wsdl - сервис
Определение = Новый WSОпределения("http://nk.rossko.ru/service/v1/GetCheckout?wsdl",,,,20);
    ПространствоИмен = "http://nk.rossko.ru/";;
    ИмяСервиса = "Checkout";    ИмяТочкиПодключения = "CheckoutSoap";
    Запрос = Новый WSПрокси(Определение, ПространствоИмен, ИмяСервиса, ИмяТочкиПодключения,,40);
    //Фабрика = Запрос.ФабрикаXDTO;
    Ответ = Запрос.GetCheckout("строка", "строка","строка", type="tns,type="tns,type="tns,true,type="tns,true); //параметры образные
1 vi0
 
06.04.17
12:09
попробуй по аналогии

URIПространстваИмен = Прокси.Определение.Сервисы[0].URIПространстваИмен;

Элемент1ТипXDTO = Прокси.ФабрикаXDTO.Тип(URIПространстваИмен, "Элемент1");
Список1ТипXDTO = Прокси.ФабрикаXDTO.Тип(URIПространстваИмен, "Список1");

Список1XDTO = ФабрикаXDTO.Создать(Список1ТипXDTO);

// добавление элемента в список
Элемент1XDTO = ФабрикаXDTO.Создать(Элемент1ТипXDTO, Значение1);
Список1XDTO.Элемент1.Добавить(Элемент1XDTO);
2 vi0
 
06.04.17
12:10
это пример если элемент простого типа
3 toypaul
 
гуру
06.04.17
12:27
чтобы передать "сложный" тип нужно сначала его (тип) получить из фабрики. потом создать по нему объект. и этот объект передать.

пример в (1)
Закон Брукера: Даже маленькая практика стоит большой теории.