#0
by AllJoke
День добрый всем. Вопрос возник в следующем. По примере подключения ws-ссылок на ЦБРФ пытаюсь подрубиться к нашему тестовому веб-сервису. Разница там в расщирениях asmx(ЦБРФ) и svc(НашВебСервис). Код следующий: В чем может быть беда? МОжет ли это в каких либо ограничениях? Платформа 8.2.14.540
#2
by Serginio1
Ну тебе нужно заполнить все параметры и проверить тип параметра? А не проще тип получить через СервисОхБил.ФабрикаXDTO.Тип("http://tower.ru/requestTest","Message");
#3
by AllJoke
А не в курсе как заполняются составные объекты? Например у меня в Message есть Adress, он составной (берётся из Message_Adress). Как мне его заполнить? Типа: И вот этот полученный список значений нужно запихнуть в Message.Adress.
#7
by AllJoke
кстати - типы параметров везде строковые, кроме Address и PlaceOfBirth - они составные. Но и там все "строка".
#8
by Serginio1
Вообще 1С плохо как то с высокой вложенностью. Уже сейчас не помню, но мучился. Если бы параметры не были заполнены то ругалсьбы на незаполненные параметры. Попробуй для интереса .__content заменить? Или посмотреть на структуру
#10
by Serginio1
Или можешь использовать сначало простую структуру. Затем добавить составную итд. Для того что бы понять откуда ноги растут.
#12
by Саша Питерский
Если указанный веб сервис в виде wsссылки загрузить в конфигурацию, то какой тип будет у параметра веб сервиса с операцией operation1? Параметр_Message является ли типом ОбъектXDTO и совпадает ли его тип значения с типом, который указан в качестве параметра operation1?
#14
by AllJoke
тип будет у параметра веб сервиса с операцией operation1 - Тип "Message" воторое щас проверю.
#18
by AllJoke
имеется ввиду что здесь - Параметр_Message - содержатся же только свойства, т.е. не могу я посомтреть тип. А вот кстати наводящая мысль, которая пришла после вопросов: Так выдаёт ошибку - Несоотв-ие параметров, параметр 2
#20
by AllJoke
{Обработка.Обработка1.Форма.Форма.Форма}: Ошибка при вызове метода контекста (Создать) part = СервисОхБил.ФабрикаXDTO.Создать(ТипПараметра_Message, Параметр_Message); по причине: Несоответствие типов (параметр номер '2')
#25
by Саша Питерский
Внимательно посмотрел твой код в , вроде код правильный. Потом посмотрел картинку в , у меня родилось единственное предположение, что у тебя Свойство и Тип объекта называются одинаково, возможно это причина ошибки? Попробуй тип объекта переименовать в MessageType
#27
by Саша Питерский
На картинке из есть группа Типы объектов. Первый из них называется Message. Вот его предлагаю переименовать. Переименовывать конечно в модели сервиса.
#28
by AllJoke
{Обработка.Обработка1.Форма.Форма.Форма}: Ошибка при вызове метода контекста (Создать) part = СервисОхБил.ФабрикаXDTO.Создать(ТипПараметра_Message, Параметр_Message); по причине: Несоответствие типов (параметр номер '2')
#32
by Serginio1
Какой то странный у тебя <PlaceOfBirth code="11">001</PlaceOfBirth> сравни с Address
#37
by Саша Питерский
Тогда без доступа к коду у меня закончились предположения. Можно еще попробовать Параметр_Message.Проверить сделать, может объект неправильно заполнен. Попробуй указать вторым параметром имя типа строкой.
#39
by AllJoke
Параметр_Message.Проверить - {}: Обращение к процедуре объекта как к функции (Проверить)
#43
by Serginio1
.__content? Попробуй создать метод который принмает структуру без PlaceOfBirth. Если не будет ошибки значит проблема в ней
#59
by Serginio1
То есть это не 1С вэб сервис? У меня вообще сейчас 8 ки нет. А вообще не все форматы 1С понимает. Приходится использовать наприме C#. Если нельзя сервисописателей подвинуть. Ну а так нужны структуры совместимые с 1С. И все стараются писть так, что бы и 1С понимало
#60
by AllJoke
Нет. Это сервис от BizTalk. Пытаемся тестовый сделать. Я так и думал что 1С не всё понимает. Поговорю с нашими писателями, может чего накумекают.
#62
by Serginio1
А вообще попробуй пойти по другому пути. Создать пакет в 1С. Экспортировать схему. А в биз талке её импортировать.
#63
by AllJoke
в продолжении темы. Решил оттестить веб-сервис ЗАГСа. Там в него закладываются три параметра: Делаю так: {Обработка.Обработка1.Форма.Форма.Форма}: Ошибка при вызове метода контекста (getDaysZB) по причине: Ошибка вызова операции сервиса: { по причине: Неизвестная ошибка. Ошибка преобразования данных XDTO: Чтение объекта типа: { - [1,227] Проверка дополнительного свойства: форма: Элемент имя: item по причине: Ошибка преобразования данных XDTO: Чтение объекта типа: { - [1,227] Проверка дополнительного свойства: форма: Элемент имя: item по причине: Ошибка проверки данных XDTO: Структура объекта не соответствует типу: {
#65
by AllJoke
Может мне кто-нибудь объяснить с какими вообще веб-сервисами дружит 1С. Я уже беру самый наипростейший, с двумя параметрами: строка и перечесление, - и всё равно ошибка "Структура объекта не соответствует типу". Хотя с сервисом ЦБРФ всё проходит на ура.
#66
by Serginio1
Ну вообщето если тип в параметре не AnyType то можно передавать параметры без преобразования к объекту XDTO По поводу массивов в примере C# я не нашел решение. Хотя можно добавлять значения как атрибут. Кстати а как отображается тип данных
#68
by AllJoke
Вот банальщина: У метода "getMinMaxDaysZB" два параметра: idZags - тип "string", torj - тип "EnumZBTorj". Почему же он ругается??? Метод возращает значение типа - "DateRange (". Ругается на всё ту же структуру и всё. Что ей (1С) надо....?
#72
by Serginio1
Так какую ошибку выдает? В первом случае ругалось на dateTimeArray Опять же можно и проще Рез = СервисЗАГС.getMinMaxDaysZB("0030", Парам_EnumZBTorj);
#74
by AllJoke
Уже выдаёт ошибку: Структура объекта не соответствует типу: { Теперь про уточнение - если я в коде каждый тип уточняю, это разве не верно? Как то разве влияет? И вообще, 1С толком не даёт вразумительных ответом по ошибке. Что за структура, какого объекта, типу я так понял "DateRange"/
#75
by AllJoke
И ещё, может и вправду 1С ни со всеми веб-сервисами дружит. На примере ЦБРФ всё проходит на ура. Правда там и параметр один, но всё же.
#76
by Serginio1
А где запись данных в Парам_Range А зачем плодить лишние сущности,там где можно обойтись бе уточнения типа? Очень много структур и массивов не понимает. Смотри 59 (1 и 8)
#78
by AllJoke
Это сейчас не актуально. Я уже без дат делаю. Должен возвратить две даты, такак в редакторе SOAP 4.0 работает.
#80
by Serginio1
То есть ругается на возвращаемый тип? Еще для 1С все out параметры должны идти в конце параметров. При чем если out параметр сделать не в конце 1С не ругнется, но при вызове ве равно поставит его в конец. А потом думай поставил одно а получил другое. Но это относистся к собственым сервисам
#82
by AllJoke
а ругается на структру объекта которая не соответствует типу. Что за структура? Какого объекта? Какому типу? Об этом информации воообще ноль!
#87
by Serginio1
Ну 1С не все понимает. Мало того, они еще и собственные структуры по разному записывать например СериализаторXDTO и ОбъектXDTO по той же схеме по разному запишут регистр сведений.
Тэги: 1С 8
Ответить:
Комментарии доступны только авторизированным пользователям
Похожие вопросы 1С
В этой группе 1С
- Параметры сеанса, инициализация. Косяки:))
- Единицы измерения для разных группировок в СКД
- СКД Открыть документ по двойному клику на ячейке отчета
- Передача двоичных данных в MS SQL из 1С ?
- Анализ доступности товаров в УТ 10.3
- СКД: а как выбирать вариант отчета в обычном приложении (не УФ) ?
- Восстановление базы....
- СКД: Иерархия документов
- Обмен с узлом РИБ перестал работать УПП 1.3
- Конвертация данных не переносить пустой реквизит
- Запросы для обращения к другой базе из текущей
- Ошибка сохранения конфигурации в файл!
- Создание Налоговой накладной.
- Движения Расход в запросе
- СКД Поле не может быть использовано в группировке "Должность...
- Дали тестовое задание... задание номер 2.
- ЗУП Унифицированная форма т13(табель) вывод списка работников по подразделениям
- БГУ - изменение типа учреждения
- Корректировка поступления не попадает в книгу покупок. Подскажите куда копать?
- Нумерация документов в 1С 8.2