Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Principal > Varios
Registrarse FAQ Miembros Calendario Guía de estilo Temas de Hoy

Grupo de Teaming del ClubDelphi

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 01-12-2008
R0M3R0 R0M3R0 is offline
Miembro
 
Registrado: oct 2007
Posts: 21
Poder: 0
R0M3R0 Va por buen camino
recuperando muchos registros con StoredProc

Buenas.
El problema pasa con que tengo un procedimiento almacenado cuyo codigo es el sig:

Código SQL [-]
CREATE OR REPLACE FUNCTION "public"."GetDatosEmpledo" (integer) RETURNS "public"."personal" AS
$body$
DECLARE
xnumempleado ALIAS FOR $1;
xreg personal%ROWTYPE;
BEGIN
SELECT * INTO xreg FROM personal
WHERE numempleado=xnumempleado;
RETURN xreg;
END;
$body$
LANGUAGE 'plpgsql' VOLATILE CALLED ON NULL INPUT SECURITY INVOKER;




como veran esta en pl/pgSQL que retona un registro de la trabla personal
con un objeto storedProc que esta relacionado con un Data set. Deseo recuperar estos datos para posteriormente mostrarlos en un DBGrid
para ello empleo el siguiente codigo


Código Delphi [-]procedure TForm1.Button1Click(Sender: TObject);
begin
with StoredProc1 do
begin
ParamByName('numempleado_').AsInteger := StrToInt(Edit1.Text);
Prepare;
open;
end;
end;



pero me sale el siguiente error
Key violation.
GetData to Procedure return failed
Que estoy haciendo mal??
por favor HELP ME !
Responder Con Cita
  #2  
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
Poder: 21
defcon1_es Va por buen camino
Hola.

Prueba a cambiar Open por Execproc.

Código Delphi [-]
procedure TForm1.Button1Click(Sender: TObject);
begin
  with StoredProc1 do
  begin
    ParamByName('numempleado_').AsInteger := StrToInt(Edit1.Text);
    Prepare;
    ExecProc;        //open;
  end;
end;
__________________
Progress Openedge
https://abevoelker.com/progress_open...dered_harmful/


Delphi forever...
Responder Con Cita
  #3  
Antiguo 02-12-2008
R0M3R0 R0M3R0 is offline
Miembro
 
Registrado: oct 2007
Posts: 21
Poder: 0
R0M3R0 Va por buen camino
haciendo pruebas

defcon1_es
gracias ... por responder

Puesto que las pruebas de cambios por ExecProc u open; ya lo hice mucho hantes de iniciar este hilo..
sigo esperando opiniones
Responder Con Cita
  #4  
Antiguo 15-01-2009
Avatar de ozsWizzard
ozsWizzard ozsWizzard is offline
Miembro
 
Registrado: may 2004
Ubicación: Murcia
Posts: 190
Poder: 21
ozsWizzard Va por buen camino
No sé si lo has hecho en tiempo de diseño, pero crear el parámetro de resultado es lo que creo que te falta, no sé.

Supongo que lo que es el de numempleado_ sí que lo tienes creado en tiempo de diseño.

Código:
procedure TForm1.Button1Click(Sender: TObject);
begin
   with StoredProc1 do
   begin
      Params.CreateParam(ftCursor, 'RESULT', ptResult);

      ParamByName('numempleado_').AsInteger := StrToInt(Edit1.Text);      
      open;
   end;
end;
__________________
La Madurez se llama...
~~~Gaia~~~
Responder Con Cita
Respuesta



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
Guardar muchos muchos Tedit el-mono OOP 4 30-09-2008 06:40:33
Recuperando mysql decimal con tipo single Migmam2 SQL 3 27-08-2007 16:53:36
Problemas con generadores en relacion Muchos-a-Muchos Hagen Firebird e Interbase 3 30-10-2006 16:47:51
Recuperando imagenes desde Oracle MarioATamborini Oracle 4 14-07-2005 21:52:14
Recuperando imagenes desde Oracle vmladino Gráficos 1 11-11-2004 17:23:35


La franja horaria es GMT +2. Ahora son las 05:07:22.


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