Pentaho 如何使用字段作为Mondrian输入步骤的MDX查询而不是变量?

Pentaho 如何使用字段作为Mondrian输入步骤的MDX查询而不是变量?,pentaho,kettle,Pentaho,Kettle,我有一个PDI转换,它以“从结果获取行”步骤开始。每行包含一个字段,该字段的值为MDX命令。我正在使用“Mondrian输入”步骤,并希望在MDX查询区域中使用该字段,但似乎值替换只适用于变量(而不是字段) 有人知道我如何使用字段而不是变量吗?有没有一种方法可以将字段的值作为转换中的变量来获取 事先非常感谢看来这不可能马上实现。这里有一个潜在的解决方法: 将字段合并成一个字符串,格式类似于MDX语法中的值数组,并将其存储在变量中。然后在Mondrian输入步骤中访问此变量以获取值 如果您不熟悉在

我有一个PDI转换,它以“从结果获取行”步骤开始。每行包含一个字段,该字段的值为MDX命令。我正在使用“Mondrian输入”步骤,并希望在MDX查询区域中使用该字段,但似乎值替换只适用于变量(而不是字段)

有人知道我如何使用字段而不是变量吗?有没有一种方法可以将字段的值作为转换中的变量来获取


事先非常感谢

看来这不可能马上实现。这里有一个潜在的解决方法:

将字段合并成一个字符串,格式类似于MDX语法中的值数组,并将其存储在变量中。然后在Mondrian输入步骤中访问此变量以获取值


如果您不熟悉在Kettle中使用变量,则需要在使用变量之前设置变量。我所说的before是指在包含Mondrian输入步骤的转换之前运行的转换或作业步骤。您将无法在与Mondrian输入步骤相同的转换中设置变量并可靠地获取值,因为转换中的执行顺序不正确。

看起来这不可能立即实现。这里有一个潜在的解决方法:

将字段合并成一个字符串,格式类似于MDX语法中的值数组,并将其存储在变量中。然后在Mondrian输入步骤中访问此变量以获取值


如果您不熟悉在Kettle中使用变量,则需要在使用变量之前设置变量。我所说的before是指在包含Mondrian输入步骤的转换之前运行的转换或作业步骤。您将无法在与Mondrian输入步骤相同的转换中设置变量并可靠地获取值,因为转换中的执行顺序不正确。

感谢您的回复。我熟悉在Kettle中使用变量,这是我使用的第一种方法:我的转换不是以“从结果获取行”步骤开始的。相反,在它之前执行的另一个转换将它传递给MDX查询以作为变量(在其参数中)执行。使用这种方法,我没有任何问题。当我需要一起执行上一次转换生成的所有MDX查询并获得它们的结果,而不是逐个执行它们时,就会出现问题。在这种情况下,我将查询作为字段,而不是变量。但是你是对的,我的两个问题都不可能立即解决。谢谢你的回答。我熟悉在Kettle中使用变量,这是我使用的第一种方法:我的转换不是以“从结果获取行”步骤开始的。相反,在它之前执行的另一个转换将它传递给MDX查询以作为变量(在其参数中)执行。使用这种方法,我没有任何问题。当我需要一起执行上一次转换生成的所有MDX查询并获得它们的结果,而不是逐个执行它们时,就会出现问题。在本例中,我将查询作为字段,而不是变量。但您是对的,我的两个问题都不可能立即解决。