Поле trans_id для закрытия заявки: в чём смысл?

Страницы: 1
RSS
Поле trans_id для закрытия заявки: в чём смысл?, Есть ли примеры, где оно может быть использовано?
 
Предположим я создал заявку, присвоив ей trans_id=1. При создании срабатывает OnOrder(ord), где ord.trans_id=1, ord.order_num = номер новой заявки.
Теперь я хочу отменить эту заявку. Для этого я создаю новую транзакцию, в которой пишу trans_id=2, action = kill_order. Но при срабатывании OnOrder(ord) я опять вижу, что ord.trans_id=1, ord.order_num = номер удаляемой заявки. Т.е. новая транзакция, у которой trans_id=2, не вернулась в OnOrder, и даже не отобразилась в общем списке заявок. Это в целом понятно и логично, но непонятно, для чего тогда указывать trans_id=2? Т.е. если я не заполню поле trans_id=2, будет ошибка, но по факту это значение 2 дальше нигде не будет использовано. Или есть какие-то случаи, когда оно может пригодиться?  
 
trans_id=2 вы увидите в OnTransReply
 
Цитата
User12501 написал:
Предположим я создал заявку, присвоив ей trans_id=1. При создании срабатывает OnOrder(ord), где ord.trans_id=1, ord.order_num = номер новой заявки.
Теперь я хочу отменить эту заявку. Для этого я создаю новую транзакцию, в которой пишу trans_id=2, action = kill_order. Но при срабатывании OnOrder(ord) я опять вижу, что ord.trans_id=1, ord.order_num = номер удаляемой заявки. Т.е. новая транзакция, у которой trans_id=2, не вернулась в OnOrder, и даже не отобразилась в общем списке заявок. Это в целом понятно и логично, но непонятно, для чего тогда указывать trans_id=2? Т.е. если я не заполню поле trans_id=2, будет ошибка, но по факту это значение 2 дальше нигде не будет использовано. Или есть какие-то случаи, когда оно может пригодиться?  
Например, торгуем двумя инструментами, по первому послали выставить заявку и по второму послали выставить заявку.
Но по второму транзакция не прошла .
Для второй заявки сработает лишь OnTransReply.
По id можно определить какая транзакция с ошибкой.
 
 
Вы не понимаете смысл транзакции. Вы создали не заявку с trans_id=1, а транзакцию - поручение создать заявку. При удалении вы создали транзакцию - поручение с trans_id=2 удалить заявку.
Транзакции по многим причинам могут быть отклонены, об этом вы сможете узнать в OnTransReply().
У заявки свойство trans_id говорит о том, какой транзакцией эта заявка была создана.  
Страницы: 1
Читают тему
Наверх