Como se genera un Archivo plano de un SELECTen SQL SERVER

jfredy
20 de Febrero del 2006
Tengo una inaquietud y necesito que alguien me haga el favor y me colabore.
la problematica es la diguiente: necesito filtrar una informacion de diferentes tablas y con ello generar un archivo plano (TXT) con unas especificaciones, que son las siguientes:
El archivo .txt, debe estar compuesto por tres tipos de registros:
1. ENCABEZADO: se concatenan, fecha de generacion del archivo txt, nombre del archivo incluyendo la extension .txt (NOM_REGISTRO.txt) y debe coincidir con el nombre externo del mismo archivo y completarse con ceros hasta el tamaño maximo del registro por ej = 143 caracteres (de encabezado es sólo un registro, nada más)
2. DETALLE: Acá se concatenan los campos que se extrayeron del Join o select, de esta manera:
Registro1: campo1+campo2+campo3+...+campoN=143 caracteres
Registro2: campo1+campo2+campo3+...+campoN=143 caracteres
.
.
RegistroM: campo1+campo2+campo3+...+campoN=143 caracteres
De registro detalle la cantidad de registros es M, dependiendo de cuantos extraiga el select y/o Join.

3. TOTALES: se concatenan algunos totales, por ej:
cant registr=M+total ventas+totalporcentajes+etc o ceros.... = 143 caracteres; la cantidad de registros totales es 1al igual que el encabezado

En cada registro se concatenan los campos especificos, y deben sumar la misma cantidad de caracteres, por ej. 143, y cada campo a concatenar tiene un tamaño especifico y si no es completado se rellena o con ceros a la izquierada si es numerico el campo a concatenar, o con espacios a la derecha si es alfanumerico.

de esta manera quedaria conformado el archivo por ej: NOMBREAAAAMMDD.txt que debe coincidir su nombre externo con la fecha de generacion y el nombre interno (nombre que esta en el registro encabezado), esto debe ser en SQL server, tengo una solucion en Oracle pero es total mente diferente a la sintaxis en SQL server, no se si me pueden ayudar
Mucha Gracias!

Isa?
20 de Febrero del 2006
Lo puedes hacer mediante DTS o bien con BCP.EXE, hay posibilidad que puedas utilizar OSQL.EXE

jfredy
20 de Febrero del 2006
Y esos ejecutables están implicitos en los archivos de programa del SQL Server o es por comandos?? no lo he utilizado