Установка ЕГАИС — различия между версиями
Материал из wiki.standart-n.ru
Aleksnick (обсуждение | вклад) (→ТМС проверки новых накладных от ЕГАИС) |
Aleksnick (обсуждение | вклад) |
||
| Строка 1173: | Строка 1173: | ||
==Почему на сайте в информации о чеке неверно отображается дата чека== | ==Почему на сайте в информации о чеке неверно отображается дата чека== | ||
Проблема решается обновлением версии кассира. | Проблема решается обновлением версии кассира. | ||
| + | |||
| + | ==Что делать если акт на самом деле принят, но в журнале документов отображается, что не принят?== | ||
| + | В начальных версиях егаис-менеджера была ошибка, что если по ТТН отправляют повторный акт по уже принятой накладной и УТМ по этому запросу возвращает отрицательный ответ (т.к. ттн уже подтверждена), то менеджер меняет в базе статус с принятого на отклонён. Это можно исправить спомощью процедуры: | ||
| + | <pre> | ||
| + | SET TERM ^ ; | ||
| + | |||
| + | create or alter procedure PR_CHECK_TTN_ACCEPTED | ||
| + | returns ( | ||
| + | DOC_ID_OUT bigint) | ||
| + | as | ||
| + | declare variable DOC_ID DM_ID; | ||
| + | declare variable EGAIS_ID DM_UUID; | ||
| + | declare variable C DM_STATUS; | ||
| + | begin | ||
| + | for select D.ID, | ||
| + | D.EGAIS_ID | ||
| + | from DOCS D | ||
| + | where D.DOC_TYPE = 40 | ||
| + | and D.EGAIS_STATUS = 2 | ||
| + | into :DOC_ID, | ||
| + | :EGAIS_ID | ||
| + | do | ||
| + | begin | ||
| + | C = 0; | ||
| + | select first 1 count(*) | ||
| + | from EGAIS_REQUESTS R | ||
| + | where 1 = 1 | ||
| + | and R.EGAIS_ID = :EGAIS_ID | ||
| + | and R.REPLY_DATA containing '<tc:Conclusion>Accepted</tc:Conclusion>' | ||
| + | into C; | ||
| + | if (C > 0) then | ||
| + | begin | ||
| + | select :DOC_ID | ||
| + | from RDB$DATABASE | ||
| + | into :DOC_ID_OUT; | ||
| + | update DOCS D | ||
| + | set D.EGAIS_STATUS = 1 | ||
| + | where D.ID = :DOC_ID; | ||
| + | suspend; | ||
| + | end | ||
| + | end | ||
| + | end^ | ||
| + | |||
| + | SET TERM ; ^ | ||
| + | |||
| + | /* Following GRANT statetements are generated automatically */ | ||
| + | |||
| + | GRANT SELECT,UPDATE ON DOCS TO PROCEDURE PR_CHECK_TTN_ACCEPTED; | ||
| + | GRANT SELECT ON EGAIS_REQUESTS TO PROCEDURE PR_CHECK_TTN_ACCEPTED; | ||
| + | |||
| + | /* Existing privileges on this procedure */ | ||
| + | |||
| + | GRANT EXECUTE ON PROCEDURE PR_CHECK_TTN_ACCEPTED TO SYSDBA; | ||
| + | </pre> | ||
| + | Если каким то образом получилось, что в егаис накладная принята, но в базе нет данных запросов и она там неподтверждена, то ее можно подтвердить вручную спомощью запроса: | ||
| + | <pre> | ||
| + | update docs d set d.egais_status=1 where d.doc_id=:doc_id; | ||
| + | </pre> | ||