【问题标题】:TM1 hierarchy to sql or csvTM1 层次结构到 sql 或 csv
【发布时间】:2015-04-09 17:32:10
【问题描述】:

我需要将TM1的一些父子不平衡维度整合到SQL server。是否有可能将级别之间的关系从 tm1 维度导出到 csv 文件中?

【问题讨论】:

    标签: sql sql-server hierarchical-data dimensional-modeling cognos-tm1


    【解决方案1】:

    这取决于几件事:

    • 您的维度是否有多个层次结构;和
    • 您设想“级别之间的关系”是什么格式。

    看看最简单的场景,这将是:

    • 只有一个层次结构;和
    • 您希望将输出显示为两列,其中一列中的 Child 和第二列中的 Immediate_Parent(或相反),

    您可以在 TI 中通过将数据源定义为要导出的维度的所有子集来执行此操作。将结果变量的内容从 Ignore 更改为 Other。

    在数据选项卡上,使用规则 ELPAR 函数获取当前元素的直接父元素并将其存储在变量中。现在您有了来自数据源的元素名称及其父元素。因此,可以将该对输出到显示元素、父关系的文本文件。

    如果您有多个层次结构,事情可能会变得更加复杂,因为您可能需要分别逐步遍历每个层次结构,这意味着递归调用 TI。同样,如果您不想要父/子关系,而是想要每个元素的整个祖先,您可能需要沿着递归调用路径。

    如果您想得到不同的结果,则需要修改您的问题以更具体。实际上,您会发现 StackOverflow 上通常不会很好地接受“我该怎么做”类型的问题(尤其是当没有迹象表明您尝试过什么时),而且这个问题可能会吸引一些反对票和/或被提出如果不是因为几乎没有人在这里查看 TM1 问题,请持有。 (正如您从大多数 TM1 问题获得的少量视图中看到的那样。)如果我没有回答您的问题,我建议您将其扩展为更详细的内容,并且至少使用上述建议对其进行破解一个起点。如果您仍然无法到达您需要去的地方,发布您想出的代码将有助于有人帮助您。

    【讨论】:

    • 顺便说一句,如果您必须使用递归进程调用,您可能知道您将无法直接输出到单个文件,因为 AsciiOutput 当前特定于单个进程选项卡。如果您有多个选项卡(或多个进程)写入同一个文件,则后面的写入将抹去前面的写入。因此,您需要创建一个输出多维数据集来存储关系,然后在完成后从中写入文件。
    【解决方案2】:

    根据我的研究,我发现 TM1 中有一个用于称为 Bedrock 的进程的库...此 Bedrock TM1 TI 会将子集的成员导出到具有一定级别之间关系的文件中。该文件背后有一个逻辑,通过 SQL 中的一些转换,您可以采用分层方式...该过程的链接附在下面。

    BedrockDimSubExportToFile

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2019-08-10
      • 2011-08-27
      • 2020-11-30
      • 2017-02-04
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多