Ver Mensaje Individual
  #1  
Antiguo 27-03-2007
wopc wopc is offline
Miembro
 
Registrado: ene 2007
Posts: 10
Reputación: 0
wopc Va por buen camino
insertar campos autonumericos

Hola a todos

Me prsento y soy nuevo en este foro ademas nunca antes habia programado en Delhpi soy de la vieja escuela de programadores (Cobol) asi que para mi el cambio ha sido duro.. bueno iré al grano amigos

la verdad busque y se que que hay algunos ejemplos pero no me ha quedado muy claro tengo una BD Firebird 2.0 y Delphi 5.0
y se trata de lo siguiente:

1 Tabla que tiene los campos codigo y Descripción. En la tabla el codigo es autonumerico .

Tiene un triggers (generado por IBexpert)

SET SQL DIALECT 3;
SET NAMES NONE;
CREATE GENERATOR GEN_FAMILIA_ID;
SET TERM ^ ;

CREATE TRIGGER FAMILIA_BI FOR FAMILIA
ACTIVE BEFORE INSERT POSITION 0
AS
BEGIN
IF (NEW.COD_FAMILIA IS NULL) THEN
NEW.COD_FAMILIA = GEN_ID(GEN_FAMILIA_ID,1);
END
^

SET TERM ; ^

------------------------------------------------------------------

y un procedmineto almacenado (IBexpert)

SET TERM ^ ;
CREATE PROCEDURE SP_GEN_FAMILIA_ID
returns (
id integer)
as
BEGIN
ID = GEN_ID(GEN_FAMILIA_ID, 1);
SUSPEND;
END^
SET TERM ; ^
GRANT EXECUTE ON PROCEDURE SP_GEN_FAMILIA_ID TO SYSDBA;

------------------------------------------------------------

cuando Inserta directamente en IBexpert un registro a la tabla, solo el codigo incrementa en 1 el numero.

mi pregunta...: Como obtengo, o mas bien como se hace para que grabe el codigo en forma automatica sin que se tengar que decir cual es el nuevo numero, como deberia ser el procedimiento mas adecuado.

Amigos ojala que me lo expliquen con manzanitas jeje

tengo un formulario(fm_base) donde tengo todas la Database las tablas y datasources y en los otros formularios mis aplicaciones que llaman a este cuando requiere el acceso a una tabla.

Espero haberme explicado bien!!!!

gracias


wopc .
Responder Con Cita