wopc
27-03-2007, 20:27:33
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 :D.
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 :D.