En esta ruta de aprendizaje conectado, tomaremos un extracto de datos de un sistema y realizaremos una serie de transformaciones para preparar el archivo de datos para cargarlo en otro sistema.
Objetivo de aprendizaje principal | Para resaltar algunos de los comandos simples, pero poderosos del Conector de Transformación Tabular que se pueden usar para abordar necesidades de transformación comunes |
Requisitos previos | Configurar conexiones de conector HTTP, Utilidades de archivosy Transformación tabular |
Plantilla de cadena de soporte | CLP | Transformaciones tabulares |
Paso 1: Crear una cadena
- Agregar una nueva cadena
- Nombra la cadena: CLP | Transformaciones tabulares
- Crear una variable de cadena
- Nombre: cv-TT-SampleData
- Valor: https://cs-sftp-training-bucket.s3.amazonaws.com/cs-training/transformation-qs/sample.txt
- Salva la cadena
Paso 2: Recuperar datos de un sistema fuente
Utilice el conector HTTP para ilustrar cómo recuperar datos de una fuente de datos para la que no existe un conector Workiva.
- Agregue un comando GET desde el conector HTTP al nodo de inicio
- Configure el comando con lo siguiente:
Paso 3: Actualizar los encabezados en el archivo de datos
Actualice los encabezados en el archivo para que coincidan con los nombres de campo del sistema en el que se cargará el archivo de datos después de que se completen las transformaciones. El comando Encabezados de mapa nos permite actualizar el nombre del campo en función del índice, lo que permite que el comando sea más flexible en caso de que un nombre de campo cambie en el futuro.
- Agregue un comando Encabezados de mapa desde el Conector de transformación tabular a la cadena
- Conecte el nodo de inicio (HTTP - Obtener datos del sistema de origen) al comando Encabezados del mapa
- Editar el comando:
- Nombra el comando: Encabezados del mapa
- Haga clic en el parámetro Archivo de entrada . El panel de selección de variables se abre a la izquierda. En la sección Comando , expanda el comando Obtener - Datos del sistema de origen y seleccione la opción Respuesta Salida
- Deje el parámetro Archivo de salida en blanco
- Marque la casilla para Obtener una vista previa de los resultados
- Deje el delimitadorcomo coma ya que el archivo de datos del sistema de origen está delimitado por comas.
- En el parámetro Encabezados de entrada , ingrese números del cero (0) al siete (7) ya que el archivo tiene ocho campos y las listas están basadas en cero. ¡Asegúrese de presionar la tecla Enter después de escribir cada número!
- Marque la casilla para Utilizar índices. Esto le indica al comando que los encabezados de entrada se basan en la posición en el archivo en lugar del nombre de la columna real.
- En los encabezados de salida, especifique el nombre de los nuevos campos que se crearán. El orden es importante, ya que la primera entrada de la lista reemplazará el nombre del encabezado del primer campo en el archivo del sistema de origen, y así sucesivamente para cada una de las entradas restantes. Escriba los siguientes encabezados y presione la tecla Enter después de cada uno:
- Producto
- Mercado
- Mes
- Escenario
- Ventas
- COGS
- Gastos
- Ingresos de explotación
- Guardar el comando
Paso 4: Mover columnas de datos a filas
A continuación, actualice el archivo de datos para transponer las múltiples columnas de datos en filas para crear una sola columna de datos. Esta operación se llama despivotar. La operación de despivot alinea los datos en el formato esperado, una única columna que contiene todos los datos del sistema descendente.
- Agregue un comando Unpivot desde el Conector de transformación tabular a la cadena
- Conecte el comando Encabezados de mapa al comando Despivotar
- Editar el comando
- Nombre del comando: Despivotar - Mover medidas a filas
- Seleccione Salida de encabezados de mapa para el parámetro Archivo de entrada
- La salida de los encabezados del mapa todavía está delimitada por comas, por lo que dejamos el delimitadorcomo coma
- En el parámetro Agregación , seleccione Suma. Al elegir Suma, todas las filas resultantes creadas al despivotar que sean iguales en todas las columnas agregarán los valores de los datos en un único punto de datos.
- En el parámetro Nueva etiqueta de columna , ingrese Medidas. Este es el encabezado de la nueva columna que se creará y se completará con los valores de encabezado de las columnas que se despivotarán.
- En el parámetro Etiqueta de columna de datos , ingrese Monto
- Los campos Encabezados de datos, Nombre de columna de pivote inicial, Nombre de columna de pivote final, Índice de columna de pivote inicialy Índice de columna de pivote final se utilizan para realizar la operación de pivote. No es necesario especificar todos estos parámetros.
- Si se utiliza el parámetro Encabezados de datos , los parámetros restantes deben dejarse en blanco. El parámetro Encabezados de datos permite especificar el nombre de las columnas. Este parámetro es útil para campos que no son concurrentes/uno al lado del otro.
- Los parámetros Nombre de columna inicial/final permiten especificar el nombre de la primera y la última columna (para un rango simultáneo). Si se utilizan estos parámetros, el parámetro Encabezados de datos así como el Índice de columna inicial/final deben dejarse en blanco. Si el Nombre de columna final se deja en blanco, la despivotación se realizará para todos los campos después (e incluyendo) el Nombre de columna inicial.
- Los parámetros Índice de columna inicial/finalpermiten especificar la posición de la primera y la última columna (para un rango simultáneo). Si se utilizan estos parámetros, el parámetro Encabezados de datos así como el Nombre de columna inicial/final deben dejarse en blanco. Si el Índice de columna final se deja en blanco, se realizará la despivotación para todos los campos después (e incluyendo) el Índice de columna inicial. Utilizamos estos parámetros en este ejercicio.
- En el índice de columna dinámica inicial
- Deje el índice de la columna pivote finalen blanco.
Paso 5: Actualizar el escenario
A continuación, cambie el nombre del escenario. Esto ilustra una transformación simple y única que se adapta bien a Integration Studio. Data Prep simplifica significativamente las transformaciones de cambio de nombre más extensas o complejas.
- Agregue un comando Buscar y reemplazar desde el Conector de transformación tabular a la cadena
- Conecte el comando Unpivot al comando Buscar y reemplazar
- Editar el comando:
- Nombre del comando: Buscar y reemplazar - Presupuesto con plan
- En el parámetro Archivo de entrada , seleccione Resultado pivotado Salida del comando Despivot
- Deje el parámetro Archivo de salida en blanco
- Marque la casilla para Obtener una vista previa de los resultados
- El archivo no pivotado aún está delimitado por comas, así que especifique el delimitador como Coma
- Buscaremos el texto Presupuesto y lo reemplazaremos con el texto Plan. En el parámetro Buscar patrón , ingrese Presupuesto.
- En el parámetro Valor de patrón de coincidencia , seleccione Exacto
- Exacto significa que estamos buscando todo el texto especificado en los parámetros del patrón de búsqueda. Para buscar subcadenas o comodines, necesitaríamos utilizar el tipo de patrón de expresión regular (regex).
- En el parámetro Valor de reemplazo , ingrese Plan. Cualquier instancia del texto Presupuesto será reemplazada por el texto Plan.
- El parámetro Reemplazar solo coincidencias no es aplicable a coincidencias exactas y se puede dejar sin marcar ya que es el valor predeterminado.
- Deje la opción Sin distinción entre mayúsculas y minúsculas sin marcar. Esto hace que la operación Buscar y reemplazar distinga entre mayúsculas y minúsculas, de modo que Presupuesto será reemplazado por Plan pero presupuesto no.
- La columna Escenario donde se encuentra el Patrón de búsqueda (Presupuesto) en la cuarta columna. En el parámetro Columnas , ingrese un número tres (3) ya que el parámetro está basado en cero.
- Guardar el comando
Paso 6: Conservar únicamente los datos del plan de Nueva York
A continuación, conserve únicamente el plan de Nueva York utilizando el comando de filtro inteligente. Este filtro inteligente nos permite especificar condiciones basadas en los datos que se utilizarán para mantener o eliminar ciertas filas del conjunto de datos.
- Agregue un comando Filas de filtro inteligente desde el Conector de transformación tabular a la cadena
- Conecte el comando Filas de filtro inteligente al comando Buscar y reemplazar
- Editar el comando:
- Nombre del comando: Filas de filtro inteligente - Solo plan de Nueva York
- En el parámetro Archivo de entrada, seleccione Buscar y reemplazar Salida del Comando Buscar y reemplazar
- Deje el parámetro Archivo de salida en blanco
- Especifique Coma como el Delimitador
- En la sección Filtros , existe la posibilidad de utilizar filtros de Texto, Númeroy Fecha . Se pueden especificar múltiples condiciones de filtro. Si se aplican filtros a diferentes tipos (Texto, Número, Fecha), entonces el Operador en la parte superior izquierda debe especificarse como corresponde. Si se aplican múltiples condiciones dentro de un tipo determinado (por ejemplo, Texto), entonces se debe especificar el operador para ese tipo de filtro.
- En este ejercicio, aplicaremos filtros basados en texto para que el operador global pueda ser Y o O.
- Si es necesario, configure el Operador General en Y
- Haga clic en el botón Agregar en los filtros Texto
- En el parámetro Nombre de columna , ingrese Escenario
- Deje sin marcar la opción Sin distinción entre mayúsculas y minúsculas
- En el menú desplegable Condición , seleccione Igual a
- En el parámetro Comparar texto , ingrese Actual
- Deje las casillas de verificación No y Recortar sin marcar
- Este filtro se utilizará para eliminar cualquier registro donde el campo Escenario contenga un valor de Real
- Haga clic en el botón Agregar nuevamente en la sección Filtros de texto
- Establezca el operador de filtros de texto en O
- Seleccione la combinación OR para filtrar tanto los datos reales como los de Nueva York.
- En la segunda condición, especifique Mercado como el Nombre de columna
- Establezca la condición en igual a
- Especifique Comparar texto como Nueva York
- Por último, marca la opción No
- Establezca el operador de filtros de texto en O
- Deje marcada la opción Vista previa del resultado
- Si es necesario, configure el Operador General en Y
- En este ejercicio, aplicaremos filtros basados en texto para que el operador global pueda ser Y o O.
- La opción Invertir permite que el Filtro inteligente mantenga (marcado) o elimine (desmarcado) todas las filas que coincidan con los criterios del filtro. En este ejercicio, queremos eliminar todas las filas donde el Escenario sea igual al Real o el Mercado no sea igual a Nueva York. Para lograr esto , desmarcamos la opción Invertir .
- Guardar el comando
Paso 7: Agregar una columna de año
Por último, agregue una columna adicional al conjunto de datos para indicar el año de los datos.
- Agregue un comando Insertar columna desde el conector de transformación tabular a la cadena
- Conecte el comando Insertar columna al comando Filas de filtro inteligente
- Edite el comando y configúrelo con lo siguiente:
Nombre | Insertar columna - Año del plan |
Archivo de entrada | Salida de fila de filtro inteligente |
Archivo de salida | <dejar en blanco> |
Vista previa de resultados | Comprobado |
Delimitador | Coma |
Texto del encabezado | Año |
Valor de los datos | 2022 |
Insertar índice | 3 |
- Guardar el comando
Paso 8: Pruebe el ejercicio
Ahora que la cadena está completa, prueba el resultado.
- Publicar la Cadena
- Haga clic en Ejecutar y luego seleccione Ejecutar cadena
- Una vez completada la cadena, haga clic en el nodo Insertar columna - Año del plan
- En la pestaña Salidas, confirme que se generaron 385 registros
- Haga clic en la pestaña Registros y confirme los datos según la imagen a continuación.
Pestaña de salida
Pestaña Registros
Para obtener más información sobre la transformación de datos mediante cadenas, consulte Rutas de aprendizaje conectadas: Introducción a la transformación!