Pentaho:从开始日期到结束日期循环播放

时间:2020-07-31 14:43:32

标签: loops pentaho kettle pentaho-spoon pdi

在Pentaho的PDI中,我正在尝试从开始日期到当前日期的每一天。我正在尝试将此日期传递给Rest Client。例如,我开始5天前,将该日期传递给Rest客户任务,然后转到4天前,将该日期传递给Rest客户任务,然后转到3天前,将该日期传递给Rest客户任务等,直到当前日期。如何使用PDI完成这种类型的循环?非常感谢任何人可以在这里提供的帮助或见识。

谢谢!

1 个答案:

答案 0 :(得分:1)

假设start_date是您通过主菜单Edit-> settings-> Parameters标签设置的参数,并带有以下条目:

Parameter: start_date
Default Value: 2020-09-10

然后您可以尝试通过4个步骤进行以下转换:

enter image description here

步骤1: Get System Info步骤,添加一个名称为{today和类型为{Today 00:00:00

的字段

步骤2: Calculator步骤,设置以下3个字段: enter image description here

  1. _start_date:将字段设置为常数A
  2. start_date:字符串A中的变量替换
  3. n_repeat:数据A-数据B(以天为单位)

步骤3: Clone row步骤,请执行以下操作:

enter image description here

  • 选中Nr clone in field?并将字段名称设置为n_repeat
  • 选中Add clone num to并将字段名称设置为rn

步骤4: Calculator步骤,添加三个字段: enter image description here

  1. new_date:日期A + B天
  2. base_uri:将字段设置为常数A
  3. request_uri:A + B

使用start_date ='2020-09-10'运行上述转换,我们得到输出: enter image description here

注意:您可以再添加一个Select values步骤,仅保留所需的字段。