Примеры кода реализации работы с API
1С
Получение информации о заказе со списком товарных позиций
Функция ТранспортЗаказовОтВТТ(Знач СтруктураРезультата,Знач ТаблицаЗначений, НомерПоДаннымПоставщика, ЗаполнятьПрефикс = Истина, Префикс, ПодготовитьДанныеДля1С77 = Ложь) СтруктураАвторизации = ПолучитьСтруктуруАвторизацииВТТ(); ВСОпределение = Новый WSОпределения(СтруктураАвторизации.СсылкаWSDL); ВССервис = ВСОпределение.Сервисы.Получить("http://portal.vtt.ru","PortalService"); ВТочкаВхода = ВССервис.ТочкиПодключения.Получить("BasicHttpBinding_IPortalService"); ВФункция = ВТочкаВхода.Интерфейс.Операции.Получить("GetOrderWithLines"); ВСПрокси = Новый WSПрокси(ВСОпределение,"http://portal.vtt.ru","PortalService","BasicHttpBinding_IPortalService"); Ответ = ВСПрокси.GetOrderWithLines(СтруктураАвторизации.Логин,СтруктураАвторизации.Пароль,НомерПоДаннымПоставщика); СтруктураРезультата.НомерПоДаннымПоставщика = Ответ.Id; СтруктураРезультата.ДатаПоДаннымПоставщика = Ответ.CreationDate; СтруктураРезультата.НомерПоступления = Ответ.InvoiceId; СтруктураРезультата.ДатаПоступления = Ответ.InvoiceDate; СтруктураРезультата.Валюта = Ответ.Currency; СтруктураРезультата.Статус = Ответ.Status; СтруктураРезультата.ДатаАктуальности = ТекущаяДата(); Для каждого СтрокаОтвета Из Ответ.Lines.OrderLineDto Цикл НоваяСтрока = ТаблицаЗначений.Добавить(); Если ЗаполнятьПрефикс Тогда НоваяСтрока.Идентификатор = Префикс + СокрЛП(СтрокаОтвета.ItemId); КонецЕсли; НоваяСтрока.Наименование = СокрЛП(СтрокаОтвета.Name); НоваяСтрока.Запрошено = СтрокаОтвета.ReservedQuantity; НоваяСтрока.Зарезервировано = СтрокаОтвета.Quantity; НоваяСтрока.Цена = СтрокаОтвета.UnitPrice; НоваяСтрока.Сумма = СтрокаОтвета.TotalPrice; НоваяСтрока.НомерГТД = СокрЛП(СтрокаОтвета.GtdNumber); НоваяСтрока.СтранаПроисхождения = СокрЛП(СтрокаОтвета.GtdCountry); КонецЦикла; СтруктураРезультата.Товары = ТаблицаЗначений;; Возврат СтруктураРезультата; КонецФункции
Создание заказа и добавление товаров в заказ
Функция ТранспортЗаказовВВТТ(МассивДляВыгрузки) СтруктураАвторизации = ПолучитьСтруктуруАвторизацииВТТ(); ВСОпределение = Новый WSОпределения(СтруктураАвторизации.СсылкаWSDL); ВССервис = ВСОпределение.Сервисы.Получить("http://portal.vtt.ru", "PortalService"); ВТочкаВхода = ВССервис.ТочкиПодключения.Получить("BasicHttpBinding_IPortalService"); ВФункцияСоздания = ВТочкаВхода.Интерфейс.Операции.Получить("CreateOrder"); ВфункцияДобавления = ВТочкаВхода.Интерфейс.Операции.Получить("AddItem"); Фабрика = ВСОпределение.ФабрикаXDTO; ВСПрокси = Новый WSПрокси(ВСОпределение, "http://portal.vtt.ru", "PortalService", "BasicHttpBinding_IPortalService"); ТипОбъектаСозданияLine = ВФункцияСоздания.Параметры.Получить("lines").Тип; ТипОбъектаСозданияСтрока = ТипОбъектаСозданияLine.Свойства.Получить("OrderLineCreationDto").Тип; ТипОбъектаДобавленияItem = ВфункцияДобавления.Параметры.Получить("item").Тип;
PHP
Получение настроек
код