Этот баннер — требование Роскомнадзора для исполнения 152 ФЗ.
«На сайте осуществляется обработка файлов cookie, необходимых для работы сайта, а также для анализа использования сайта и улучшения предоставляемых сервисов с использованием метрической программы Яндекс.Метрика. Продолжая использовать сайт, вы даёте согласие с использованием данных технологий».
Политика конфиденциальности
|
|
|
Проблема с CubeDef в Delphi 7
|
|||
|---|---|---|---|
|
#18+
Хочу получить метаданные из MS AS, пишу приерно следующее: var CubesCounter : integer; ActiveConnection : ADODB.TADOConnection; dbCatalog : ADOMD_TLB.Catalog; Cube : ADOMD_TLB.CubeDef; begin ActiveConnection := ADODB.TADOConnection.Create(self) ActiveConnection.ConnectionString := 'Datasource=LocalHost; Provider=msolap; Initial Catalog=FoodMart 2000;'; ActiveConnection.Open(); dbCatalog := ADOMD_TLB.CoCatalog.Create(); dbCatalog.Set_ActiveConnection(ActiveConnection.ConnectionString); for cubesCounter := 0 to dbCatalog.CubeDefs.Count - 1 do begin ShowMessage(dbCatalog.CubeDefs[cubesCounter].Name); end; end; dbCatalog.CubeDefs.Count - возвращает кол-во кубов, но при попытке достать cubedef - вылетает напрочь (Access violation...) Видел топик с подобной проблемой, но решения там нет :( Подскажите пожалуйста, как это можно вылечить. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 08.10.2004, 16:05 |
|
||
|
Проблема с CubeDef в Delphi 7
|
|||
|---|---|---|---|
|
#18+
Сними галку "Stop on Delphi Exceptions" в опциях дебаггера. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 08.10.2004, 17:51 |
|
||
|
Проблема с CubeDef в Delphi 7
|
|||
|---|---|---|---|
|
#18+
Спасибо за отклик, однако такой опции не нашел. Помогло следующее: в файле ADOMD_TLB.pas удалил из интерфейсов CubeDefs и CubeDefsDisp методы типа GhostMethod*, удалил интерфейсы CubeDef и CubeDefDisp, и переименовал CubeDef25 и CubeDef25Disp в соответственно CubeDef и CubeDefDisp. И о чудо - заработало! Вобщем методом проб и ошибок :) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 11.10.2004, 08:14 |
|
||
|
Проблема с CubeDef в Delphi 7
|
|||
|---|---|---|---|
|
#18+
Я делаю примерно так: var Catalog1: ICatalog; Catalog1:=CreateComObject(StringToGUID('ADOMD.Catalog')) as ICatalog; Catalog1._Set_ActiveConnection(OleVariant(ConnectionString)); If Catalog1.CubeDefs.Count > 0 then For i := 0 to Catalog1.CubeDefs.Count-1 do CubeDef1:= Catalog1.CubeDefs as CubeDef; ... Далее обращаешься к CubeDef1.Name ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.10.2004, 11:45 |
|
||
|
|

start [/forum/topic.php?fid=49&msg=32730634&tid=1872169]: |
0ms |
get settings: |
6ms |
get forum list: |
13ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
75ms |
get topic data: |
10ms |
get forum data: |
2ms |
get page messages: |
44ms |
get tp. blocked users: |
2ms |
| others: | 229ms |
| total: | 387ms |

| 0 / 0 |
