É possível usar o estágio Transformer para converter uma única linha para dados com colunas de repetição em várias linhas de saída.
Dados de entrada com várias colunas de repetição
Quando os dados de entrada contêm linhas com várias colunas contendo dados de repetição, é possível usar o estágio Transformer para produzir várias linhas de saída: uma para cada uma das colunas de repetição.
Por exemplo, se a linha de entrada continha os dados a seguir.
| Col1 |
Col2 |
Name1 |
Name2 |
Name3 |
| abc |
def |
Jim |
Bob |
Tom |
É possível usar o estágio Transformer para comprimir os dados de entrada e criar várias linhas de saída para cada linha de entrada. Os dados agora abrangem as colunas a seguir.
| Col1 |
Col2 |
Nome |
| abc |
def |
Jim |
| abc |
def |
Bob |
| abc |
def |
Tom |
Para implementar esse cenário no estágio Transformer, faça as configurações a seguir:
- Condição de loop
- Insira a expressão a seguir como a condição de loop:
@ITERATION <= 3
Como cada linha de entrada tem três colunas contendo nomes, é necessário processar cada linha de entrada três vezes e criar três linhas de saída separadas.
- Variável de loop
- Defina uma variável de loop para fornecer o valor para a nova coluna Nome em suas linhas de saída. O valor de LoopVar1 é configurado pela expressão a seguir:
IF (@ITERATION = 1) THEN inlink.Name1
ELSE IF (@ITERATION = 2) THEN inlink.Name2
ELSE inlink.Name3
- Metadados e derivações do link de saída
- Defina as colunas do link de saída e suas derivações:
- Col1 - inlink.col1
- Col2 - inlink.col2
- Name - LoopVar1