Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Bases de datos > Firebird e Interbase
Registrarse FAQ Miembros Calendario Guía de estilo Buscar Temas de Hoy Marcar Foros Como Leídos

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 18-02-2014
JXJ JXJ is offline
Miembro
 
Registrado: abr 2005
Posts: 2.475
Poder: 21
JXJ Va por buen camino
Question ¿'Storeprocedure que devuelva registros?

tengo una duda

con este storeprocedure con una consulta

Código SQL [-]

SET TERM ^ ;

CREATE PROCEDURE TABLAS (
 FECHA INTEGER)
 RETURNS
 (
 REGVIEW    INTEGER
 )
AS 
declare variable CONTADOR integer;

BEGIN
  
      CONTADOR  = 0;
      
 
select count(folios) from facturas where fecha = :FECHA
INTO :CONTADOR ;  
  

END^

SET TERM ; ^
Se procesa la informacion bien. del select obtengo un valor
pero tambien quiero que se pueda visualizar el resultado

pense que con esto funcionaria peor no se deja

Código SQL [-]

SET TERM ^ ;

CREATE PROCEDURE TABLAS (
 FECHA INTEGER)
 RETURNS
 (
 REGVIEW    INTEGER
 )
AS 
declare variable CONTADOR integer;

BEGIN
  
      CONTADOR  = 0;
      
 
select count(folios) from facturas where fecha = :FECHA
INTO :CONTADOR,  :REGVIEW ;  
  

END^

SET TERM ; ^
¿
se puede hacer lo que pretendo o forzosamente tengo que hacer otra consulta y agregar el valor de la nueva consulta
y no puedo reutilizarlo.??
Responder Con Cita
  #2  
Antiguo 18-02-2014
Avatar de ecfisa
ecfisa ecfisa is offline
Moderador
 
Registrado: dic 2005
Ubicación: Tres Arroyos, Argentina
Posts: 10.508
Poder: 36
ecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to behold
Hola JXJ.

No se si entendí bién la situación, pero si deseas que el SP te devuelva la cantidad de registros de una tabla cuyo campo 'FECHA' sea igual a la enviada como argumento, un modo puede ser como en el ejemplo siguiente:

Procedimiento almacenado:
Código SQL [-]
SET TERM ^ ;

CREATE OR ALTER PROCEDURE SP_TABLAS (DATE_IN VARCHAR(10))
RETURNS (RESULT INTEGER)
AS
BEGIN
  SELECT COUNT(ID) FROM FACTURAS
  WHERE FECHA = CAST(:DATE_IN AS DATE)
  INTO :RESULT;
  SUSPEND;
END^

SET TERM ; ^

Consulta:
Código SQL [-]
SELECT RESULT FROM SP_TABLAS('15.01.2014')

Saludos .
__________________
Daniel Didriksen

Guía de estilo - Uso de las etiquetas - La otra guía de estilo ....
Responder Con Cita
  #3  
Antiguo 21-02-2014
hoyosfelix hoyosfelix is offline
Miembro
 
Registrado: ago 2010
Ubicación: San Antonio, Paraguay
Posts: 38
Poder: 0
hoyosfelix Va por buen camino
Respuesta a: ¿'Storeprocedure que devuelva registros?

Hola JXJ..

Vamos a comentar tu procedure..


Código SQL [-]
SET TERM ^ ; 
CREATE PROCEDURE TABLAS ( FECHA INTEGER )  --Aqui sería mejor que FECHA sea tipo DATE, suponiendo que facturas.fecha sea date...  
RETURNS( REGVIEW INTEGER ) 
AS  declare variable CONTADOR integer;  --Esta variable es innecesaria... 
BEGIN 
  CONTADOR  = 0;  --Puede ser directamente REGVIEW = 0; 
  select count(folios) 
    from facturas 
    where fecha = :FECHA 
  INTO :CONTADOR ;  -- se puede almacenar ya directamente a REGVIEW   
  SUSPEND; --Añadir esta línea para devolver la variable de salida REGVIEW; 
END^ 
SET TERM ; ^
Espero sea de ayuda.

Saludos cordiales.

Última edición por hoyosfelix fecha: 21-02-2014 a las 14:07:09.
Responder Con Cita
Respuesta


Herramientas Buscar en Tema
Buscar en Tema:

Búsqueda Avanzada
Desplegado

Normas de Publicación
no Puedes crear nuevos temas
no Puedes responder a temas
no Puedes adjuntar archivos
no Puedes editar tus mensajes

El código vB está habilitado
Las caritas están habilitado
Código [IMG] está habilitado
Código HTML está deshabilitado
Saltar a Foro

Temas Similares
Tema Autor Foro Respuestas Último mensaje
Función devuelva día del año Moparova Varios 2 23-04-2007 23:03:59
sybase + storeprocedure y RollBack Enan0 Conexión con bases de datos 0 09-06-2006 03:24:11
Procedimientos almacenados en delphi con storeprocedure pgl Firebird e Interbase 7 05-11-2005 00:58:53
UDF que devuelva dia de la semana gendelphi Firebird e Interbase 3 05-03-2004 15:30:27
Funcion que devuelva mas de un valor ckaki Varios 1 27-11-2003 00:07:59


La franja horaria es GMT +2. Ahora son las 02:28:04.


Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi
Copyright 1996-2007 Club Delphi