передача xml через веб-сервис
По теме из базы знаний
Найденные решения
(13) Переходом по этой ссылке результат не получить.
SOAP-сервисы так не работают.
Кроме пути к описанию сервиса - wsdl нужно в Microsoft Power BI указать еще имя сервиса, имя порта и имя метода, который будет возвращать данные.
Если нужно получать данные по ссылке - то нужно использовать скорее http-сервисы.
SOAP-сервисы так не работают.
Кроме пути к описанию сервиса - wsdl нужно в Microsoft Power BI указать еще имя сервиса, имя порта и имя метода, который будет возвращать данные.
Если нужно получать данные по ссылке - то нужно использовать скорее http-сервисы.
Остальные ответы
Подписаться на ответы
Инфостарт бот
Сортировка:
Древо развёрнутое
Свернуть все
Сейчас в конфигурации создан веб-сервис. В нем одна операция GetTable().
В свойстве тип возвращаемого значения установлено string (http://www.w3.org/2001/XMLSchema) .
Обработчик операции возвращает "Строку". При обращении к веб - сервису по ссылки из браузера получается результат приведенный в скриншоте. В нем нет данных вообще.
Рез22 = "<?xml version=""1.0"" encoding=""UTF-8"" ?>";
Рез22 = Рез22 + Символы.ПС + """<dataroot xmlns:od=""urn:s chemas-microsoft-com:officedata"" generated=""2017-02-28T14:47:49"">""";
Выборка = РезультатЗапроса.Выбрать();
Пока Выборка.Следующий() Цикл
Рез22 = Рез22 + Символы.ПС + "<PowerBI>";
//Период
НачалоСтрокиАтрибута = "<" + "Период" + ">";
ОкончаниеСтрокиАтрибута = "</" + "Период" + ">";
Значения = Формат(Выборка.Период,"ДФ=dd.MM.yyyy");
Рез22 = Рез22 + Символы.ПС + НачалоСтрокиАтрибута + Значения + ОкончаниеСтрокиАтрибута;
//Ответственный
НачалоСтрокиАтрибута = "<" + "Ответственный" + ">";
ОкончаниеСтрокиАтрибута = "</" + "Ответственный" + ">";
Значения = ?(ЗначениеЗаполнено(Выборка.Ответственный), СТРОКА(Выборка.Ответственный), "");
Рез22 = Рез22 + Символы.ПС + НачалоСтрокиАтрибута + Значения + ОкончаниеСтрокиАтрибута;
//Регион
НачалоСтрокиАтрибута = "<" + "Регион" + ">";
ОкончаниеСтрокиАтрибута = "</" + "Регион" + ">";
Значения = ?(ЗначениеЗаполнено(Выборка.Регион), СТРОКА(Выборка.Регион), "");
Рез22 = Рез22 + Символы.ПС + НачалоСтрокиАтрибута + Значения + ОкончаниеСтрокиАтрибута;
//НоменклатурнаяГруппа
НачалоСтрокиАтрибута = "<" + "НоменклатурнаяГруппа" + ">";
ОкончаниеСтрокиАтрибута = "</" + "НоменклатурнаяГруппа" + ">";
Значения = ?(ЗначениеЗаполнено(Выборка.НоменклатурнаяГруппа), СТРОКА(Выборка.НоменклатурнаяГруппа), "");
Рез22 = Рез22 + Символы.ПС + НачалоСтрокиАтрибута + Значения + ОкончаниеСтрокиАтрибута;
//Количество
НачалоСтрокиАтрибута = "<" + "Количество" + ">";
ОкончаниеСтрокиАтрибута = "</" + "Количество" + ">";
Значения = Выборка.Количество;
Рез22 = Рез22 + Символы.ПС + НачалоСтрокиАтрибута + Значения + ОкончаниеСтрокиАтрибута;
//Выручка
НачалоСтрокиАтрибута = "<" + "Выручка" + ">";
ОкончаниеСтрокиАтрибута = "</" + "Выручка" + ">";
Значения = Выборка.СуммаВыручки;
Рез22 = Рез22 + Символы.ПС + НачалоСтрокиАтрибута + Значения + ОкончаниеСтрокиАтрибута;
//Прибыль
НачалоСтрокиАтрибута = "<" + "Прибыль" + ">";
ОкончаниеСтрокиАтрибута = "</" + "Прибыль" + ">";
Значения = Выборка.Прибыль;
Рез22 = Рез22 + Символы.ПС + НачалоСтрокиАтрибута + Значения + ОкончаниеСтрокиАтрибута;
Рез22 = Рез22 + Символы.ПС + "</PowerBI>";
КонецЦикла;
Возврат Рез22;
В свойстве тип возвращаемого значения установлено string (
Обработчик операции возвращает "Строку". При обращении к веб - сервису по ссылки из браузера получается результат приведенный в скриншоте. В нем нет данных вообще.
Рез22 = "<?xml version=""1.0"" encoding=""UTF-8"" ?>";
Рез22 = Рез22 + Символы.ПС + """<dataroot xmlns:od=""urn:s chemas-microsoft-com:officedata"" generated=""2017-02-28T14:47:49"">""";
Выборка = РезультатЗапроса.Выбрать();
Пока Выборка.Следующий() Цикл
Рез22 = Рез22 + Символы.ПС + "<PowerBI>";
//Период
НачалоСтрокиАтрибута = "<" + "Период" + ">";
ОкончаниеСтрокиАтрибута = "</" + "Период" + ">";
Значения = Формат(Выборка.Период,"ДФ=dd.MM.yyyy");
Рез22 = Рез22 + Символы.ПС + НачалоСтрокиАтрибута + Значения + ОкончаниеСтрокиАтрибута;
//Ответственный
НачалоСтрокиАтрибута = "<" + "Ответственный" + ">";
ОкончаниеСтрокиАтрибута = "</" + "Ответственный" + ">";
Значения = ?(ЗначениеЗаполнено(Выборка.Ответственный), СТРОКА(Выборка.Ответственный), "");
Рез22 = Рез22 + Символы.ПС + НачалоСтрокиАтрибута + Значения + ОкончаниеСтрокиАтрибута;
//Регион
НачалоСтрокиАтрибута = "<" + "Регион" + ">";
ОкончаниеСтрокиАтрибута = "</" + "Регион" + ">";
Значения = ?(ЗначениеЗаполнено(Выборка.Регион), СТРОКА(Выборка.Регион), "");
Рез22 = Рез22 + Символы.ПС + НачалоСтрокиАтрибута + Значения + ОкончаниеСтрокиАтрибута;
//НоменклатурнаяГруппа
НачалоСтрокиАтрибута = "<" + "НоменклатурнаяГруппа" + ">";
ОкончаниеСтрокиАтрибута = "</" + "НоменклатурнаяГруппа" + ">";
Значения = ?(ЗначениеЗаполнено(Выборка.НоменклатурнаяГруппа), СТРОКА(Выборка.НоменклатурнаяГруппа), "");
Рез22 = Рез22 + Символы.ПС + НачалоСтрокиАтрибута + Значения + ОкончаниеСтрокиАтрибута;
//Количество
НачалоСтрокиАтрибута = "<" + "Количество" + ">";
ОкончаниеСтрокиАтрибута = "</" + "Количество" + ">";
Значения = Выборка.Количество;
Рез22 = Рез22 + Символы.ПС + НачалоСтрокиАтрибута + Значения + ОкончаниеСтрокиАтрибута;
//Выручка
НачалоСтрокиАтрибута = "<" + "Выручка" + ">";
ОкончаниеСтрокиАтрибута = "</" + "Выручка" + ">";
Значения = Выборка.СуммаВыручки;
Рез22 = Рез22 + Символы.ПС + НачалоСтрокиАтрибута + Значения + ОкончаниеСтрокиАтрибута;
//Прибыль
НачалоСтрокиАтрибута = "<" + "Прибыль" + ">";
ОкончаниеСтрокиАтрибута = "</" + "Прибыль" + ">";
Значения = Выборка.Прибыль;
Рез22 = Рез22 + Символы.ПС + НачалоСтрокиАтрибута + Значения + ОкончаниеСтрокиАтрибута;
Рез22 = Рез22 + Символы.ПС + "</PowerBI>";
КонецЦикла;
Возврат Рез22;
Прикрепленные файлы:

(6)wsdl - это описание веб-сервиса
https://ru.wikipedia.org/wiki/WSDL
из ссылки нужно убрать с конца "?wsdl"
из ссылки нужно убрать с конца "?wsdl"
(11)В Microsoft Power BI передается ссылка /DataExchange/ws/DataExchange.1cws?wsdl.
После этого в Power BI должен получить по этой ссылке файл xml c данными.
То есть, запрос мы нигде не формируем специально. Нужно что то доделать в 1С. Или оно так не работает?
Мне нужно при переходе по этой ссылке в Microsoft Power BI нужно получить результат работы функции веб-сервиса GetData().
После этого в Power BI должен получить по этой ссылке файл xml c данными.
То есть, запрос мы нигде не формируем специально. Нужно что то доделать в 1С. Или оно так не работает?
Мне нужно при переходе по этой ссылке в Microsoft Power BI нужно получить результат работы функции веб-сервиса GetData().
(13) Переходом по этой ссылке результат не получить.
SOAP-сервисы так не работают.
Кроме пути к описанию сервиса - wsdl нужно в Microsoft Power BI указать еще имя сервиса, имя порта и имя метода, который будет возвращать данные.
Если нужно получать данные по ссылке - то нужно использовать скорее http-сервисы.
SOAP-сервисы так не работают.
Кроме пути к описанию сервиса - wsdl нужно в Microsoft Power BI указать еще имя сервиса, имя порта и имя метода, который будет возвращать данные.
Если нужно получать данные по ссылке - то нужно использовать скорее http-сервисы.
(6)
Вот как у меня
опр = WSСсылки.WSTest.ПолучитьWSОпределения();
сервис0 = опр.Сервисы[0];
сервис = Новый WSПрокси(опр, сервис0.URIПространстваИмен, сервис0.Имя, сервис0.ТочкиПодключения[0].Имя);
Сервис.Пользователь = "WS";
Сервис.Пароль = "ws64ws";
рез = сервис.getPlombes(уид);
Чтение = новый ЧтениеXML;
Чтение.УстановитьСтроку(рез);
Попытка
массивПломб = ФабрикаXDTO.ПрочитатьXML(Чтение,ФабрикаXDTO.Тип("http://www.dc.org","МассивПломб"));
Исключение
Сообщить("Ошибка чтения набора записей
|" + ОписаниеОшибки());
Возврат тз;
КонецПопытки;
Вот как у меня
опр = WSСсылки.WSTest.ПолучитьWSОпределения();
сервис0 = опр.Сервисы[0];
сервис = Новый WSПрокси(опр, сервис0.URIПространстваИмен, сервис0.Имя, сервис0.ТочкиПодключения[0].Имя);
Сервис.Пользователь = "WS";
Сервис.Пароль = "ws64ws";
рез = сервис.getPlombes(уид);
Чтение = новый ЧтениеXML;
Чтение.УстановитьСтроку(рез);
Попытка
массивПломб = ФабрикаXDTO.ПрочитатьXML(Чтение,ФабрикаXDTO.Тип("http://www.dc.org","МассивПломб"));
Исключение
Сообщить("Ошибка чтения набора записей
|" + ОписаниеОшибки());
Возврат тз;
КонецПопытки;
Для получения уведомлений об ответах подключите телеграм бот:
Инфостарт бот