Проблема
Не выгружается сделка во внешнюю систему.
Решение
Сразу оговоримся, что здесь речь идёт только про отправку сделок, то есть до того момента, когда Адаптер NAVIGATOR отправил сделку в очередь адаптера внешней системы. Приём сделки адаптером внешней системы и обработка во внешней системе не рассматриваются в рамках этой темы (систем много, работают по-разному).
Перед тем, как завести задачу, соберите следующие данные:
- Сделка переведена в статус соответствующий отправке во внешнюю систему (далее "статус 2")?
- Сделка должна быть переведена в статус 2 автоматически или вручную?
- Если автоматически, то у торгового счёта сделки установлен признак "отправлять автоматически"? Настроен интервал отправки? Включён адаптер NAVIGATOR? У внешней системы с которой поступила данная сделка (поле typeinput) установлен признак Автоматически в БО?
- Если вручную, то есть ли в попап-меню пункт по переводу сделки в статус 2?
- Какой тип сделки отправляем во внешнюю систему (vw_FX, vw_DP, vw_SEC_DEAL и так далее)?
- Подписана ли система на объект — можно проверить в таблице tbl_recivesystems.
- Система является бэкофисной? (select system_role from ext_systems where system_aliace = название системы. Для бэкофисной системы значение system_role должно быть равно 1).
- Формируется ли запись в таблице tbl_ford_32 для отправки в необходимую внешнюю систему?
- Запись в таблице tbl_ford_32 имеет заполненный idpocket?
- Сделка проходит фильтры, установленные для данной системы (таблица tbl_exclusivesystems)?
- Для конверсионных (СВОП и межпортфельные) и ценно-бумажных (РЕПО) сделок может не заполняться idpocket по причине того, что они являются частью сделок. Проверьте записи для остальных тикетов, входящих в данную сделку.
Похожие статьи
Перед тем, как завести задачу, соберите следующие данные:
1. Проверьте, нет ли на базе инвалидных объектов.
2. Укажите способ соединения с сервером биржи, варианты ответа:
1. MHAdptr,
2. TMServiceInp
3. Убедитесь, что шлюз к бирже (MHAdptr или TMServiceInp) запущен.
4. Посмотрите, нет ли ошибок в логах адаптера/сервиса, являющегося шлюзом к бирже (его вы выбрали в пункте 1).
5. Если ошибки в логах шлюза есть, и Вы ещё не поняли причину — не забудьте приложить их к задаче. Едем дальше…
6. Как, наверное, Вам известно, сделка не сразу регистрируется в Навигаторе: сначала она попадает в Хранилище, следовательно надо проверить, запущен ли адаптер SWStore
7. Посмотрите, нет ли ошибок в логах адаптера SWStore
8. Если ошибки в логах адаптера SWStore есть, и Вы ещё не поняли причину — не забудьте приложить их логи к задаче. Едем дальше.
9. Если адаптер SWStore запущен, посмотрите, есть ли сделки в Хранилище с помощью запроса:
select * from STORE_DEALS where LOADTIME>=trunc(sysdate) Запрос 1
10. Если запрос (1) что-то вернул, но Вы не знаете что это или не уверены — не забудьте приложить результат запроса в формате Excel
11. Если запрос (1) ничего не вернул, значит, проблема, скорее всего, в шлюзе => заводите задачу, приложив всё, что удалось собрать и конфигурационный файл (.ini) шлюза.
12. Если запрос (1) что-то вернул, необходимо посмотреть, запущен ли адаптер NavXLAdptrV5
13. Посмотрите, нет ли ошибок в логах адаптера NavXLAdptrV5
14. Если ошибки в логах адаптера NavXLAdptrV5 есть, и Вы ещё не поняли причину – не забудьте приложить логи к задаче. Едем дальше.
15. Если запрос (1) что-то вернул, необходимо посмотреть, дошла ли информация до Сервисных операций (если вы не знаете что это такое, то дела наши плохи и нужно бы приехать на обучение в офис Softwell):
select * from SEC_BROKER_DEALS where LOADTIME>=trunc(sysdate) Запрос 2
16. Если запрос (2) что-то вернул, необходимо обратить внимание на поля
1. RN_TICKET — Тикет в РН, если поле заполнено, значит, сделка загружена; возможно, вы просто не смогли её найти, попытайтесь ещё раз.
2. STATUS
§ 0 — без ошибок либо не загружалась;
§ 1 — для информации;
§ 2 — ошибка
3. ERROR_STR — текст ошибки или информации
17. Если запрос (2) что-то вернул, но вы не знаете что это или не уверены — не забудьте приложить результат запроса в формате Excel
18. Если запрос (2) ничего не вернул, значит, проблема скорее всего в адаптере NavXLAdptrV5 --> заводите задачу, приложив всё, что удалось собрать.
19. Для полноты данных ещё можно посмотреть протокол сервисных операций, он очень может помочь при анализе ошибки:
SELECT * FROM sec_broker_deals_log where event_date>=td Запрос 3
20. Результат запроса (3) анализируем, может что увидим и тоже не забываем его в задачу.
21. Собрав данные, попробуйте их проанализировать, может быть, ответ лежит на поверхности. Ну если нет, берем всё, что удалось собрать и заводим задачу. Вам помогут.
22. После того, как проблема решена, пошлите сообщение всем, кто вам помог; дайте им знать, чем все закончилось, и поблагодарите ещё раз за помощь.
Для достаточно серьёзных проблем можно послать резюме с историей поиска их причин. Опишите окончательную постановку проблемы. Опишите, каким оказалось решение, и укажите тупиковые пути, которых стоит избегать. Назовите всех, кто помог вам: так вы найдёте себе друзей.