![]() |
![]() |
![]() |
|
MS SOAP и НЕ примитивные параметры веб сервиса | ☑ | ||
---|---|---|---|---|
0
Balonbl4
26.09.12
✎
12:16
|
На форуме уже была подобная тема, но там обсуждение ничем полезным не закончилось. Может быть у кого нибудь есть положительный опыт?
Проблема состоит в том, что непонятно как перевести код из примера документации MS SOAP на VB в код на 1С: Connector.Property("EndPointURL") = СтрокаСАдресомВебСервиса Старая тема здесь: v8: v8: Передача неявного параметра в COMОбъект |
|||
1
orefkov
26.09.12
✎
12:18
|
msscriptcontrol уже не моден?
|
|||
2
Balonbl4
26.09.12
✎
12:19
|
Сразу опишу, что пробовал:
КомОбъектWS.Property.EndPointURL = СтрокаСАдресомВебСервиса ; КомОбъектWS.Property[EndPointURL] = СтрокаСАдресомВебСервиса ; КомОбъектWS.Property("EndPointURL") = СтрокаСАдресомВебСервиса ; КомОбъектWS.Property("EndPointURL,СтрокаСАдресомВебСервиса"); |
|||
3
Balonbl4
26.09.12
✎
12:21
|
(1) При попытке вызова скрипта из 1С получаю сообщение "Невозможно создание объекта контейнером ActiveX: 'MSSOAP.HttpConnector'"
Сам скрипт отдельным файлом успешно выполняется. |
|||
4
orefkov
26.09.12
✎
12:48
|
Попробуй
КомОбъектWS.put_Property("EndPointURL,СтрокаСАдресомВебСервиса") |
|||
5
orefkov
26.09.12
✎
12:49
|
Вернее
КомОбъектWS.put_Property("EndPointURL", СтрокаСАдресомВебСервиса); |
|||
6
Balonbl4
26.09.12
✎
12:51
|
(5) Нет такого метода, setProperty тоже пробовал, и в документации таких методов тоже нет.
|
|||
7
drcrasher
26.09.12
✎
14:38
|
(6) у проперти тип какой?
а у EndPointURL? |
|||
8
Nexux
26.09.12
✎
19:56
|
так не получится устанавливать свойства у ms soap в восьмерке, надо заворачивать в VB скрипт например
|
|||
10
Fragster
гуру
26.09.12
✎
20:06
|
Определение = Новый WSОпределения(СсылкаНаОпределение);
//Для каждого Сервис Из Определение.Сервисы Цикл // Сообщить(Сервис.Имя); // // Для каждого ТочкаПодключения Из Сервис.ТочкиПодключения Цикл // Сообщить(ТочкаПодключения.Имя, СтатусСообщения.БезСтатуса); // Для каждого Операция Из ТочкаПодключения.Интерфейс.Операции Цикл // ВозвращаемоеЗначение = Операция.ВозвращаемоеЗначение; // Сообщить(Операция.Имя + " " + ВозвращаемоеЗначение.Тип + " " + ВозвращаемоеЗначение.ВозможноПустое + " " + ВозвращаемоеЗначение.Документация); // Для каждого Параметр Из Операция.Параметры Цикл // Сообщить(Символы.Таб + Параметр.Имя + " " + Параметр.НаправлениеПараметра + " " + Параметр.Тип + " пустой: " + Параметр.ВозможноПустой); // КонецЦикла; // КонецЦикла; // КонецЦикла; // //КонецЦикла; Сервис = Определение.Сервисы[0]; ТочкаПолключения = Сервис.ТочкиПодключения[0]; Прокси = Новый WSПрокси(Определение, "УриПростанстваИмен", Сервис.Имя, ТочкаПолключения.Имя); Фабрика = Определение.ФабрикаXDTO; Если Ложь Тогда Фабрика = ФабрикаXDTO КонецЕсли; // проверка данных о картах: Объект = Фабрика.Создать(Фабрика.Тип("яяяяя", "яяяяяяя")); Карта = Фабрика.Создать(Фабрика.Тип("чччччччч", "ччччччччч")); Карта.ффффффф = фывфывфывфы; ....... Объект.фывфыв.Добавить(Карта); Результат = Прокси.ИмяМетода(Объект); |
|||
12
Fragster
гуру
26.09.12
✎
20:10
|
зачем использовать не 1сные механизьмы?
|
|||
13
Balonbl4
28.09.12
✎
15:01
|
(12) Потому что 1Ска не есть тот веб сервис, к которому я хочу подключиться
(8) VB скрипт ругается "Невозможно создание объекта контейнером ActiveX: 'MSSOAP.HttpConnector'" Вот текст скрипта: EndPointURL = "http://ip сервака/soa-infra/services/default/OncCVacationImportService/OneCService?WSDL"; Script= Новый COMОбъект("MSScriptControl.ScriptControl"); Текст ="Function Main1 |Set Connector = CreateObject(""MSSOAP.HttpConnector"") |Connector.Property(""EndPointURL"") =""" +ENDPOINTURL+""" |Connector.Connect |Main1 = Connector |End Function "; Script.Language="vbscript"; Script.AddCode(Текст); Коннектор = Script.run("Main1"); |
|||
14
Fragster
гуру
28.09.12
✎
15:15
|
(13).1 ну и что?
|
|||
15
Balonbl4
28.09.12
✎
15:18
|
(14) Хотел сказать "Не ест" - при попытке добавления ws - ссылки появляется сообщение "Ошибка формата" - и все, никаких диагностических данных.
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |