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


Зарегистрирован: 15/12/2017 09:49:24
Сообщений: 56
Оффлайн

Павел Большаков wrote:
rty wrote:Через апи номер всд приходит на тестовом сервере? В веб интерфейсе вижу Номер ВСД 7208731, а в пришедшей xml его нет. Запрашиваю по уид

Это один из самых лохматых баянов.
Он никак не приходит. Ругань с разрабами длится уже и не припомню сколько.


Присоединяюсь к вопросу. По-быстрее бы наладили, а то Тандер может в требованиях к поставкам указать обязательное наличие номера.
rty


Зарегистрирован: 22/11/2017 10:05:33
Сообщений: 146
Оффлайн

serg882 wrote:
rty wrote:Помогите, делаю полное гашение ВСД, а оно ругается
MERC14258: Так как номер ТТН в сведениях о принимаемой партии не совпадает с указанным в ветеринарно-сопроводительном документе, то необходимо указать причину в акте о несоответствии.


Я хочу чтоб совпадал. Это в какой секции прописывать и от куда брать?


Это нужно смотреть во входящем ВСД: vetDocument.referencedDocument. Там нужно найти в relationshipType = 1 (Сопроводительный документ) и взять все реквизиты этого документа.


А если там 2 таких будет или больше?
lalex23


Зарегистрирован: 10/03/2016 14:26:10
Сообщений: 375
Оффлайн

Вспомнил про пару справочников что отсутствовали в 1.4 и появились в 2.0, при попытка загрузки напрямую через WSПрокси методы GetPurposeList и GetResearchMethodList - валятся с ошибками по типам
завернул в HTTPСоединение, отправил запрос на https://api.vetrf.ru/platform/services/2.0/DictionaryService :

получаю ответ

ткните пожалуйста носом - где туплю?
rty


Зарегистрирован: 22/11/2017 10:05:33
Сообщений: 146
Оффлайн

lalex23 wrote:
ткните пожалуйста носом - где туплю?

https://api2.vetrf.ru:8002/platform/services/2.0/DictionaryService
lalex23


Зарегистрирован: 10/03/2016 14:26:10
Сообщений: 375
Оффлайн

rty wrote:
lalex23 wrote:
ткните пожалуйста носом - где туплю?

https://api2.vetrf.ru:8002/platform/services/2.0/DictionaryService

это ли не тест? я про продуктивный сервер
oleg-x


Зарегистрирован: 20/11/2017 11:24:40
Сообщений: 2041
Онлайн

https://api.vetrf.ru/platform/services/2.0/DictionaryService
https://vk.com/mercuriy_rf
rty


Зарегистрирован: 22/11/2017 10:05:33
Сообщений: 146
Оффлайн

lalex23 wrote:
rty wrote:
lalex23 wrote:
ткните пожалуйста носом - где туплю?

https://api2.vetrf.ru:8002/platform/services/2.0/DictionaryService

это ли не тест? я про продуктивный сервер

Действительно тестовый =)
lalex23


Зарегистрирован: 10/03/2016 14:26:10
Сообщений: 375
Оффлайн

oleg-x wrote:https://api.vetrf.ru/platform/services/2.0/DictionaryService

туда и стукаюсь - файл запроса выше, где косяк не понимаю, аналогичным образом работаю с EnterpriseService, например getRussianEnterpriseList - проблем нет
kolganov50@mail.ru


Зарегистрирован: 18/12/2017 20:41:37
Сообщений: 3
Оффлайн

М.б. кто-нибудь подскажет, где ошибка:
<?xml version="1.0" encoding="UTF-8"?>

-<soapenv:Envelope xmlns:dt="http://api.vetrf.ru/schema/cdm/dictionary/v2" xmlns:merc="http://api.vetrf.ru/schema/cdm/mercury/g2b/applications/v2" xmlns:apldef="http://api.vetrf.ru/schema/cdm/application/ws-definitions" xmlns:apl="http://api.vetrf.ru/schema/cdm/application" xmlns:vd="http://api.vetrf.ru/schema/cdm/mercury/vet-document/v2" xmlns:bs="http://api.vetrf.ru/schema/cdm/base" xmlnssi="http://www.w3.org/2001/XMLSchema-instance" xmlnss="http://www.w3.org/2001/XMLSchema" xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/">

<soapenv:Header/>


-<soapenv:Body>


-<apldef:ssubmitApplicationRequest>

<apldef:apiKey>...</apldef:apiKey>


-<apl:application>

<apl:serviceId>mercury-g2b.service:2.0</apl:serviceId>

<apl:issuerId>...</apl:issuerId>

<apl:issueDate>2017-12-18T20:30:12</apl:issueDate>


-<apl:data>


-<merc:getVetDocumentListRequest>

<merc:localTransactionId/>


-<merc:initiator>

<vd:login>kolganov_ve_171023</vd:login>

</merc:initiator>


-<bs:listOptions>

<bs:count>10</bs:count>

<bs:offset>0</bs:offset>

</bs:listOptions>

<vd:vetDocumentType>PRODUCTIVE</vd:vetDocumentType>

<vd:vetDocumentStatus>CONFIRMED</vd:vetDocumentStatus>

<dt:enterpriseGuid>80cd0344-ba4b-46d3-b58b-65717de11ecb</dt:enterpriseGuid>

</merc:getVetDocumentListRequest>

</apl:data>

</apl:application>

</apldef:ssubmitApplicationRequest>

</soapenv:Body>

</soapenv:Envelope>

получаю ответ:
faultstring>BEA-382513: OSB Replace action failed updating variable "body": Error parsing XML: {err}FORG0005: expected exactly one item, got 0 items</faultstring>

Это сообщение было редактировано 1 раз. Последнее обновление произошло в 19/12/2017 08:37:59

