Free Trial

Foro

RESUELTAS

Multiples registros son un solo registro

GusDC
Meteoro

Buenas estimados, espero se encuentren bien :)

 

Como puedo importar un archivo de multiples registros donde un conjunto de ellos es solo una transacción? Les paso un ejemplo:

 

:1:Gus

:2:DC

:3:Carrer Amour

Nro 777

:4:ESP

:1:Mark

:2:BC

:3:Carrer Croisants

Nro 9

:4:NOR

:1:Angelina

:2:Jol.

:3:Carrer Aventure

Nro 10

:4:USA

 

Usualmente usaba un metodo de iteracion con otra herramienta que era basicamente como cualquier lenguaje de programación, donde el resutlado que obtenida era el siguiente:

 

Nombre  Apellido  Dirección             Nro     Pais

Gus          DC       Carrer Amour       777     ESP

Mark         BC       Carrer Croisants      9     NOR

Angelina   Jol.      Carrer Aventure      10    USA

 

 

Muchas gracias y un saludo!!

 

2 RESPUESTAS 2
Aguisande
15 - Aurora
15 - Aurora

Hola @GusDC 

Dejame ver si entendí bien:

Este sería el resultado esperado, verdad?

 
 
 
 

Screenshot 2023-07-09 132035.png

Para lograrlo, la clave está en identificar cuál es el primer valor de la serie (En este caso, yo asumí que :1: indicaba el primer valor de cada registro)

 
 

 

Workflow.png

Le asigné un RecordID a cada registro leído, y luego con un MultiRow Formula comparo si posee el "indicador de primer valor" (:1:). Si es así asigno ese RecordID a una nueva columna, si no, utilizo el valor que tiene la fila anterior:

 

MultiRow Configuration.png

 

Este sería el resultado hasta ahora. Cada vez que encuentra la cadena ":1: " Le asigna el RecordID de ese registro, sino continúa con el que traís (El dato pertenece al registro anterior).

MultiRow Results.png

 

Una vez que tienes esto, podemos separar los indicadores/nombre de campo de los valores.

Para ello, usando una herramienta Text To Columns, tomamos el campo Field1 (original), y lo dividimos usando : como delimitador) en 3 columnas

 

Screenshot 2023-07-09 130630.png

El resultado hasta ahora sería:

Screenshot 2023-07-09 130828.png

 

Si notas el campo [Field12] verás que como el Nro de la dirección no trae el nombre en los datos originals, esos valores quedan en Null.

Para resolver ese tema, y aprovechando tambi[en quitamos el Strin "Nro " del valor, usamos una fórmula:

Screenshot 2023-07-09 132120.png

 

Y utilizamos otra fórmula para resolver el valor Null del campo [Field13]:

Screenshot 2023-07-09 131211.png

en este punto, tenemos este resultado:

Screenshot 2023-07-09 132230.png

 

Ahora nos toca pivotear el dataset. Para este paso es que hicimos el campo Identificar:1 con el Multi-Row Formula tool.

Con un CrossTab tool, agrupamos los valores por el campo [Identificar:1]. Esto nos dará un registro/fila por cada valor diferente en esa columna

 

Screenshot 2023-07-09 131442.png

Al final, ya sólo queda renombrar los campos para que coincidan con el output deseado. Esto se hace con un Select tool (Nro no necesita ser renombrado, porque en la fórmula, ya le dimos un nombre).

Screenshot 2023-07-09 131724.png

 

Espero que te sirva para resolver tu caso.

Saludos

GusDC
Meteoro

Excelente explicación @Aguisande 

 

Muchas gracias!! 😀

Etiquetas