Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > Delphi: Базы данных и репортинг > доступ к OLAP


Автор: mdsoul 11.12.2008, 15:08
Доброго дня!

Наткнулся на проблему: пытаюсь получить содержимое OLAP-куба
Код

  DS := 'select [Measures].[Infringement Count] on columns,' +
      '  [Infringement].[Month].[All].Children on rows ' +
      'from [GIBDD] ';// +
      //'where [Infringement].[Year].&[2001]';
  try
   CellSet1.Open(DS,'Provider=MSOLAP.1;Integrated Security=SSPI;Persist Security Info=False;Initial Catalog=Analysis Services Project2;Data Source=127.0.0.1');
//   T := TSafeArray.Create();
   V:=VarArrayCreate([0,1], varVariant);
   V[0] := 0;
   V[1] := 0;

   P := PSafeArray(TVarData(V).VArray);
   i := CellSet1.Axes[1].Positions.Count;
   ListBox1.AddItem(Cellset1.Item[P].Value, nil);
   CellSet1.Close;
   except
      on e: Exception do ShowMessage(e.Message);
   end;


ругается на выполнении операции Cellset1.Item[P].Value "Аргументы имеют неверный тип, выходят за пределеы допустимого диапазона или вступают в конфликт друг с другом". Этот код я передрал из примера с сайта http://www.cyberguru.ru/programming/delphi/delphi-ado-extensions-page8.html
при этом измерения имеют 1 и 16 элементов соответственно. Перерыл все что можно, не пойму что не так. Может кто-нибудь подсказать что делать?

Заранее благодарен.

Автор: Akella 11.12.2008, 15:40
Цитата(mdsoul @  11.12.2008,  15:08 Найти цитируемый пост)
Cellset1.Item[P].Value

что-то не вижу я у тебя в коде её

Автор: mdsoul 11.12.2008, 15:48
14я строка

Автор: Akella 11.12.2008, 17:33
Код

 ListBox1.Add(Cellset1.Item[P].Value);


или

Код

 ListBox1.Add(VarToStr(Cellset1.Item[P].Value));


Автор: mdsoul 11.12.2008, 17:50
Проблема не в том, как добавить значение в ListBox, а в том, как его получить.

P.S. Не знаю как у вашего, у моего ListBox'а метода Add нету.

Автор: Akella 11.12.2008, 19:47
ступил smile 

Автор: Akella 11.12.2008, 20:56
нет, не ступил, а забыл, есть 
Код

ListBox1.Items.Add()

Автор: mdsoul 12.12.2008, 14:10
Я смотрю никто не в курсе как тут можно поступить? Хорошо, кто-нибудь знает как получить одержимое OLAP-куба?

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)