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


Зарегистрирован: 05/02/2016 06:07:29
Сообщений: 4
Оффлайн

2pchernov: проверьте, что у "ПроксиПодсистемаОбработкиЗаявок" задан пользователь и пароль, перед тем как submitApplicationRequest вызываете.
а вообще 1С, по крайней мере 8.2, с текущей реализацией http://api.vetrf.ru/schema/platform/services/ApplicationManagementService_v1.2.wsdl работать напрямую не будет, из-за того, как объявлен wraper'ы в application:
<xs:complexType name="ApplicationDataWrapper">
<xs:sequence>
<xs:element ref="tns:applicationData" minOccurs="1" maxOccurs="1"/>
</xs:sequence>
</xs:complexType>
<xs:complexType name="ApplicationResultWrapper">
<xs:sequence>
<xs:element ref="tns:applicationResultData" minOccurs="1" maxOccurs="1"/>
</xs:sequence>
</xs:complexType>

applicationData и applicationResultData - это ссылки на абстрактные типы, т.е. предполагается, что в ApplicationDataWrapper и ApplicationResultWrapper будут добавлены ссылки на наследников этих типов. в случае с Меркурием - ссылки на наследников, например, MercuryApplicationRequest из пакета http://api.vetrf.ru/schema/cdm/mercury/applications. но 1С-ка так сделать не позволит, потому что не поддерживает подобные свойства у типов объектов в xdto-пакетах, так, как требуется. т.е. для 1С-ны applicationData в ApplicationDataWrapper это не просто ссылка с определенным типом, а вполне себе именованное свойство с абстрактным типом.

Это сообщение было редактировано 3 раз. Последнее обновление произошло в 08/02/2016 10:03:45

smaximaa


Зарегистрирован: 27/11/2015 10:08:51
Сообщений: 26
Оффлайн

а вообще 1С, по крайней мере 8.2, с текущей реализацией http://api.vetrf.ru/schema/platform/services/Appli...ionManagementService_v1.2.wsdl работать напрямую не будет, из-за того, как объявлен wraper'ы в application:

и 8.3 тоже, надеюсь в 8.4 сделают такую реализацию
[ICQ]
pchernov


Зарегистрирован: 07/02/2016 21:12:01
Сообщений: 8
Оффлайн

Добавил

ПроксиПодсистемаОбработкиЗаявок.Пользователь = ИмяПользователя;
ПроксиПодсистемаОбработкиЗаявок.Пароль = Пароль;

Результат тот же.
smaximaa


Зарегистрирован: 27/11/2015 10:08:51
Сообщений: 26
Оффлайн

Ошибка такая же "Ошибка работы с Интернет: Ошибка инициализации SSL-соединения" ?
[ICQ]
pchernov


Зарегистрирован: 07/02/2016 21:12:01
Сообщений: 8
Оффлайн

Да. Все также.
А у тебя smaximaa получилось отправить запрос?
smaximaa


Зарегистрирован: 27/11/2015 10:08:51
Сообщений: 26
Оффлайн

