Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / OLAP и DWH [игнор отключен] [закрыт для гостей] / Ошибка при попытке просмотра / 6 сообщений из 6, страница 1 из 1
17.05.2006, 17:08
    #33733367
Sv_Kel
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Ошибка при попытке просмотра
Пишу такие строчки
Catalog1:=CreateComObject(StringToGUID('ADOMD.Catalog')) as ICatalog;
TreeView1.Items.Clear;
RootNode := TreeView1.Items.Add(nil, 'Catalog');
CubeNode := TreeView1.Items.AddChild(RootNode, 'Cubes');
Catalog1.Set_ActiveConnection(OleVariant(DataSourse));
If Catalog1.CubeDefs.Count > 0 then
begin
For i := 1 to Catalog1.CubeDefs.Count doКоличество кубов считает, значит каталог работает
begin

До этого момента все работает нормально
CubeDef1:= Catalog1.CubeDefs as CubeDef;
А эдесь..."Access violation..." и т.д.
CubeDefNode:=TreeView1.Items.AddChild(CubeNode, CubeDef1.Name);
end;
end;
end;
Может кто знает, в чем проблема.
...
Рейтинг: 0 / 0
18.05.2006, 08:07
    #33734329
ShIgor
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Ошибка при попытке просмотра
CubeDef1:= Catalog1. CubeDefs as CubeDef ;

однако! попытка сделать из кучи конфеток одну - вот Вас и посылают!
...
Рейтинг: 0 / 0
18.05.2006, 10:13
    #33734592
Sv_Kel
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Ошибка при попытке просмотра
Да даже если писать
A) CubeDef1:= Catalog1.CubeDefs.Item as CubeDef;
B)CubeDef1:= Catalog1.CubeDefs.Get_Item(i) as CubeDef;
Все равно ничего не выходит :((, а оооочень надо
...
Рейтинг: 0 / 0
18.05.2006, 12:03
    #33735036
ShIgor
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Ошибка при попытке просмотра
1. если ADOMD_TLB.pas создавали через Project->Import Type Library, то откройте его, и удалите ВСЕ строки содержащие объявления типа
procedure GhostMethod_...
во ВСЕХ интерфейсах
2. в строке подключения не в коем случае не использовать MSOLAP.1
...
Рейтинг: 0 / 0
18.05.2006, 12:10
    #33735074
ShIgor
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Ошибка при попытке просмотра
рабочий вариант, слегка переделанный:
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
procedure TForm1.Button1Click(Sender: TObject);
const
  DataSource = 'Provider=MSOLAP.2;Initial Catalog=DB_NAME;Data Source=SRV_NAME;';
var
  Catalog1: Catalog;
  CubeDefs1: CubeDefs;
  CubeDef1: CubeDef;
  RootNode, CubeNode, CubeDefNode: TTreeNode;
  i: integer;
begin
  Catalog1:=CoCatalog.Create;
  TreeView1.Items.Clear;
  RootNode := TreeView1.Items.Add(nil, 'Catalog');
  CubeNode := TreeView1.Items.AddChild(RootNode, 'Cubes');
  Catalog1.Set_ActiveConnection(DataSource);
  CubeDefs1 := Catalog1.CubeDefs;
  if CubeDefs1.Count >  0  then begin
    for i :=  0  to CubeDefs1.Count- 1  do begin
      CubeDef1 := CubeDefs1[i];
      CubeDefNode :=TreeView1.Items.AddChild(CubeNode, CubeDef1.Name);
    end;
  end;
end;
...
Рейтинг: 0 / 0
18.05.2006, 14:10
    #33735643
Sv_Kel
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Ошибка при попытке просмотра
ShIgor1. если ADOMD_TLB.pas создавали через Project->Import Type Library, то откройте его, и удалите ВСЕ строки содержащие объявления типа
procedure GhostMethod_...
во ВСЕХ интерфейсах
2. в строке подключения не в коем случае не использовать MSOLAP.1


СПАСИБО,ГРОМАДНОЕ
только после этого все заработало
Сама бы я до этого не догадалась, итак уже целый день вчера сидела, искала ошибку.
...
Рейтинг: 0 / 0
Форумы / OLAP и DWH [игнор отключен] [закрыт для гостей] / Ошибка при попытке просмотра / 6 сообщений из 6, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]