|
[Search] Поиск   [Recent Topics] Последние темы   [Hottest Topics] Горячие темы   [Members]  Список участников   [Groups] На главную страницу 
[Register] Регистрация / 
[Login] Вход 
Интеграция с 1С  XML
Индекс форума » Компонент МЕРКУРИЙ
Автор Сообщение
Андрей Любимов


Зарегистрирован: 17/10/2017 16:58:56
Сообщений: 12
Оффлайн

Мне просто интересно. На кой в IncomingOperation элементы consignment и vetCertificate имеют списочный тип, ЕСЛИ ТУДА ВСЕ РАВНО МОЖНО ЗАПИХАТЬ ТОЛЬКО ПО ОДНОМУ ЭЛЕМЕНТУ?
anig99


Зарегистрирован: 21/10/2016 20:05:29
Сообщений: 143
Оффлайн

anig99 wrote:Если у кого возникнет такая проблема, то на платформе 8.2.19.121 возникает ошибка
Определения = Новый WSОпределения("http://api.vetrf.ru/schema/platform/services/2.0-RC-last/ams-mercury-g2b.service_v2.0_pilot.wsdl");
по причине:
При создании описания сервиса произошла ошибка.
по причине:
Неправильный путь к файлу 'ApplicationManagementService_v1.1.wsdl'


На 8.3 такой ошибки нет. Попытаюсь решить. Если получится, то сообщу.


Решил. http://api.vetrf.ru/schema/platform/services/2.0-RC-last/ams-mercury-g2b.service_v2.0_pilot.wsdl вообще не нужен. Вместо него достаточно ApplicationManagementService_v1.1.wsdl программно или как wsdl ссылку в конфигурацию. Спасибо mevgenym за его код https://github.com/mevgenym/1c_vetis.api

Для получения Фабрики нужно использовать такой код:



Не понятно как влияет, но ЗапросWeb = Новый HTTPЗапрос("platform/services/ApplicationManagementService"); использовал ЗапросWeb = Новый HTTPЗапрос("platform/services/2.0/ApplicationManagementService"); Вроде работает и так, и так.

serviceID поменять с mercury-g2b.service на mercury-g2b.service:2.0
nifor

[Avatar]

Зарегистрирован: 21/04/2017 04:01:50
Сообщений: 150
Оффлайн

Коллеги добрый день !!! Подскажите у кого то посредством 1С получилось заполнить атрибуты id и for (api 2.0) ? При заполнении строковым типом ругается на неверный формат при отправке запроса !!!

Это сообщение было редактировано 1 раз. Последнее обновление произошло в 16/11/2017 11:22:29

vvche


Зарегистрирован: 13/06/2016 19:39:45
Сообщений: 45
Оффлайн

nifor wrote:Коллеги добрый день !!! Подскажите у кого то посредством 1С получилось заполнить атрибуты id и for (api 2.0) ? При заполнении строковым типом ругается на неверный формат при отправке запроса !!!


Подчеркивание впереди прицепите. Там базовый тип "NCName", а он должен содержать первым символом или букву или подчеркивание.
vvche


Зарегистрирован: 13/06/2016 19:39:45
Сообщений: 45
Оффлайн

Вот не пойму, в чем косяк.

Формирую ProcessIncomingConsignmentOperation в версии 2,0.

При сохранении XML с помощью ФабрикиXDTO "перепрыгивают" реквизиты.
(ФабрикаXDTO создается по рекомендациям, выложенным здесь на форуме, та же схема с 1,4 отрабатывала без проблем)



И вот эти issueDate и issueNumber, относящиеся к vetCertificate, почему-то уезжают вниз, хотя должны идти следом за issueSeries.
В итоге пакет шлюзом не принимается, выдает отлуп "Format validation failed due to XML Schema rules: Элемент 'issueDate' не предусмотрен." - я так понимаю, что порядок элементов ему важен.
В SOAPui элементы на место поставишь - запрос проходит.

Грешил на релиз платформы, но на 8.3.8 , 8.3.9 , 8.3.10 результат одинаков.
1С, что-ли, не берет во внимание тег <xs:sequence> в XSD-схеме?..

nifor

[Avatar]

Зарегистрирован: 21/04/2017 04:01:50
Сообщений: 150
Оффлайн

vvche wrote:
nifor wrote:Коллеги добрый день !!! Подскажите у кого то посредством 1С получилось заполнить атрибуты id и for (api 2.0) ? При заполнении строковым типом ругается на неверный формат при отправке запроса !!!


Подчеркивание впереди прицепите. Там базовый тип "NCName", а он должен содержать первым символом или букву или подчеркивание.


Спасибо огромное !!!
vvche


Зарегистрирован: 13/06/2016 19:39:45
Сообщений: 45
Оффлайн

vvche wrote:Вот не пойму, в чем косяк.

Формирую ProcessIncomingConsignmentOperation в версии 2,0.

При сохранении XML с помощью ФабрикиXDTO "перепрыгивают" реквизиты.



Сам спросил, сам ответил

При импорте схемы document_v2.0.xsd 1С выставила в типе объекта VetDocument свойство "Упорядоченный" в "Ложь", отсюда и косяк.
Причем у базового типа Document все нормально.
ashugaenko


Зарегистрирован: 28/02/2017 11:51:59
Сообщений: 8
Оффлайн

.

Это сообщение было редактировано 1 раз. Последнее обновление произошло в 17/11/2017 16:38:37

