Особенности работы сервера Transaq
Основная особенность:
После переподключения transaq присылает ДРУГИЕ ID транзакций.
Пример из лога программы tslab.log
Заявка вечером:
23:48:10.50[Transaq Parser]DEBUG:Order orderno=21968103629 trid=358351
эта же заявка утром:
09:55:07.44[Transaq Parser]DEBUG:Order orderno=21968103629 trid=10381
Проблема состоит в том, что с ID 10381 уже могла быть заявка в истории или от другого работающего агента.
Т.к. транзак никогда эту проблему не исправит, то вариант решения такой: нужно настраивать очистку старых заявок и транзакций в настройках поставщика данных.
По умолчанию, в настройках стоит год. Можно попробовать поставить несколько дней. Но если внутри дня очень много сделок, то вероятность того, что transaq даст номер, который был вчера, возрастает. В этом случае кеш своих сделок в настройках поставщика данных стоит уменьшать до трех дней(чем быстрее алгоритм, тем вероятнее получить данную проблему)