using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using Microsoft.ReportingServices.XmlaClient;
namespace RawEssBaseConnect
{
class Program
{
static void Main(string[] args)
{
connectNow();
Console.Read();
}
static void connectNow()
{
Console.WriteLine("Connecting...");
AdomdConnection cn = new AdomdConnection();
string connString = "Data Source=http://YOURSERVER/aps/XMLA;Initial Catalog=YOURCATALOG;DataSourceInfo=\"Provider=Essbase;Data Source=YOURDATASOURCE\";Persist Security Info=True;User ID=YOURUSERID;Password=YOURPASSWORD";
cn.ConnectionString = connString;
cn.Open();
Console.WriteLine("State=" + cn.State.ToString());
CubeCollection cubes = cn.Cubes;
Console.WriteLine("Cube Count=" + cubes.Count.ToString());
CubeDef cube = cubes[0];
Console.WriteLine("Cube name=" + cube.Name);
Console.WriteLine("Dimensions count=" + cubes[0].Dimensions.Count.ToString());
foreach (Dimension dim in cubes[0].Dimensions)
{
Console.WriteLine();
Console.WriteLine("Dimension = " + dim.Name);
}
string mdx = "WRITE YOUR MDX HERE";
AdomdCommand cmd = new AdomdCommand(mdx, cn);
AdomdDataReader dr = cmd.ExecuteReader();
while (dr.Read())
{
Console.WriteLine();
for (int i = 0; i < dr.FieldCount; i++)
{
Console.WriteLine(dr[i].ToString());
}
}
dr.Close();
cn.Close();
cn.Dispose();
}
}
}