代码之家  ›  专栏  ›  技术社区  ›  Vicky

Pentaho数据集成设置变量不工作

  •  0
  • Vicky  · 技术社区  · 6 年前

    我在PDI 7上,在下面的转换中有一个“修改Java脚本值”步骤:

    var numberOfDays = 100;
    Alert(numberOfDays);
    setVariable("NUMBER_OF_DAYS", numberOfDays, "r");
    Alert(getVariable("NUMBER_OF_DAYS", ""));
    

    但是,当我运行转换时,第一个警报正确地抛出100,但下一个警报为空(意味着未设置变量)。

    这里怎么了?

    1 回复  |  直到 6 年前
        1
  •  2
  •   Kamil Gosciminski    6 年前

    作为一个 经验法则,您应该在 相同的转换中 从不设置 a variable and read it。

    设置 set variables step:

    如果你真的坚持要通过Java脚本来设置这一点,那么下面的设计是:

    < < /P>

    1)设置变量转换用于设置值:

    var numberofdays=100;
    警报(天数);
    setvariable(“天数”,“天数”,“r”);
    < /代码> 
    
    

    2)获取变量transformatoin只读取它

    alert(getvariable(“number_of_days”,“);
    < /代码> 
    
    

    两种转换都使用相同的步骤,但它们有单独的任务。

    n.

    设置时看到一个弹出在勺子里的警告Set Variables步骤:

    enter image description here

    也就是说,如果你真的坚持通过Java脚本来设置这一点,你可以做的是以下设计:

    enter image description here

    在哪里?

    1)设置变量转换用于设置值:

    var numberOfDays = 100;
    Alert(numberOfDays);
    setVariable("NUMBER_OF_DAYS", numberOfDays, "r");
    

    2)获取变量transformatoin只读取它

    Alert(getVariable("NUMBER_OF_DAYS", ""));
    

    两个转换使用相同的步骤,但它们有不同的任务。