Как правильно проверять успешность обработки транзакции?
Сейчас делаю так:
1. ответы со статусом «0» и «1» об успешной отправке и получении транзакции сервером — игнорирую
2. ответ со статусом «3» о выполнении транзакции — считаю успешной обработкой транзакции
3. ответы со статусами «>=2, но кроме 3» о разных ошибках и прочем — считаю ошибкой при обработке транзакции
Меня смущает код «15», по документации он описан как «транзакция принята после нарушения дополнительных ограничений».
В каких случаях и для каких типов транзакций он приходит? Для NEW_ORDER, для KILL_ORDER или для обоих?
Соответственно, нужно ли проверять успешность обработки транзакции двойным условием на оба кода «3» и «15»?
Сейчас делаю так:
1. ответы со статусом «0» и «1» об успешной отправке и получении транзакции сервером — игнорирую
2. ответ со статусом «3» о выполнении транзакции — считаю успешной обработкой транзакции
3. ответы со статусами «>=2, но кроме 3» о разных ошибках и прочем — считаю ошибкой при обработке транзакции
Меня смущает код «15», по документации он описан как «транзакция принята после нарушения дополнительных ограничений».
В каких случаях и для каких типов транзакций он приходит? Для NEW_ORDER, для KILL_ORDER или для обоих?
Соответственно, нужно ли проверять успешность обработки транзакции двойным условием на оба кода «3» и «15»?
Код |
---|
if status == 3 or status == 15 then --транзакция успешно обработана elseif status >= 2 then --ошибка при обработке транзакции else --ответы со статусом «0» и «1» игнорируем end |