vvche


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

kolganov50@mail.ru wrote:М.б. кто-нибудь подскажет, где ошибка:

-<merc:getVetDocumentListRequest>


получаю ответ:
faultstring>BEA-382513: OSB Replace action failed updating variable "body": Error parsing XML: {err}FORG0005: expected exactly one item, got 0 items</faultstring>



Обсуждалось уже, у них в эта операция валится при попытке указать "vetDocumentType". Если фильтр не ставить, то отрабатывает.

(И поправьте свое сообщение, вы ApiKey засветили)
serg882


Зарегистрирован: 26/10/2017 11:52:09
Сообщений: 195
Оффлайн

rty wrote:
serg882 wrote:
rty wrote:Помогите, делаю полное гашение ВСД, а оно ругается
MERC14258: Так как номер ТТН в сведениях о принимаемой партии не совпадает с указанным в ветеринарно-сопроводительном документе, то необходимо указать причину в акте о несоответствии.


Я хочу чтоб совпадал. Это в какой секции прописывать и от куда брать?


Это нужно смотреть во входящем ВСД: vetDocument.referencedDocument. Там нужно найти в relationshipType = 1 (Сопроводительный документ) и взять все реквизиты этого документа.


А если там 2 таких будет или больше?


При оформлении транспортной ВСД указывается всегда один сопроводительный документ (в accompanyingForms.waybill), их может быть больше, если отправитель укажет в accompanyingForms.relatedDocument еще сопроводительные документы, а из ВСД в этом случае нельзя узнать, что было указано конкретно в accompanyingForms.waybill (это знает только Меркурий, чем он и пользуется для выдачи ошибок). Этот момент нужно обходить, не все будут заполнять необязательный блок relatedDocument, а если заполнят и будет несколько разных сопроводительных документов, то здесь можно использовать различные варианты (перебор всех ТТН на гашении, с отловом ошибки MERC14258, как вариант).

Это сообщение было редактировано 1 раз. Последнее обновление произошло в 19/12/2017 03:34:29

kolganov50@mail.ru


Зарегистрирован: 18/12/2017 20:41:37
Сообщений: 3
Оффлайн

Все равно у меня не проходит запрос. vvche, м.б. еще что посоветуете?
<?xml version="1.0" encoding="UTF-8"?>

-<soapenv:Envelope xmlns:dt="http://api.vetrf.ru/schema/cdm/dictionary/v2" xmlns:merc="http://api.vetrf.ru/schema/cdm/mercury/g2b/applications/v2" xmlns:apldef="http://api.vetrf.ru/schema/cdm/application/ws-definitions" xmlns:apl="http://api.vetrf.ru/schema/cdm/application" xmlns:vd="http://api.vetrf.ru/schema/cdm/mercury/vet-document/v2" xmlns:bs="http://api.vetrf.ru/schema/cdm/base" xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/">

<soapenv:Header/>


-<soapenv:Body>


-<apldef:submitApplicationRequest>

<apldef:apiKey>...</apldef:apiKey>


-<apl:application>

<apl:serviceId>mercury-g2b.service:2.0</apl:serviceId>

<apl:issuerId>...</apl:issuerId>

<apl:issueDate>2017-12-19T08:49:05</apl:issueDate>


-<apl:data>


-<merc:getVetDocumentListRequest>

<merc:localTransactionId>a1003</merc:localTransactionId>


-<merc:initiator>

<vd:login>kkk...</vd:login>

</merc:initiator>


-<bs:listOptions>

<bs:count>10</bs:count>

<bs:offset>0</bs:offset>

</bs:listOptions>

<vd:vetDocumentStatus>CONFIRMED</vd:vetDocumentStatus>

<dt:enterpriseGuid>80cd0344-ba4b-46d3-b58b-65717de11ecb</dt:enterpriseGuid>

</merc:getVetDocumentListRequest>

</apl:data>

</apl:application>

</apldef:submitApplicationRequest>

</soapenv:Body>

</soapenv:Envelope>
получаю:
<faultstring>BEA-382513: OSB Replace action failed updating variable "body": Error parsing XML: {err}FORG0005: expected exactly one item, got 0 items</faultstring>
ZDmitry


Зарегистрирован: 27/11/2017 09:33:53
Сообщений: 149
Оффлайн

Добрый день. Не очень понятно зачем при приемке продукции электронным ВСД в запросе указывать все реквизиты! Зачем так нужно было так делать? Ведь в пришедшем ВСД все есть! В чем тут логика? Логично было бы указывать идентификатор и количество. Или я не прав?
vvche


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

kolganov50@mail.ru wrote:Все равно у меня не проходит запрос. vvche, м.б. еще что посоветуете?

</soapenv:Envelope>
получаю:
<faultstring>BEA-382513: OSB Replace action failed updating variable "body": Error parsing XML: {err}FORG0005: expected exactly one item, got 0 items</faultstring>



Я вообще убирал и vetDocumentType и vetDocumentStatus, тогда срабатывало.
Но тоже, конечно, не то, потому что фильтровать уже на клиенте - это не решение. (Приходится играться с count и offset)
mevgenym


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

ZDmitry wrote:Добрый день. Не очень понятно зачем при приемке продукции электронным ВСД в запросе указывать все реквизиты! Зачем так нужно было так делать? Ведь в пришедшем ВСД все есть! В чем тут логика? Логично было бы указывать идентификатор и количество. Или я не прав?
может прийти другой товар, в другой упаковке, другого производителя, с другой маркировкой, с другим сроком годности?
https://github.com/mevgenym/1c_vetis.api_v1.1
https://github.com/mevgenym/1c_vetis.api
 
Индекс форума » Компонент МЕРКУРИЙ
Перейти:   

Powered by JForum 2.1.8 © JForum Team