xml / MDX脚本定义测量显示文件夹



我有一个SSAS数据库,它是由我使用的应用程序自动生成的。这个数据库有很多措施,我想定义"显示文件夹"的措施,所以立方体将在Excel中更加用户友好。我想要一个xml/mdx(脚本,将定义显示文件夹的措施。我发现的一种方法是在visual studio中手动执行一次,然后生成一个完整的"alter cube"xml脚本,该脚本应用当前的定义,并在立方体生成后每次运行它。问题是我需要一个更短的脚本,只会定义显示文件夹(完整的'alter cube'脚本很长,这为我创造了其他问题。

我不是很确定,但是我认为您不能使用XMLA ALTER语句更改任何比完整度量定义更详细的内容。对于您的问题,最好的方法可能是使用AMO的小型。net程序。下面的示例代码我使用c#,但您也可以使用VB.net。AMO的工作方式是:

  1. 你用这样的代码连接到服务器:

    Server server = new Server(); server.Connect("Data source=servername\instancename;Initial catalog=Adventure Works DW 2008 SE");

  2. 您从数据库导航到您想要更改的对象(在您的示例中是度量)的层次结构,类似于:

    MeasureCollection measures = sever.Databases.FindByName("Adventure Works DW 2008 SE").Cubes.Find("YourCubeName").Measures; -- choose the measure(s) you need

  3. 你改变这个对象的一些属性(只改变对象在RAM中的结构)。
  4. 你在对象层次结构的任何对象上调用Update()方法(在你的情况下可能是立方体对象),它将你在调用Update的对象下面的任何对象上做的任何结构更改写回服务器。
  5. 你从服务器断开连接(可能通过server对象上的c# using构造)。

AMO的文档见http://msdn.microsoft.com/en-us/library/microsoft.analysisservices.adomdserver(v=sql.105).aspx

相关内容

  • 没有找到相关文章

最新更新