|  08.07.2010, 14:45 | #1 | 
| Участник | PivotTable и OLAP 
			
			Привет всем! Возникла необходимость прицепиться из Аксапты к существующему кубу на 2008 сервере. Ставлю на форму ActiveX PivotTable а дальше надо подключиться - не выходит. инстанс: olapserver\dds кубик: salescube X++: strConnection = '"Provider=MSOLAP;Data Source=olapserver\\dds;Initial Catalog=salescube;';
pt1.ConnectionString(strConnection);[Microsoft][Диспетчер драйверов ODBC] Источник данных не найден и не указан драйвер, используемый по умолчанию" если вот такую строку подключения сделать: X++: strConnection = '"Provider=MSOLAP;Integrated Security=SSPI;Persist Security Info=False;Data Source=olapserver\\dds;Initial Catalog=salescube;';
pt1.ConnectionString(strConnection);как прицепиться то к кубику? пытался писать и так: Provider=MSOLAP.3 (хотя это для 2005) и Provider=MSOLAP.4 - фиг вам  Сразу про формат строки - в начале двойная кавычка, т.к. без нее вообще не хочет коннектиться, а если поставить в конце закрывающуюся двойную кавычку - тоже не хочет коннектиться. "The data provider didn't supply any further error information" и тишина. Авторизация виндусовая сделана и если захожу через Management Studio - все подключается и все работает. 
				__________________ и не таких обламывали | 
|  | 
|  08.07.2010, 15:03 | #2 | 
| Участник | 
			
			Неправильно. Надо так: 1) Initial Catalog=НАЗВАНИЕ БД ОЛАП 2) перед вызовом pt1.ConnectionString() нужно вызвать X++: pt1.DataMember("Название куба")
				__________________ Ivanhoe as is.. | 
|  | 
|  08.07.2010, 15:15 | #3 | 
| Участник | Цитата: инстанс: olapserver\dds база олап: DDS куб: salescube X++: strConnection = '"Provider=MSOLAP;Data Source=olapserver\\dds;Initial Catalog=DDS'; pt1.DataMember('salescube'); pt1.ConnectionString(strConnection); 
				__________________ и не таких обламывали | 
|  | 
|  08.07.2010, 15:23 | #4 | 
| Участник | 
			
			Попробуйте такую строку: Цитата: 
		
			Provider=MSOLAP.3;Integrated Security=SSPI;Persist Security Info=False;Initial Catalog=Dynamics AX;Data Source=SRV\OLAP
		
	 где SRV\OLAP - полное название сервера ОЛАП; Dynamics AX - название БД ОЛАП. И зачем у вас двойная кавычка в начале? 
				__________________ Ivanhoe as is.. | 
|  | |
| За это сообщение автора поблагодарили: Player1 (2). | |
|  08.07.2010, 15:28 | #5 | 
| Участник | 
			
			Спасибо, заработало! С кавычкой это я извращался, а то выдавалось "The data provider didn't supply any further error information" сейчас все нормально и без нее. Спасибо! Если уж зашел разговор про OLAP - этот вариант просто самый быстрый. А есть ли в 2009 возможность прицепляться к внешним кубам каким-то нормальными средствами визуализации,например, как в 2010 шарепоинте? Чтобы и таблицы видеть и графики смотреть красивые? 
				__________________ и не таких обламывали Последний раз редактировалось Kuibida; 08.07.2010 в 15:53. | 
|  | 
|  19.04.2014, 10:27 | #6 | 
| Участник |   
			
			А получить список кубов в базе реально?
		 | 
|  | 
|  19.04.2014, 13:52 | #7 | 
| Участник | 
			
			Реально. Например, вот так X++: Microsoft.AnalysisServices.AdomdClient.AdomdConnection con = new Microsoft.AnalysisServices.AdomdClient.AdomdConnection(); Microsoft.AnalysisServices.AdomdClient.CubeCollection cubes; Microsoft.AnalysisServices.AdomdClient.CubeDef cubeDef; int i; int cubesCount; ; // set your own connection string con.set_ConnectionString("provider=msolap;Data Source=(local);initial catalog=<YourCubeBase>;"); con.Open(); cubes = con.get_Cubes(); cubesCount = cubes.get_Count(); for (i = 0; i < cubesCount; i++) { cubeDef = cubes.get_Item(i); if (cubeDef.get_Type() == Microsoft.AnalysisServices.AdomdClient.CubeType::Cube) info(cubeDef.get_Name()); } Для работы данного кода в узле References должна быть подключена сборка Microsoft.AnalysisServices.AdomdClient Последний раз редактировалось Cardagant; 19.04.2014 в 14:07. | 
|  | |
| За это сообщение автора поблагодарили: sukhanchik (2), gl00mie (2), Player1 (2), arhat (1). | |
|  21.04.2014, 06:37 | #8 | 
| Участник | 
			
			Да читал про этот вариант OLAP: проблема с программным процессингом измерений SSAS 2005  Спасибо что откликнулись, но т.к. версия Ах3.0, то вариант с References не подходит. Смотрю в сторону DSO, но опять же он не поддерживается в sql server 2008. | 
|  | |
| За это сообщение автора поблагодарили: Cardagant (1). | |
|  21.04.2014, 13:54 | #9 | 
| Участник | Цитата: 
		
			Сообщение от Player1
			   Да читал про этот вариант OLAP: проблема с программным процессингом измерений SSAS 2005  Прочитав, выложу подобный вариант с использованием IEnumerator, который также может быть полезен и применён в версиях, поддерживающих CLR. X++: Microsoft.AnalysisServices.AdomdClient.AdomdConnection con = new Microsoft.AnalysisServices.AdomdClient.AdomdConnection(); Microsoft.AnalysisServices.AdomdClient.CubeCollection cubes; Microsoft.AnalysisServices.AdomdClient.CubeDef cubeDef; System.Collections.IEnumerator en; ; // set your own connection string con.set_ConnectionString("provider=msolap;Data Source=(local);initial catalog=<YourCubeBase>;"); con.Open(); cubes = con.get_Cubes(); en = cubes.GetEnumerator(); while(en.MoveNext()) { cubeDef = en.get_Current(); if (cubeDef.get_Type() == Microsoft.AnalysisServices.AdomdClient.CubeType::Cube) info(cubeDef.get_Name()); } | 
|  | 
| Теги | 
| activex, adomd, olap, pivottable, сводная таблица | 
|  | 
| 
 |