PDA

Ver la Versión Completa : como pooner 0 en la izquierda


Michel
28-07-2003, 15:48:12
Una pregunta amigos foreros como hagoo

tengo una Tabla XX con 3 Campos Ejemplo:

Codigo LEN 2
Descripcion LEN 20
Abreviatura LEN 10


yo quisiera q el campo codigo asignara 0 a la izquiera ejemplo si coloco '1' en codigo grabe como '01'

oseaa..

Yo cargo asi

Codigo 1
Descripcion Esto es una Prueba
Abreviatura Prueba

La BD Guarde Asii



Codigo 01
Descripcion Esto es una prueba
Abreviatura Prueba


Estoy Usando EMS Interbase/Firebird 3.6.0.2


Muchas Gracias........... Suerte

__cadetill
28-07-2003, 17:19:09
Puedes utilizar el evento BeforePost y alli hacer algo asi


var
valor : integer;
begin
valor := TuTabla.FieldByName('Codigo').AsInteger;
TuTabla.FieldByName('Codigo').AsString := FormatFloat('00', Valor);
end;


Espero te sirva

__cadetill
28-07-2003, 17:21:46
Por cierto, otra cosa

Posteado originalmente por Michel
Estoy Usando EMS Interbase/Firebird 3.6.0.2

De Interbase van por la version 7 o 7.1 (no recuerdo exactamente) y de Firebird por la 1.0.3 y en RC4 la 1.5 :confused:

Michel
28-07-2003, 19:57:21
Estoy Usando

EMS InterBase & FireBird Manager 3

El manejador de BD

__cadetill
28-07-2003, 20:05:09
Ah, ok, no lo conocia y interprete mal la frase :o

Por cierto, que tal es?

Michel
28-07-2003, 20:11:13
Me parece un gran producto, consistente y rapido.


Lo que estoy tratando de hacer es q la Base de Datos se Encargue casi d todoo


Los ceros a la izquierda del campo codigo.

No he podido hacerlo desde el manejador de BD.

pero no se como, si Tienes Alguna Sugerencia te lo Agradezco


Gracias.....

Osorio
29-07-2003, 15:09:09
Para hacerlo desde la base de datos sin implicar a delphi para nada puedes hacerlo a traves de un trigger.

Te envio un ejemplo:

CREATE TRIGGER "RELLENA_CON_CERO" FOR TBL_LIBROS ACTIVE
BEFORE INSERT POSITION 0
AS
declare variable num integer;
BEGIN
num =2-strlen(new.id_libro);
new. id_libro = substr('00',1,num)||new.id_libro;
END

Ahh, por cierto: las funciones "strlen" y "substr" son UDFS que tienes que instalar previamente.

En la seccion de Interbase de la pagina del clubdelphi encuentras un articulo que te puede explicar las UDF's muchoi mejor que yo.

Espero te sea util.

Suerte