SOAP 1C
Создание заявки в web-сервисе
Исходными данными является документ Заявка в базе 1С с табличной частью Товары.
//Создание прокси для вызова web-сервиса. Определение = Новый WSОпределения("http://www.tbm.ru/tbm-services/ZkMainActionExtSoap1Port?wsdl"); Прокси = Новый WSПрокси(Определение,"http://www.tbm.ru/","ZkMainActionExtSoap1Service","ZkMainActionExtSoap1Port"); Прокси.Пользователь = ПараметрыСеанса.ПользовательТБМ; Прокси.Пароль = ПараметрыСеанса.ПарольТБМ;
Фабрика = Прокси.ФабрикаXDTO;
//Определение типа “navZkMainIn” пространства имен «http://www.tbm.ru/» (описывает Заявку на web-сервисе). Тип_navZkMainIn = Фабрика.Тип("http://www.tbm.ru/","navZkMainIn");
//Создание объекта «Заяв» с типом “navZkMainIn” пространства имен «http://www.tbm.ru/» Заяв = Фабрика.Создать(Тип_navZkMainIn);
//Получение типа "navZkOut" пространства имен "http://www.tbm.ru/" (описывает строку табличную часть Заявки на web- //сервисе). Тип_navZkOut = Фабрика.Тип("http://www.tbm.ru/","navZkOut");
// Заполнение полей объекта «Заяв» на основании документа Заявка. Заяв.comm = Заявка.Комментарий; // Комментарий Заяв.dataDost = Заявка.ДатаДоставки; // Дата доставки Заяв.isFast = Заявка.ПодтверждениеСчета.Код; // Вид подтверждение счета (код) Заяв.reserv = Заявка.РезервированиеТовара.Код; // Резервирование товара (код) Заяв.shifrFir = Заявка.Фирма.Код; // Фирма (код) Заяв.zdostself = Заявка.ТипДоставки.Код; // Тип доставки (код)
// Формирование поля «navZks» объекта «Заяв» на основании табличной части Товары документа Заявка. Для Каждого Стр Из Заявка.Товары Цикл НС = Фабрика.Создать(Тип_navZkOut); НС.art = Стр.Товар.Art; // Артикул ТБМ НС.kodTov = Стр.Товар.Код; // Товар (код) НС.kol = Стр.Заказано; // Заказанное количество НС.userart = Стр.АртикулКлиента; // Артикул клиента Заяв.navZks.Добавить(НС); КонецЦикла;
//Вызов метода «createZkMainTbm ()» web-сервиса для создания заявки с передачей ему в качестве параметра //сформированного объекта «Заяв». Отв = Прокси.createZkMainTbm(Заяв);