Гашение, когда в сроках есть ошибки. - 1Cv7 ВСД в ГИС Меркурий - КБ99 Redmine

Проект

Общее

Профиль

Гашение, когда в сроках есть ошибки.

Добавил(а) Михайлов Михаил больше 5 лет назад

Здравствуйте.

Хочу понять правильно ли работает обработка Меркурий_Гашение_ВСД2

1)Получил входящие ВСД.
2)Попытался их погасить, получил отказ: "Дата выработки продукции в сведениях о принимаемой партии указана неверно. ОШИБКА: Дата окончания срока годности в сведениях о принимаемой партии указана неверно"
3)Указал даты, введя значения в соответствующие ячейки в ТЗ на форме обработки.
4)Отправил снова, получил такой же ответ.
фото во вложении.

Правильно ли я понял логику?

А предыстория такая. Меркурий дает оформлять ВСД на продукцию и указывать разные сроки в том числе через текстовое поле, например "Август 2018".
Такие ВСД, кстати, через вебинтерфейс можно гасить. А вот через АПИ, через ваше интеграционное решение у меня не получается.

Как-то раньше писал об этом, но не нашел той темы. решил пробовать снова, но...
Может ещё дадите совет как добиваться успешного гашения для таких ВСД.

Спасибо.


Ответы (22)

RE: Гашение, когда в сроках есть ошибки. - Добавил(а) Жуков Дмитрий больше 5 лет назад

Про форматы дат http://help.vetrf.ru/wiki/%D0%A4%D0%BE%D1%80%D0%BC%D0%B0%D1%82%D1%8B_%D0%B4%D0%B0%D1%82
Для анализа -
Нужен xml со входящими ВСД (то что придет после нажатия Получить) и xml с запросом на гашение, который вызывает ошибку.

RE: Гашение, когда в сроках есть ошибки. - Добавил(а) Михайлов Михаил больше 5 лет назад

Ну только у меня нет оплаченной поддержки.

Я хотел спросить правильно ли понял идею работы, (описания нет).
Может так вообще нельзя при гашении что-то менять в ВСД?

RE: Гашение, когда в сроках есть ошибки. - Добавил(а) Жуков Дмитрий больше 5 лет назад

логика проста - что пришло от Ветиса, то и нужно отправлять в запросе на гашение.
для себя можете сравнить в ошибочно непогашаемой партии сроки в обоих xml - пришло и что отправляется.
В двух словах: не все рукописные даты можно через апи погасить (в документации ветиса не все правда к тому же, может не успевают дописывать по мере внесения изменений), методом проб различных вариантов написания запроса иногда получается это сделать - но нужно время на это.

По поводу нет оплаты поддержки - будем проводить тестирование в свободное время.

RE: Гашение, когда в сроках есть ошибки. - Добавил(а) Жуков Дмитрий больше 5 лет назад

ПС:
в прилагаемых xml нет файла с ответом о входящих ВСД (поэтому ничего сказать не смогу) -
нажали Получить - придет ответ, вот он то и нужен.

RE: Гашение, когда в сроках есть ошибки. - Добавил(а) Михайлов Михаил больше 5 лет назад

Видимо сообщение "Дата выработки продукции в сведениях о принимаемой партии указана неверно."
Выдает обработка или ГМ. Можете подсказать где найти анализ данного сообщения?

RE: Гашение, когда в сроках есть ошибки. - Добавил(а) Жуков Дмитрий больше 5 лет назад

Сообщение присылает Меркурий - смотри xml который result


<receiveApplicationResultResponse xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
<application xmlns="http://api.vetrf.ru/schema/cdm/application">
<applicationId>a65a5139-301a-4709-8463-6f2709431ba0</applicationId>
<status>REJECTED</status>
<serviceId>mercury-g2b.service</serviceId>
<issuerId>fe1992cd-218a-11e2-a69b-b499babae7ea</issuerId>
<issueDate>2018-09-25T00:00:00+03:00</issueDate>
<rcvDate>2018-09-25T11:17:52+03:00</rcvDate>
<prdcRsltDate>2018-09-25T11:17:52+03:00</prdcRsltDate>
<errors>
<error code="MERC14086">Дата выработки продукции в сведениях о принимаемой партии указана неверно.</error>
<error code="MERC14087">Дата окончания срока годности в сведениях о принимаемой партии указана неверно.</error>
</errors>
</application>
</receiveApplicationResultResponse>