mevgenym


Зарегистрирован: 19/05/2017 14:03:42
Сообщений: 312
Оффлайн

Появилась обратная "совместимость" с 1.4 по упаковкам (смотрел через getStockEntryChangesList):
- непонятно по каким соображениям назначился уровень и он разный
- почти все без количества и количество так и не соответствует 1.4
https://github.com/mevgenym/1c_vetis.api_v1.1
https://github.com/mevgenym/1c_vetis.api
FCool


Зарегистрирован: 21/11/2017 16:50:37
Сообщений: 3
Оффлайн

Добрый день.
Вопрос по API 2
Пытаюсь создать предприятие методом ModifyEnterpriseOperation

Определение = Новый WSОпределения("http://api.vetrf.ru/schema/platform/services/2.0-RC-last/ams-mercury-g2b.service_v2.0_pilot.wsdl");
ПодключениеОбмена = Новый WSПрокси(Определение,"http://api.vetrf.ru/schema/cdm/application/service","ApplicationManagementServiceBindingQSService","ApplicationManagementServiceBindingQSPort",,, Новый ЗащищенноеСоединениеOpenSSL( неопределено, неопределено ));
ПодключениеОбмена.Пользователь = "*************";
ПодключениеОбмена.Пароль = "************";
SubmitApplicationRequest = Фабрика.Создать(Фабрика.Тип("http://api.vetrf.ru/schema/cdm/application/ws-definitions", "submitApplicationRequest"));
Application = Фабрика.Создать(Фабрика.Тип("http://api.vetrf.ru/schema/cdm/application", "Application"));
ApplicationDataWrapper = Фабрика.Создать(Фабрика.Тип("http://api.vetrf.ru/schema/cdm/application", "ApplicationDataWrapper"));

modifyEnterpriseRequest = Фабрика.Создать(Фабрика.Тип("http://api.vetrf.ru/schema/cdm/mercury/g2b/applications/v2", "ModifyEnterpriseRequest"));;

ApplicationDataWrapper.Добавить(ФормаXML.Элемент,"http://api.vetrf.ru/schema/cdm/mercury/g2b/applications/v2", "ModifyEnterpriseRequest", modifyEnterpriseRequest);
Application.data = ApplicationDataWrapper;
Application.serviceId = "mercury-g2b.service:2.0";
Application.issuerId = "******************";
Application.issueDate = ТекущаяДата();

SubmitApplicationRequest.apiKey = "***********************";
SubmitApplicationRequest.application = Application;


Результат = ПодключениеОбмена.submitApplicationRequest(SubmitApplicationRequest.apiKey, SubmitApplicationRequest.application);

Вылезает такая ошибка:
Несоответствие типов XDTO:
Тип '{http://api.vetrf.ru/schema/cdm/mercury/g2b/applications/v2}ModifyEnterpriseRequest' не найден
Тип принадлежит пакету, отсутствующему в фабрике типов XDTO

Может кто подскажет, что я делаю не так ?
RomanWBD

[Avatar]

Зарегистрирован: 12/05/2016 11:36:01
Сообщений: 23
Оффлайн

Все делаете так, а вот шлюз API 2.0 с тестовым Меркурием явно работает не так. Сейчас по этому сервису в ответе всегда возвращается ошибка по любому сервису из ams-mercury-g2b.service_v2.0_pilot.wsdl.
FCool


Зарегистрирован: 21/11/2017 16:50:37
Сообщений: 3
Оффлайн

RomanWBD wrote:Все делаете так, а вот шлюз API 2.0 с тестовым Меркурием явно работает не так. Сейчас по этому сервису в ответе всегда возвращается ошибка по любому сервису из ams-mercury-g2b.service_v2.0_pilot.wsdl.

Использовать API v1 ?
Андрей Любимов


Зарегистрирован: 17/10/2017 16:58:56
Сообщений: 12
Оффлайн

FCool wrote:
Добрый день.

Результат = ПодключениеОбмена.submitApplicationRequest(SubmitApplicationRequest.apiKey, SubmitApplicationRequest.application);

Вылезает такая ошибка:
Несоответствие типов XDTO:
Тип '{http://api.vetrf.ru/schema/cdm/mercury/g2b/applications/v2}ModifyEnterpriseRequest' не найден
Тип принадлежит пакету, отсутствующему в фабрике типов XDTO


Здравствуй! Операцию не получится сделать через прокси. У них в WS определении нет типов, связанных с операциями. Запрос нужно делать через HTTP.

Тут примерно описано: http://vetrf.ru/vetrf-forum/posts/listByUser/9167.page
RomanWBD

[Avatar]

Зарегистрирован: 12/05/2016 11:36:01
Сообщений: 23
Оффлайн

1.4 вроде работает, проверял как раз после того как 2.0 перестал отправлять нормальные результаты.
GusVal


Зарегистрирован: 10/11/2017 12:14:53
Сообщений: 176
Оффлайн

А API 2.0 насколько тестовое?

RomanWBD wrote:Все делаете так, а вот шлюз API 2.0 с тестовым Меркурием явно работает не так. Сейчас по этому сервису в ответе всегда возвращается ошибка по любому сервису из ams-mercury-g2b.service_v2.0_pilot.wsdl.


Вообще-то им бы следовало об этом большими буквами да на главной странице форума...
 
Индекс форума » Компонент МЕРКУРИЙ
Перейти:   

Powered by JForum 2.1.8 © JForum Team