Insertar registros desde un archivo en formato (excel o csv) hacia una query

Hola

Muy buenas tardes, presento la siguiente consulta:

  1. Tengo un flujo de trabajo el cual me conecto y ejecuto una query mediante sql oracle, se adjunta print de pantalla del flujo y query para su entendimiento
    image
    image

  2. Por otro lado presento una base en formato excel , el cual presenta ID que me gustaría consultar en la query pero de forma automática y que por el cual no deba insertar registros manualmente, si no que los ID provengan del excel mismo (ejemplo de lo que requiero en print de pantalla

Agradecido de su ayuda

Hola @Pedro87 te doy la bienvenida al foro de KNIME en Español

Creo que una posible solución para su problema sería pasar esos IDs de forma dinámica a la query a través de una variable. Aquí te dejo un ejemplo de como lo haría yo a primera vista:

image

Ten en cuenta que en mi caso he usado datos diferentes, pero la lógica sería la misma.

image

Transformar esos datos a variables, y añadir esos datos como variables en la query.

Espero que esto le sea de ayuda.

All the best,

Jose.

Buenas de nuevo,

Por alguna razón no puedo visualizar sus imágenes.

¿Podrías volver a subirlas? Parece que no se han subido de forma correcta.

Quedo a la espera de su respuesta.

Hola @josegallardo muchas gracias por la respuesta y apoyo en mi consulta.

Realizo lo solicitado y adjunto print de pantalla con la evidencia paso a paso:

  1. Print flujo general

  2. Print variable de flujo

  3. Query con los rut asociado a la variable de flujo

  4. Resultado sin datos

Finalmente no se genera la información, estoy haciendo algo malo?

Saludos

Hola @Pedro87

Creo que como enseño en la primera imagen, deberías en tu caso filtrar la columna de los IDs, luego hacer un Transpose, con lo que tendrás cada ID en una columna diferente y es entonces cuando puedes hacer uso del nodo “Table Row to Variable”. Tras esto, ya tendrás cada ID en una variable diferente.

Hazme saber si finalmente te funciona.

All the best,

Jose.

1 Like

Buenos días
Si no haces un bucle (yo te aconsejo el tipo Chunk) entre el metanodo y la conversión a variable deberías hacer un Group by por el id a consultar utilizado Unique concatenate, eso te crea una cadena separada por comas que se come el IN() de Oracle estupendamente. Piensa que en la variable debe estar el texto que escribirías en el PL, así que si el id fuese cadena habría que previo a la agrupación ponerle la comilla con un String manipulation usando join(“'”,id,“'”)
Un saludo

2 Likes

This topic was automatically closed 90 days after the last reply. New replies are no longer allowed.