Повторюсь - нужен result xml со входящими и (он привязан тут, есть)request с запросом на гашение
там явно несовпадение.

RE: Гашение, когда в сроках есть ошибки. - Добавил(а) Михайлов Михаил больше 5 лет назад

Вроде вот:
Смотрел запрос, вроде даты правильно раскладываются.

Может просто гашение так делать не умеет или делает это неправильно? Или может нельзя это делать при гашении?

RE: Гашение, когда в сроках есть ошибки. - Добавил(а) Жуков Дмитрий больше 5 лет назад

Вы так и не приложили ответ Меркурия с Входящими - не с чем сравнивать

RE: Гашение, когда в сроках есть ошибки. - Добавил(а) Михайлов Михаил больше 5 лет назад

Я наверное чего-то не вижу:

Протокол:
Отправляем запрос
Ответ: [a93c7d5c-6aa6-4e8f-8404-302443ee3704] [ACCEPTED]
Отправляем запрос [ТаблицаЗначений]
статус = REJECTED
Ошибка: Дата выработки продукции в сведениях о принимаемой партии указана неверно.;
Дата окончания срока годности в сведениях о принимаемой партии указана неверно.;
Загрузка XML-файла: C:\1c\op2018\ExtForms\logs\3ed33db3-960e-40cb-a5bd-bee4d4d7d9e3_result.xml
Ошибок = 2
ОШИБКА: ОШИБКА: Дата выработки продукции в сведениях о принимаемой партии указана неверно.
ОШИБКА: ОШИБКА: Дата выработки продукции в сведениях о принимаемой партии указана неверно. ОШИБКА: Дата окончания срока годности в сведениях о принимаемой партии указана неверно.
Результат = REJECTED

Там вот в модуле обработки гашения есть функция "ПолучитьРезультат_ГашениеВСД2" она вроде парсит ответ.
Я так думал, что это и есть ответ. В любом случае я сначала удалил все логи, потом сделал операцию и выложил сюда 4 файла.
В том числе и "3ed33db3-960e-40cb-a5bd-bee4d4d7d9e3_result.xml" или это не ответ?

RE: Гашение, когда в сроках есть ошибки. - Добавил(а) Жуков Дмитрий больше 5 лет назад

Открыть обработку, нажать кнопку Получить - вот этот ответ мне нужен - из него как раз заполняется таблица Входящих.
Гасить не нужно - запрос на гашение вы прислали.

RE: Гашение, когда в сроках есть ошибки. - Добавил(а) Михайлов Михаил больше 5 лет назад

Ага, ясно. приложил.

Гасить я пытался первую ВСД там филе трески на 4.906

RE: Гашение, когда в сроках есть ошибки. - Добавил(а) Жуков Дмитрий больше 5 лет назад

Как же не рассмотрели разницу?
В форме руками вносили текстовую дату перед гашением?
<vd:informalDate>2018 8</vd:informalDate>
Этого делать не нужно.

Пробовали с Актом о несоответствии Погасить?

у вас на входе
дата в формате ГГГГ.ММ
-<vd:firstDate>
<dt:year>2018</dt:year>
<dt:month>8</dt:month>
</vd:firstDate>

а гасим как нормальная дата

-<vd:firstDate>
<dt:year>2018</dt:year>
<dt:month>8</dt:month>
<dt:day>1</dt:day>
<dt:hour>0</dt:hour>
</vd:firstDate>

RE: Гашение, когда в сроках есть ошибки. - Добавил(а) Михайлов Михаил больше 5 лет назад

В форму вносил, об этом в первом сообщении и писал (выделял красным), как раз спрашивал, правильно или нет я понял.
Погасить с актом пробовал, сообщение выдается такое же. Правильно ли понимаю, что наличие галочки прикрепить акт, должно допускать некие корректировки. Пробовали ли вы использовать акт и как?

