Экспорт стандатрных и custom таблиц одновременно


Экспорт стандатрных и custom таблиц одновременно
Atom
12/24/2010


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

Code

this.Trader.AddCustomTableMapping(typeof(CustomPortfolio));

this.Trader.ProcessCustomTables += (type, objects) =>
{
// нас интересует только CustomPortfolio
if (type == typeof(CustomPortfolio))
_portfolioWindow.Portfolios.AddRange(objects.Cast<CustomPortfolio>());

};

this.Trader.NewSecurities += securities => this.GuiAsync(() => _securitiesWindow.Securities.AddRange(securities));

Tags:


Thanks:


Mikhail Sukhov

Avatar
Date: 12/24/2010
Reply


D_Alex
как экспортировать одновременно и CustomPortfolio и обычные таблицы? у меня в итоге выходит, что с CustomPortfolio все в порядке, а по остальным таблицам нет данных.


Видимо таблицы неправильно настроены. Посмотрите ITrader.ProcessDataError. Verifier прогоните.
Thanks:

a.dobryn

Avatar
Date: 12/24/2010
Reply


нет, я проверяла отдельно прямо в примере, там все работало, так что с настройкой таблиц должно быть все в порядке =) Потом попробовала совместить со своим - и получилось так.
Thanks:

a.dobryn

Avatar
Date: 12/27/2010
Reply


вот функция нажатия на кнопку "подключиться"
Code
private void Connect_Click(object sender, RoutedEventArgs e)
{
if (!_isConnected)
{
if (this.Path.Text.IsEmpty())
MessageBox.Show(this, "Путь к Quik не выбран");
else
{
if (this.Trader == null)
{
// создаем шлюз
this.Trader = new QuikTrader(this.Path.Text);

// возводим флаг, что соединение установлено
_isConnected = true;

// инициализируем механизм переподключения
this.Trader.ReConnectionSettings.ConnectionRestored += () => this.GuiAsync(() => MessageBox.Show(this, "Соединение восстановлено"));

this.Portfolios.Trader = this.Trader;

// подписываемся на событие ошибки соединения
this.Trader.ConnectionError += error => this.GuiAsync(() => MessageBox.Show(this, error.ToString()));
this.Trader.ProcessDataError += error => this.GuiAsync(() => MessageBox.Show(this, error.ToString()));


// добавляем тип CustomPortfolio для преобразования строчки из таблицы Портфель [Страйки] в объект CustomPortfolio
this.Trader.AddCustomTableMapping(typeof(CustomPortfolio));

this.Trader.ProcessCustomTables += (type, objects) =>
{

if (type == typeof(CustomPortfolio))
_portfolioWindow.Portfolios.AddRange(objects.Cast<CustomPortfolio>());

};

this.Trader.NewSecurities += securities => this.GuiAsync(() => _securitiesWindow.Securities.AddRange(securities));
this.Trader.NewMyTrades += trades => this.GuiAsync(() => _myTradesWindow.Trades.AddRange(trades));
this.Trader.NewTrades += trades => this.GuiAsync(() => _tradesWindow.Trades.AddRange(trades));
this.Trader.NewOrders += orders => this.GuiAsync(() => _ordersWindow.Orders.AddRange(orders));
this.Trader.NewStopOrders += orders => this.GuiAsync(() => _stopOrderWindow.Orders.AddRange(orders));
this.Trader.NewPositions += positions => this.GuiAsync(() => _positionsWindow.Positions.AddRange(positions));
this.Trader.ProcessDataError += ex => System.Diagnostics.Debug.WriteLine(ex);
this.Trader.Connected += () => this.GuiAsync(() => this.ExportDde.IsEnabled = true);



}

this.Trader.Connect();


_isConnected = true;
this.ConnectBtn.Content = "Отключиться";
}
}
else
{
this.Trader.Disconnect();

_isConnected = false;
this.ConnectBtn.Content = "Подключиться";
}
}
Thanks:

a.dobryn

Avatar
Date: 12/27/2010
Reply


все, нашла ошибку, у меня было не this.Trader.StartExport(), а был экспорт конкретной таблицы.
Thanks:


Attach files by dragging & dropping, , or pasting from the clipboard.

loading
clippy