代码之家  ›  专栏  ›  技术社区  ›  Feres.o

有没有办法把所有的比赛从tmap变成一张单子

  •  0
  • Feres.o  · 技术社区  · 6 年前

    我正在使用Talend在两个表之间进行联合操作,以获取所有匹配记录。

    enter image description here

    这是我的桌子:

    1. 职业生涯表
    2. 表事业的中断

    所以逻辑是这样的。一个人可以有卡雷尔号码 X10 开关启动形式 01-01-2000 31-12-2000 . 在另一方面,我有很多与这个卡尔有关的中断 X10

    • 中断 X10 01-02-2000 05-02-2000
    • 中断 10倍 05-06-2000 05-07-2000
    • 中断 X10 30-10-2000 01-11-2000

    我有一个接受两个参数的函数(carrer car,inter中断) 我使用这个函数来分割带有中断间隔的carrer间隔 只得到一个不间断的搬运器

    enter image description here

    例如

    • Carrer开始日期 01-01-2000 31-12—2000

    具有

    • 中断开始日期 05-02-2000 07-02-2000

    作为输出函数,我得到一个:

    • Carrer One:开始日期 2000年1月1日 04-02-2000
    • 中断:开始日期 05-02-2000 2000年2月7日
    • Carrer 2:开始日期 08-02-2000 31-12—2000

      我的程序工作得很好,因为我只有一个与卡勒有关的中断。

    当我有多个中断时,函数将得到这样的所有记录(所有匹配行逐行)

    carrer X  Interruption I1     ->  to my function ()
    carrer X  Interruption I2     ->  to my function ()
    carrer X  Interruption I3     ->  to my function ()
    

    在这种情况下,所有的逻辑都将是错误的,因为在第一次中断后,carrer没有更新,因为我们总是将相同的carrer x 3次传递给我的函数。

    我的问题是有没有一种方法可以一次把所有的比赛都传给我的职能部门 这样地

    carrer X ,  List<interruption>  -> to my function 
    
    1 回复  |  直到 6 年前
        1
  •  0
  •   Feres.o    6 年前

    我找到了一种方法来获得一个行列表(所有与主线对应的中断行)。 这是用 tAggregateRow component.

    以下是新架构:

    enter image description here

    我用两个列表将所有的开始日期和结束日期分组,这与Carrer非常相似。

    enter image description here

    还有我的最后一个TMAP SHCEMA。

    enter image description here