Функция TRANS2QUIK_TRANSACTIONS_REPLY_CALLBACK
Описание прототипа функции обратного вызова для обработки полученной
информации об отправленной транзакции.
- Подача асинхронных транзакций с использованием функции обратного вызова и
синхронных транзакций одновременно запрещена. Это связано с тем, что
невозможно корректно вызвать функцию обратного вызова в момент, когда функция
обработки синхронной транзакции еще не закончила свою работу.
void __stdcall TRANS2QUIK_TRANSACTION_REPLY_CALLBACK(long nTransactionResult, long nTransactionExtendedErrorCode, long nTransactionReplyCode, DWORD dwTransId, unsigned__int64 dOrderNum, LPSTR lpstrTransactionReplyMessage, intptr_t transReplyDescriptor)
Параметр |
Описание |
nTransactionResult |
Тип: Long. Возвращаемое число может принимать следующие значения:
- TRANS2QUIK_SUCCESS – транзакция передана успешно,
- TRANS2QUIK_DLL_NOT_CONNECTED – отсутствует соединение между
библиотекой Trans2QUIK.dll и терминалом QUIK,
- TRANS2QUIK_QUIK_NOT_CONNECTED – отсутствует соединение между
терминалом QUIK и сервером,
- TRANS2QUIK_FAILED – транзакцию передать не удалось.
В этом случае в переменную pnExtendedErrorCode может передаваться
дополнительный код ошибки
|
nTransactionExtendedErrorCode |
Тип: Long. В случае возникновения проблемы при выходе
из функции обратного вызова в переменную может быть помещен
расширенный код ошибки |
nTransactionReplyCode |
Тип: Long. Указатель для получения статуса выполнения транзакции.
Значения статусов те же самые, что и при подаче заявок через
файл |
dwTransId |
Тип: Long. Содержимое параметра TransId, который получила
зарегистрированная транзакция |
dOrderNum |
Тип: unsigned__int64. Номер заявки, присвоенный торговой системой
в результате выполнения транзакции |
lpstrTransactionReplyMessage |
Тип: указатель на переменную типа Строка. Сообщение от торговой системы или сервера
QUIK |
transReplyDescriptor |
Тип: intptr_t. Дескриптор ответа на транзакцию, может использоваться для следующих специальных функций в теле функции обратного вызова:
- LPTSTR __stdcall TRANS2QUIK_TRANSACTION_REPLY_CLASS_CODE (intptr_t transReplyDescriptor) – возвращает код класса, по которому подана транзакция;
- LPTSTR __stdcall TRANS2QUIK_TRANSACTION_REPLY_SEC_CODE (intptr_t transReplyDescriptor) – возвращает код инструмента, по которому выставлена транзакция;
- double __stdcall TRANS2QUIK_TRANSACTION_REPLY_PRICE (intptr_t transReplyDescriptor) – возвращает цену сделки;
- __int64 __stdcall TRANS2QUIK_TRANSACTION_REPLY_QUANTITY (intptr_t transReplyDescriptor) – возвращает количество;
- __int64 __stdcall TRANS2QUIK_TRANSACTION_REPLY_BALANCE (intptr_t transReplyDescriptor) – возвращает остаток;
- LPTSTR __stdcall TRANS2QUIK_TRANSACTION_REPLY_FIRMID (intptr_t transReplyDescriptor) – возвращает код фирмы;
- LPTSTR __stdcall TRANS2QUIK_TRANSACTION_REPLY_ACCOUNT (intptr_t transReplyDescriptor) – возвращает торговый счет;
- LPTSTR __stdcall TRANS2QUIK_TRANSACTION_REPLY_CLIENT_CODE (intptr_t transReplyDescriptor) – возвращает код клиента;
- LPTSTR __stdcall TRANS2QUIK_TRANSACTION_REPLY_BROKERREF (intptr_t transReplyDescriptor) – возвращает комментарий;
- LPTSTR __stdcall TRANS2QUIK_TRANSACTION_REPLY_EXCHANGE_CODE (intptr_t transReplyDescriptor) – возвращает биржевой номер заявки
|
См. также Функции для работы с транзакциями через
API