Странно тогда. Не получилось, но ошибка немного другая выходит. Во всяком случае и не получится по причине которую товарищ sayunot описал.
Остаётся вариант вручную формировать soap-запрос, но это муторно выходит.
P.S. Запросы в которых не используется метод submitApplicationRequest можно через фабрику XDTO делать, но такие только на чтение данных, на запись именно с submitApplicationRequest(

Это сообщение было редактировано 2 раз. Последнее обновление произошло в 08/02/2016 16:35:48

[ICQ]
pchernov


Зарегистрирован: 07/02/2016 21:12:01
Сообщений: 8
Оффлайн

Попытаюсь спросить на партнерском сайте в 1с. Но что-то как то грустно. Можно написать внешнюю компоненту с# и поставить обрабатываться через нее. Но это тоже не очень вариант.
smaximaa


Зарегистрирован: 27/11/2015 10:08:51
Сообщений: 26
Оффлайн

Попробуйте, но я думаю они вас "пошлют" к фирмам которые уже реализовали это. А так пока остаётся через костыли делать.
[ICQ]
pchernov


Зарегистрирован: 07/02/2016 21:12:01
Сообщений: 8
Оффлайн

Проблему решил. Порт 8002 был закрыт на интернет сервере. Открыли. Заработало. Теперь новая ошибка:

=======================================================================
{Форма.Форма.Форма(69)}: Ошибка при вызове метода контекста (submitApplicationRequest)
Результат = ПроксиПодсистемаОбработкиЗаявок.submitApplicationRequest(
по причине:
Ошибка вызова операции сервиса: {http://api.vetrf.ru/schema/cdm/application/service}:ApplicationManagementServiceBindingQSService:submitApplicationRequest()
по причине:
Ошибка SOAP сервера:
=======================================================================

Как узнать какая ошибка сервера?
pchernov


Зарегистрирован: 07/02/2016 21:12:01
Сообщений: 8
Оффлайн

С ошибкой разобрался помог Fiddler (показал мне xml запрос который я передаю на сервер). Вопрос в другом как правильно заполнять объект:ApplicationDataWrapper. Я так понял что в нем и хранится полное описание заявки (с полями) которое требуется передать на сервер. Кто нибудь пробовал сформировать саму заявку. Может у кого есть пример сформированной заявки?
Александр Осминин

[Avatar]

Зарегистрирован: 25/06/2009 17:13:08
Сообщений: 300
От: ФГБУ ВНИИЗЖ
Оффлайн

pchernov wrote:Может у кого есть пример сформированной заявки?

Примеры SOAP-сообщений в справочной системе размещены.
ведущий программист отдела программного обеспечения
Федерального центра охраны здоровья животных, г. Владимир
[Email] [WWW]
Richi


Зарегистрирован: 10/02/2016 08:33:28
Сообщений: 1
Оффлайн

Добрый вам коллеги. Через XDTO не удается обработать заявку в системе. только через HTTP xml запросом. Так как ApplicationDataWrapper.dataApplication имеет Абстрактный тип и 1С не удается создать такой объект. в Ветисе пообещали что со временем они исправят это. но когда? не понятно. так что пока только через прямые запросы обращаться к функции.
greenstich


Зарегистрирован: 07/12/2015 12:48:01
Сообщений: 8
Оффлайн

в нашем модуле обмена системы 1с Предприятия и системы "Меркурий" реализованы след. операции:
Синхронизация НСИ:
1. Получение списка продукции по типу
2. Получение списка видов продукции по указанному продукту
3. Получение синхронизации единиц измерения
4. Получение списка целей ввоза вывоза
5. Получение списка стран
6. Получение списка регионов по стране
7. Получение списка районов по региону
8. Получение/синхронизация списка ХС
9. Получение списка Российских Предприятий
10. Получить ХС По Guid
11. Получить Предприятие По Guid
10. Создание ХС
11. Создание Предприятий(Площадок)
12. Создание/Удаление Связи Между Площадкой И Хозяйствующим Субъектом

Документооборот:
1. Оформление производственной партии
2. Оформление транспортной партии
3. Объединение Записей Складского Журнала
4. Получение актуальных остатков записей складского журнала

Прочее:
1. Получение результатов обработки заявок
2. Получение статусов обработки заявок
3. Получение Статус ВСД

ООО ВИЗАРД-С
http://www.wizard-c.ru/
+7 (4822) 65-58-57
Жуков Сергей 89301741727
89040272829

efi.88@mail.ru
[Email]
pchernov


Зарегистрирован: 07/02/2016 21:12:01
Сообщений: 8
Оффлайн

Цена вопроса? Сколько стоит?
sayunot


Зарегистрирован: 05/02/2016 06:07:29
Сообщений: 4
Оффлайн

Richi wrote:Добрый вам коллеги. Через XDTO не удается обработать заявку в системе. только через HTTP xml запросом. Так как ApplicationDataWrapper.dataApplication имеет Абстрактный тип и 1С не удается создать такой объект. в Ветисе пообещали что со временем они исправят это. но когда? не понятно. так что пока только через прямые запросы обращаться к функции.

я пока так сделал - изменил локальный пакет с dataApplication и applicationResultData, сделал эти типы открытыми, чтоб можно было свои запросы туда помещать. затем на основе локальных пакетов и пакетов из ws создаю общую фабрику. ну, а дальше - дело техники: работаем с получившейся фабрикой, строим запросы, используем записьxml , помещаем в тело http запроса. получаем ответ - используем чтениеxml, десериализуем при помощи созданной ранее фабрики
 
Индекс форума » Автоматизированная система МЕРКУРИЙ
Перейти:   

Powered by JForum 2.1.8 © JForum Team