PlazaTable, PlazaSystemTable - что-то одно.
Atom
18.03.2011
Mikhail Sukhov


Вообщем, сейчас уже практически не понять, что есть что. Вопрос к аспиранту, а именно в чем необходимость данного хитросплетения?

Что я вижу сейчас:

1. PlazaSystemTable явно лишний.
2. Зачем-то в PlazaTable идет работа с потоками. Есть же менеджер потоков, есть PlazaTrader. В классе, описывающий метаданные, работа с потоками по идее быть не должно.
3. Зачем нужен Records у PlazaTable?

Я думаю надо еще раз проговорить про организацию работы с потоками Плазы.

1. Пользователей работает с метаданными. Явно, когда их редактируется через PlazaTable.Columns. Неявно, когда при старте сканируются ini схемы и восстанавливаются колонки автоматически в PlazaTable.Columns.
2. Пользователь запускает экспорт через PlazaTrader.StartExport. Стартуют потоки как основные (которые в QuikTrader мапяться на объекты Security Trade Order и т.д.) так и дополнительные (думаю, маппинг лучше организовать как с Custom tables в QuikTrader). Какие именно нужны потоки - определяется на шаге 1.

Зачем здесь PlazaSystemTable? И PlazaMarketData?

Теги:


Спасибо:


< 1 2 
Mikhail Sukhov

Фотография
Дата: 22.03.2011
Ответить


aspirant
Mikhail Sukhov
А стоит ли давать так делать?


Вроде обсуждали про пул подключений для распараллеливания потоков. Я, когда писал PlazaStreamManager, сразу это и сделал.


В итоге то к чему пришли?

aspirant

Mikhail Sukhov
4. А как тогда потоки стартую если названия из не указывается?


Вот ini-файл для таблицы FORTS_OPTCOMMON_REPL\common (колонки не все)
Код
[dbscheme:CustReplScheme]
table=common

; Общая информация по сессии
[table:CustReplScheme:common]
field=replID,i8
field=replRev,i8
field=replAct,i8
field=isin_id,i4
field=sess_id,i4
field=best_sell,d16.5
field=amount_sell,i4
field=best_buy,d16.5
field=amount_buy,i4
field=price,d16.5
field=trend,d16.5
field=amount,i4


А вот как инициализиурется поток в коде:
Код

_dataStream = new CP2DataStreamClass();
_dataStream.StreamName = "FORTS_OPTCOMMON_REPL"; // название потока указывается в этой строчке.



А как Плаза отпределяет, что для потока FORTS_OPTCOMMON_REPL нужен вот тот файл ini а не какой то другой?
Спасибо:

aspirant

Фотография
Дата: 23.03.2011
Ответить


Mikhail Sukhov
В итоге то к чему пришли?


Пришли, что это будет в списке второстепенных задач по потокам, но я сделал сразу, потому что это оказалось быстрее, чем я предполагал.


Mikhail Sukhov
А как Плаза отпределяет, что для потока FORTS_OPTCOMMON_REPL нужен вот тот файл ini а не какой то другой?


У нее есть внутреннее знание [smile] В следующем коде произойдет исключение, если хотя бы одна из колонок указана неправильно:

Код
_dataStream.TableSet.InitFromIni2(_configFileName, "FORTS_OPTCOMMON_REPL");

Спасибо:

Mikhail Sukhov

Фотография
Дата: 23.03.2011
Ответить


aspirant

У нее есть внутреннее знание [smile] В следующем коде произойдет исключение, если хотя бы одна из колонок указана неправильно:

Код
_dataStream.TableSet.InitFromIni2(_configFileName, "FORTS_OPTCOMMON_REPL");



Интересно, а зачем потоку еще раз указывать название, если до этого уже сказали через _dataStream.StreamName
Спасибо:

aspirant

Фотография
Дата: 23.03.2011
Ответить


Mikhail Sukhov

Интересно, а зачем потоку еще раз указывать название, если до этого уже сказали через _dataStream.StreamName


Mea culpa. Вот правильный кусок кода:

Код
_dataStream.StreamName = "FORTS_OPTCOMMON_REPL";
// вторым параметром указывается название dbScheme, можно "", если dbScheme:CustReplScheme (дефолтная)
_dataStream.TableSet.InitFromIni2(_configFileName, "");

Спасибо:

Mikhail Sukhov

Фотография
Дата: 23.03.2011
Ответить


aspirant
Mikhail Sukhov

Интересно, а зачем потоку еще раз указывать название, если до этого уже сказали через _dataStream.StreamName


Mea culpa. Вот правильный кусок кода:

Код
_dataStream.StreamName = "FORTS_OPTCOMMON_REPL";
// вторым параметром указывается название dbScheme, можно "", если dbScheme:CustReplScheme (дефолтная)
_dataStream.TableSet.InitFromIni2(_configFileName, "");



Интересно, а можно в одном файле сохранять все схемы?
Спасибо:
< 1 2 

Добавить файлы через драг-н-дроп, , или вставить из буфера обмена.

loading
clippy