RE: Гашение, когда в сроках есть ошибки. - Добавил(а) Михайлов Михаил больше 5 лет назад

Обратился в техподдержку.
Получил ответ.

Обращение:
Получили от поставщика документы в которых
Дата выработки продукции = "2018 10"
Дата окончания срока годности = "2019 4"

С помощью АПИ переместили часть данной партии в удаленное
подразделение, где его использовали.
Однако через АПИ погасить транспортный ЭВСД не получается - появляется
ошибка
code="MERC14086">Дата выработки продукции в сведениях о принимаемой партии указана неверно.
code="MERC14087">Дата окончания срока годности в сведениях о
принимаемой партии указана неверно.

Суть вопроса в том, что если такие ЭВСД пытаться гасить через
веб-интерфейс, то все получается и даже сообщений о ошибках нет. А
через шлюзы 1.4 и 2.0 никак не получается.

Можете посоветовать. Как это можно погасить, так как набирается много
таких ЭВСД.

Ответ:
В предоставленном ВСД дата выработки и срок годности задан в формате месяц-год, а не в текстовом виде как вы указываете в запросе на гашение. Формат дат должен быть вида <vd:firstDate><dt:year>2018</dt:year><dt:month>10</dt:month></vd:firstDate>. У вас же заданы даты как <vd:informalDate>2018 10</vd:informalDate>.

Мой вывод:
То есть мне от обработки гашения надо добиться что бы для таких случаев она делала
<vd:firstDate><dt:year>2018</dt:year><dt:month>10</dt:month></vd:firstDate>

Может вы чего теперь посоветуете. Пока переделываю код.

RE: Гашение, когда в сроках есть ошибки. - Добавил(а) кб99 Синявский Филипп больше 5 лет назад

Михаил, да появился функционал отправки ВСД с неполными датами.
задача гашения с неполными датами в работе, на этой неделе сделаем

RE: Гашение, когда в сроках есть ошибки. - Добавил(а) Михайлов Михаил больше 5 лет назад

Здравствуйте.

КБ99 Филипп писал(а):

Михаил, да появился функционал отправки ВСД с неполными датами.
задача гашения с неполными датами в работе, на этой неделе сделаем

А не готово ещё?

RE: Гашение, когда в сроках есть ошибки. - Добавил(а) кб99 Синявский Филипп больше 5 лет назад

Добавлены измнения:
  • гашение неполных дат
  • гашение с оформлением возврата

Изменения закомитил, просьба проверить...
Нужно ли дополнительное видео по гашению?

RE: Гашение, когда в сроках есть ошибки. - Добавил(а) Михайлов Михаил больше 5 лет назад

Спасибочки.

Мне кино не надо, я нафантазирую.
Думаю сам разберусь.

RE: Гашение, когда в сроках есть ошибки. - Добавил(а) Михайлов Михаил больше 5 лет назад

В общем в плане сроков все работает для версии 2.0!
версия 1.4 так и выдает ошибку при попытке получить ВСД.
И по состоянию на 09.11.18 не во всех дистрибутивах обновления, была актуальная версия

RE: Гашение, когда в сроках есть ошибки. - Добавил(а) кб99 Синявский Филипп больше 5 лет назад

Все же нашли ошибки и исправили, изменений много...
основной момент ТермическиеУсловия = теперь Перечисление.ВСД_ТермическиеУсловияПеревозки , поэтому пришлось поменять почти все документы
исправили ошибку в подборе - проверяйте!

RE: Гашение, когда в сроках есть ошибки. - Добавил(а) кб99 Синявский Филипп больше 5 лет назад

Порция очередных изменений в тесте

  • ВСД2_транзакция - исправить ТЧ ширину колонок #2264
  • Транзакция - добавить поле НомерПартии в ТЧ #2261
  • Распределение партий - добавить Список вариантов сортивки #1874
  • ВСД2_Транзакция +вкладка ВСД #2025
  • ВСД2_Транзакция +вкладка Условия перемещения #2026
  • испр ВСД2_Транзакция не сохраняется значение Температурного режима #2194
  • доработка печатной формы "отчет по партиям ВСД" #2008
  • +загрузка городов по району #2255
    (1-22/22)