Формат .tro-файла с результатами обработки транзакций

Файл представляет собой последовательность строк, каждая из которых содержит информацию по отдельной транзакции. Параметры транзакции описываются в виде «НАЗВАНИЕ_ПАРАМЕТРА= значение_параметра» и разделяются символом «;».

Параметры и принимаемые ими значения:

Параметр Значение
TRANS_ID Уникальный идентификационный номер заявки
STATUS

Результат выполнения операции. Может принимать одно из следующих значений:

  • «0» - транзакция отправлена серверу;
  • «1» - транзакция получена на сервер QUIK от клиента;
  • «2» - ошибка при передаче транзакции в торговую систему, поскольку отсутствует подключение шлюза Московской Биржи, повторно транзакция не отправляется;
  • «3» - транзакция выполнена;
  • «4» - транзакция не выполнена торговой системой, код ошибки торговой системы будет указан в поле «DESCRIPTION»;
  • «5» - транзакция не прошла проверку сервера QUIK по каким-либо критериям. Например, проверку на наличие прав у пользователя на отправку транзакции данного типа;
  • «6» - транзакция не прошла проверку лимитов сервера QUIK;
  • «10» - транзакция не поддерживается торговой системой. К примеру, попытка отправить «ACTION = MOVE_ORDERS» на Московской Бирже;
  • «11» - транзакция не прошла проверку правильности электронной подписи. К примеру, если ключи, зарегистрированные на сервере, не соответствуют подписи отправленной транзакции;
  • «12» - не удалось дождаться ответа на транзакцию, т.к. истек таймаут ожидания. Может возникнуть при подаче транзакций из QPILE;
  • «13» - транзакция отвергнута, т.к. ее выполнение могло привести к кросс-сделке (т.е. сделке с тем же самым клиентским счетом);
  • «14» – транзакция не прошла контроль дополнительных ограничений;
  • «15» – транзакция принята после нарушения дополнительных ограничений;
  • «16» – транзакция отменена пользователем в ходе проверки дополнительных ограничений
TRANS_NAME Описание выполняемой транзакции, например «Ввод заявки»
DESCRIPTION Текстовый комментарий к полю STATUS, содержащий ответ сервера QUIK или торговой системы
ORDER_NUMBER Регистрационный номер заявки в торговой системе

Пример строки .tro-файла:

TRANS_ID=14;STATUS=0;TRANS_NAME="Ввод заявки"; DESCRIPTION="Отправлена транзакция";

TRANS_ID=14;STATUS=3;TRANS_NAME="Ввод заявки"; DESCRIPTION="(160) Заявка на покупку N 68359610 зарегистрирована."; ORDER_NUMBER=68359610;