Ver Mensaje Individual
  #3  
Antiguo 02-12-2008
Avatar de defcon1_es
defcon1_es defcon1_es is offline
Miembro
 
Registrado: mar 2004
Ubicación: Cuenca - España
Posts: 533
Reputación: 21
defcon1_es Va por buen camino
Hola.

En firebird deberias crear un procedimiento almacenado, puesto que sólo puedes definir variables en un procedimiento o en un disparador.

Código SQL [-]
SET TERM !! ;
CREATE OR ALTER PROCEDURE PR_prueba (
/* Parámetros de entrada */
PARCCLIE INTEGER, 
PARSTATUS CHAR(1), 
PARTIPOMOV INTEGER,
PARAMETRONF , /* el resto de tipos de datos no lo escribo  */
PARNUM_REG, 
PARCCLIE, 
PARSTATUS, 
PARTIPO_MOV, 
PARNO_FACTURA, 
PARDOCTO, 
PARREFER, 
PARIMPORTE, 
PARFECHA_APLI, 
PARFECHA_VENC, 
PARCOB, 
PARAFEC_COI, 
PAROBS_CXCCXP, 
PARBANK_COM, 
PARSTRCVEVEND, 
PARNUM_MONED, 
PARTCAMBIO, 
PARIMPMON_EXT, 
PARCCONREFER, 
PARFECHAELAB, 
PARUSUARIO, 
PARCTLPOL)
AS
DECLARE VARIABLE num_regs int; 
BEGIN
  select num_regs from CU0N01 INTO :num_regs;

  num_regs = num_regs +1;

  insert into cuen01 (NUM_REG, CCLIE, STATUS, TIPO_MOV, NO_FACTURA, DOCTO, REFER, IMPORTE, FECHA_APLI, FECHA_VENC, COB, AFEC_COI,
OBS _CXCCXP, BANK_COM, STRCVEVEND, NUM_MONED, TCAMBIO, IMPMON_EXT, CCONREFER, FECHAELAB, USUARIO, CTLPOL) 
  Values(:num_regs, :PARCCLIE, :PARSTATUS, :PARTIPOMOV,:PARAMETRONF,
:PARNUM_REG, :PARCCLIE, :PARSTATUS, :PARTIPO_MOV, :PARNO_FACTURA, :PARDOCTO, :PARREFER, :PARIMPORTE, 
:PARFECHA_APLI, :PARFECHA_VENC, :PARCOB, :PARAFEC_COI, :PAROBS_CXCCXP, 
:PARBANK_COM, :PARSTRCVEVEND, :PARNUM_MONED, :PARTCAMBIO, :PARIMPMON_EXT, 
:PARCCONREFER, :PARFECHAELAB, :PARUSUARIO, :PARCTLPOL);

  update CU0N01 
  set num_regs = :num_regs;

END
__________________
Progress Openedge
https://abevoelker.com/progress_open...dered_harmful/


Delphi forever...

Última edición por defcon1_es fecha: 02-12-2008 a las 13:54:18.
Responder Con Cita