Formatear valores

09/03/2005 - 14:59 por Carlos | Informe spam
Cordial saludo.

Tengo que formatear valores para enviarlos a un archivo plano y es lo
siguiente:
En la tabla el campo Facturas la longitud es de 10 pero en el archivo plano
debe ser de 20;
Valor la longitud es de 10 pero en el archivo plano debe ser de 15 con
separador de decimal(.) con dos ceros al final;
Nombre la longitud es de 20 pero en el archivo plano debe ser de 30 asi que
hay que rellenar con espacios en blanco.

Agradezco la ayuda que me puedan brindar.

Preguntas similare

Leer las respuestas

#1 Maxi
09/03/2005 - 15:28 | Informe spam
Hola, todo dependera de donde queres rellenar los espacios (adelante o
atras), si es detras puedes usar el tipo char asi

select convert(char(20),nombre)

si los quieres al inicio vas a tener que hacer algo como

declare @n varchar(20)
set @n = 'pepe'

select replicate(' ',30 - len(@n)) + @n



Salu2
Maxi


"Carlos" escribió en el mensaje
news:
Cordial saludo.

Tengo que formatear valores para enviarlos a un archivo plano y es lo
siguiente:
En la tabla el campo Facturas la longitud es de 10 pero en el archivo
plano
debe ser de 20;
Valor la longitud es de 10 pero en el archivo plano debe ser de 15 con
separador de decimal(.) con dos ceros al final;
Nombre la longitud es de 20 pero en el archivo plano debe ser de 30 asi
que
hay que rellenar con espacios en blanco.

Agradezco la ayuda que me puedan brindar.
Respuesta Responder a este mensaje
#2 Alejandro Mesa
09/03/2005 - 15:41 | Informe spam
Carlos,

En la tabla el campo Facturas la longitud es de 10 pero en el archivo plano
debe ser de 20;



Cual es el tipo de dato de la columna "Facturas"?

- INT

replace(str([facturas], 20, 0), space(1), '0')


Valor la longitud es de 10 pero en el archivo plano debe ser de 15 con
separador de decimal(.) con dos ceros al final;



Por los decimales podria deducir que es MONEY o DECIMAL. Si es DECIMAL cual
es la precision y escala actual?

- MONEY / DECIMAL

replace(str([valor], 15, 2), space(1), '0')

Nombre la longitud es de 20 pero en el archivo plano debe ser de 30 asi que



left(isnull([nombre] + space(30), space(30)), 30)


AMB

"Carlos" wrote:

Cordial saludo.

Tengo que formatear valores para enviarlos a un archivo plano y es lo
siguiente:
En la tabla el campo Facturas la longitud es de 10 pero en el archivo plano
debe ser de 20;
Valor la longitud es de 10 pero en el archivo plano debe ser de 15 con
separador de decimal(.) con dos ceros al final;
Nombre la longitud es de 20 pero en el archivo plano debe ser de 30 asi que
hay que rellenar con espacios en blanco.

Agradezco la ayuda que me puedan brindar.
email Siga el debate Respuesta Responder a este mensaje
Ads by Google
Help Hacer una preguntaRespuesta Tengo una respuesta
Search Busqueda sugerida