Добрый день, уважаемые разработчики. Обнаружил баг при передаче неполного стакана по DDE. Версия QUIK 13.1.1.15, брокер БКС.
В QUIK стакан выглядит так:
При передаче этого стакана по DDE приходит следующее:
Тут видно что в стакане на скрине всего 8 заполненных строк + одна строка заголовка, остальные строки пустые. При передаче по DDE приходит 8 + 1 строка, т.е. количество строк правильное, и видимо было намерение передать именно 8 заполненных строк, не передавая пустые. Но передаются все строки с начала стакана подряд, включая пустые, заполненная строка в итоге передана только одна, остальные данные, таким образом, не передаются.
В QUIK стакан выглядит так:
При передаче этого стакана по DDE приходит следующее:
| Код |
|---|
Rows x Cols: 9x3 CellType: String. Value=Покупка | CellType: String. Value=Цена | CellType: String. Value=Продажа CellType: String. Value=(empty string) | CellType: String. Value=(empty string) | CellType: String. Value=(empty string) CellType: String. Value=(empty string) | CellType: String. Value=(empty string) | CellType: String. Value=(empty string) CellType: String. Value=(empty string) | CellType: String. Value=(empty string) | CellType: String. Value=(empty string) CellType: String. Value=(empty string) | CellType: String. Value=(empty string) | CellType: String. Value=(empty string) CellType: String. Value=(empty string) | CellType: String. Value=(empty string) | CellType: String. Value=(empty string) CellType: String. Value=(empty string) | CellType: String. Value=(empty string) | CellType: String. Value=(empty string) CellType: String. Value=(empty string) | CellType: String. Value=(empty string) | CellType: String. Value=(empty string) CellType: String. Value=(empty string) | CellType: Double. Value=10300 | CellType: Double. Value=1 |
Тут видно что в стакане на скрине всего 8 заполненных строк + одна строка заголовка, остальные строки пустые. При передаче по DDE приходит 8 + 1 строка, т.е. количество строк правильное, и видимо было намерение передать именно 8 заполненных строк, не передавая пустые. Но передаются все строки с начала стакана подряд, включая пустые, заполненная строка в итоге передана только одна, остальные данные, таким образом, не передаются.