HelpF.pro

Подключение к web-сервису и получение от него описание типа

Подключается к 1с82 web-сервису, получает от него описание типа
Создает переменную этого типа, Создает файл (dbf обмена).
Помещает файл в переменную и отдает на web-сервис для обработки, получает от него результат обработки
Код 1C v 8.х
 Определение = Новый WSОпределения(Server, User, Pass);

Прокси = Новый WSПрокси(Определение, "http://www.anton.fly7.ru", "Obmen", "ObmenSoap");
Прокси.Пользователь = User;
Прокси.Пароль = Pass;

Тип = Прокси.ФабрикаXDTO.Тип("http://www.anton.fly7.ru", "ФайлОбмена");
ФайлОбмена = Прокси.ФабрикаXDTO.Создать(Тип);

Файл = Новый Файл(КаталогВременныхФайлов() + "dat.dbf"); i=1;
Пока Файл.Существует() Цикл

Файл = Новый Файл(КаталогВременныхФайлов() + "dat" + i + ".dbf");
i=i+1;

КонецЦикла;

ДБ = Новый XBase;
ЗаполнитьПоляДБ(ДБ, ТабСвойств);
ДБ.СоздатьФайл(Файл.ПолноеИмя);
ДБ.АвтоСохранение = Истина;

ДБ.Добавить();
ДБ.Artik = Номенклатура.Артикул;
ДБ.Name = Строка(Номенклатура);
ДБ.NomGrup = Строка(Номенклатура.ТипНоменклатуры);
ДБ.VidNom = Строка(Номенклатура.ВидНоменклатуры);
ДБ.Group = ПолучитьГруппу(Номенклатура);
ДБ.Strana = "";
ДБ.Pol = "";

ДБ.Записать();
ДБ.ЗакрытьФайл();

ФайлДвоичныеДанные = Новый ДвоичныеДанные(Файл.ПолноеИмя);
ФайлаХранилищеЗначения = Новый ХранилищеЗначения(ФайлДвоичныеДанные, Новый СжатиеДанных(9));

ФайлОбмена.ТипФайла = 1;
ФайлОбмена.ИмяФайла = "data_" + СокрЛП(СсылкаНаОбъект.Номер) + ".dbf";
ФайлОбмена.Данные = ФайлаХранилищеЗначения.Получить();

УдалитьФайлы(Файл.ПолноеИмя);

Результат = Прокси.LoadDocs(ФайлОбмена);

Если ЗначениеЗаполнено(Результат) Тогда
ОбщегоНазначенияКлиентСервер.СообщитьПользователю(Результат);
КонецЕсли;

Автор: Абазин Антон
Опубликовано на сайте: https://HelpF.pro
Прямая ссылка: https://HelpF.pro/faq82/view/1322.html