Buenas tardes,
Mi pregunta es la siguiente:
Quiero crear un canal que haga una select de una BBDD y lo que me devuelva lo almacene en una EXCEL o fichero en texto plano, pero no se como hacerlo.
Si alguien sabe como hacerlo y me indica se lo agradecería.
Hola:
En primer lugar, bienvenido al foro y gracias por participar.
Así de forma general, se me ocurre que podrías usar un conector fuente de tipo Database Reader para ir leyendo la información de la base de datos (tendrías que marcar los registros como leídos para no leerlos más veces), y luego configurar un conector destino de tipo File Writer para ir escribiendo en un fichero la información que necesites (por ejemplo, un fichero de texto plano con formato .csv y con la opción Append para que la información se vaya agregando al mismo conforme se vaya leyendo de la base de datos).
Esto valdría si tienes bien definido el conjunto de registros de quieres leer en la consulta SQL del conector fuente, para después ejecutar el canal manualmente y darle un nombre adecuado al fichero. En caso de que necesites automatizar esto de alguna forma, es posible que hubiera que establecer una estrategia algo más sofisticada para programar la lectura de diferentes rangos en diferentes intervalos de tiempo para generar diferentes ficheros.
Espero haberte orientado. Ya nos cuentas qué tal te fue.
Un saludo.
@fjcarrasco Mcuhas gracias. Ya he conseguido que me salga el fichero. Pero no tiene la estructura que quiero. No me sale bien la información, sino que se unen los nombres de las columnas de la bbdd con su valor.
No tengo claro como puedo formatear dicho fichero.
Hola:
Lo que dices tiene sentido, ya que entiendo que la información de las cabeceras no se lee desde la base datos.
De esta forma, tendrás que gestionar la inicialización de este fichero con una primera escritura de las cabeceras la primera vez que leas un registro de la base de datos, y evitar que esto vuelva a ejecutrase en las siguientes iteraciones para escribir el resto de registros.
Ya nos cuentas si has podido conseguirlo.
Un saludo.