PDA

Ver la Versión Completa : Formateo y conversion (algo asi como el To_CHar() de Oracle)


pzhero
14-05-2004, 19:22:27
hola a todos, otra vez qui muliendoles....

como he dicho inicie un proyecto en firebird, pero tambien tengo que iniciar la migracion de uno ya existente en Oracle, he creado todas las tablas y acabo de empezar a crear als vistas, luego sigo con procedimientos etc... pero ahora que estoy en las vistas, me tope con que tengo varias vistas importantes que manejan el formateo y conversion de tipos con la funcion to_char() de oracle, ya cree una vista que no utiliza formateo solo la conversión de numero a cadena y note firebird lo hace automaticamente, algo asi como un

Select camponum1 || ' '|| campochar1 from tabla

resultado

"1234CARACTERS"

entonces por ahi no ha hay problema pero tengo tablas para generar codigos,
que requieren que la consulta devuelva por ejemplo 5 caracteres ejejmplo:

si el valor del campo es 5 debe devolver 00005
si es 15 --> 00015

eso lo hacia con la funcion to_char de oracle
to_char(cinventario.id_inventario,'0999') la cual me devuelve si el valor del campo es 45 -->0045
como resuelvo esto???

otra duda ¿cual es la funcion equevalente a chr(68) qhe me devuelve "D"
o sea una funcion que pasandole el valor ascii me devuelva el caracter correspondiente. En conjunto lo que quiero hacer es lo siguiente

select chr(68) || ' ' to_char(cinventario.id_inventario,'0999') from cinventario

D 0015
D 0016
D 0017
D 0018
D 0015

ese es el resultado que deseo ... gracias de antemano

guillotmarc
14-05-2004, 19:31:42
Hola.

Interbase/Firebird tiene una lista bastante limitada de funciones, aunque es muy facil ampliarla mediante UDFs. En la web de Claudio Valderrama tienes una recopilación de UDFs freeware.

http://www.cvalde.net/misc/packages_and_utilities.htm?PHPSESSID=03c5c81dfd865988c03c58ac2e89bab6

Saludos.

pzhero
15-05-2004, 20:13:04
y como se instalan, esas dlls donde las pongo, ??? bajo system32??

guillotmarc
16-05-2004, 18:06:59
Hola.

En el subdirectorio UDF de la carpeta de instalación de Interbase/Firebird

http://www.clubdelphi.com/ib/articulos/udf/udf.php

Saludos.