gpt4 book ai didi

.net - SSIS 中的 Hyperion Essbase 连接

转载 作者:行者123 更新时间:2023-12-04 08:13:57 25 4
gpt4 key购买 nike

如何让 SSIS 连接到 Oracle Hyperion Essbase 多维数据集以将其用作数据源?谷歌搜索返回以下内容:

  • similar question被问及特定版本,除了“第三方工具可以做到”之外没有真正的答案。
  • microsoft SSIS connectors wiki表示您可以通过 Star Analytics 执行此操作.
  • 从 SQL Server 2005 SP2 开始,Reporting Services (SSRS) 具有数据源连接。此产品功能似乎没有转换为 SSIS 的任何对象。一位博主表示,这可能是在 Oracle 购买 Hyperion 之前作为交换条件完成的,因为 Hyperion 那时开始支持连接到 SQL Server 2005 SSAS 多维数据集。
  • 根据@billinkc,他使用直接的.NET 连接到它。一点点挖掘返回Hyperion Application Builder .NET (HAB.NET)。起初,这似乎是一个很有前途的解决方案,但事实证明该产品在 11.1.3 版本中已停产。 @billinkc 现在也提供了一个代码示例,所以我会测试一下,看看它是否有效。

  • 除了许可成本过高的 Star Analytics 服务器产品(对我而言)之外,还有其他解决方案吗?

    最佳答案

    我还没有听说过 HAB.NET,但是找到了 +1。相反,我只是在 .NET 中进行了一个简单的连接测试,如下所示。我对它进行了一些修改以使用 DTS 的东西。显然,您需要定义缓冲区列和类型,但希望这能让您了解 hyperion 的内容。

    为了访问 Microsoft.AnalysisServices.AdomdClient 类,添加对 ADOMD.NET 的引用并保存所有。然后下面的代码将正常运行。

    using System;
    using System.Data;
    using Microsoft.SqlServer.Dts.Pipeline.Wrapper;
    using Microsoft.SqlServer.Dts.Runtime.Wrapper;

    using Microsoft.AnalysisServices.AdomdClient;

    public class ScriptMain : UserComponent
    {
    public override void CreateNewOutputRows()
    {
    string connectionString = string.Empty;
    connectionString = "Provider=MSOLAP;Data Source=http://hyperion00:13080/aps/XMLA; Initial Catalog=GrossRev;User Id=Revenue;Password=ea$yMon3y;";
    string query = "SELECT ...";
    AdomdDataReader reader = null;
    try
    {
    using (AdomdConnection conn = new AdomdConnection(connectionString))
    {
    conn.Open();
    using (AdomdCommand cmd = new AdomdCommand(query, conn))
    {
    reader = cmd.ExecuteReader();

    while (reader.Read())
    {
    // Replace Console.WriteLine with assignment of
    // Output0Buffer.AddRow();
    // Output0Buffer.column = (stronglyTyped) reader[i]
    Console.WriteLine(reader.GetString(0));
    Console.WriteLine(reader.GetString(1));
    }
    Console.WriteLine("fin");
    }

    }
    }
    catch (Exception ex)
    {
    Console.WriteLine(ex);

    throw;
    }
    }
    }

    关于.net - SSIS 中的 Hyperion Essbase 连接,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8842753/

    25 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com