Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

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

Grupo de Teaming del ClubDelphi

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 05-09-2008
Avatar de microbiano
microbiano microbiano is offline
Miembro
 
Registrado: sep 2008
Ubicación: Mexico D.F
Posts: 349
Poder: 16
microbiano Va por buen camino
Unhappy ayuda con procedimiento almacenado

hola soy nuevo en delphi, les planteo el siguiente problema a ver si pueden ayudarme.

1.- en un form tengo un tedit en el cual escribo un nombre.
2.- tambien tengo un boton que al precionarlo ejecuta un procedimiento almacenado: este es el cofigo
Código Delphi [-]
procedure Tfrcontrato.btAceptarClick(Sender: TObject);
begin
  try
     spnvocontri.Close;
     spnvocontri.Parameters.Refresh;
     spnvocontri.Parameters.ParamByName('@nombre').Value:=txtnombre.Text;
     spnvocontri.ExecProc;
     label4.Caption:= spnvocontri.Parameters.Byname('@del_error').value;
         //Application.MessageBox('Registro Almacenado con exito','Sapa',mb_iconinformation);
  except
     raise;
  end;
end;
3.- tengo un objetoAdoStoredProcedure qen el cual declaro dos parametros del_error de tipo return.value y nombre de tipos texto.
4.-en sql server 200o tengo el siguiente procedimiento almacenado
Código SQL [-]
ALTER   procedure [spnvocontri]
    @nombre varchar(80)    
as
declare @valida    INT
declare @del_error int
-- Obtiene el total de registros
select @valida = count(*)
        FROM sap_contri
        where nombre_contri = @nombre
-- compara
if @valida = 0 
 begin
  insert into sap_contri  (nombre_contri) values(@nombre)
 end
else
 begin
  print ('ya Existe un registro con ese nombre')
  set @del_error=1
end
  return (@del_error)

bien realmente no existe problea cuando lo ejecuto por el analizador de consulta lo que quiero es recuperar el valor cuando exista el registro en la base de datos para poder mandar un mensaje en delphi de que ese registro ya existe lo intento de la siguiente manera pero no funciona

label4.Caption:= spnvocontri.Parameters.Byname('@del_error').value;

espero que alguien me pueda ayudar
Responder Con Cita
  #2  
Antiguo 05-09-2008
[egostar] egostar is offline
Registrado
 
Registrado: feb 2006
Posts: 6.556
Poder: 25
egostar Va camino a la fama
Cita:
Empezado por microbiano Ver Mensaje
bien realmente no existe problea cuando lo ejecuto por el analizador de consulta lo que quiero es recuperar el valor cuando exista el registro en la base de datos para poder mandar un mensaje en delphi de que ese registro ya existe lo intento de la siguiente manera pero no funciona

label4.Caption:= spnvocontri.Parameters.Byname('@del_error').value;

espero que alguien me pueda ayudar
Hola

Es que no es un parametro lo que te regresa el SP, mas bien es un FieldByName.

Salud OS
__________________
"La forma de empezar es dejar de hablar y empezar a hacerlo." - Walt Disney
Responder Con Cita
  #3  
Antiguo 05-09-2008
Avatar de microbiano
microbiano microbiano is offline
Miembro
 
Registrado: sep 2008
Ubicación: Mexico D.F
Posts: 349
Poder: 16
microbiano Va por buen camino
hola

como podria entonces recuperar el valor algun consejo?
Responder Con Cita
  #4  
Antiguo 05-09-2008
[egostar] egostar is offline
Registrado
 
Registrado: feb 2006
Posts: 6.556
Poder: 25
egostar Va camino a la fama
Hola

Ya estuve viendo y esta bien como lo haces, solo quita el @ en tu campo

Código Delphi [-]
label4.Caption:= spnvocontri.Parameters.Byname('del_error').value;

Salud OS

Edito:

Puede que te de un error porque tu valor es entero, en todo caso deberia ser así

Código Delphi [-]
label4.Caption:= spnvocontri.Parameters.Byname('del_error').AsString;
o asi
Código Delphi [-]
label4.Caption:= inttostr(spnvocontri.Parameters.Byname('del_error').value);
__________________
"La forma de empezar es dejar de hablar y empezar a hacerlo." - Walt Disney

Última edición por egostar fecha: 05-09-2008 a las 22:52:54.
Responder Con Cita
  #5  
Antiguo 08-09-2008
Avatar de microbiano
microbiano microbiano is offline
Miembro
 
Registrado: sep 2008
Ubicación: Mexico D.F
Posts: 349
Poder: 16
microbiano Va por buen camino
Aun No Puddo Resolver La Problematica Que Tengo
Responder Con Cita
  #6  
Antiguo 09-09-2008
[egostar] egostar is offline
Registrado
 
Registrado: feb 2006
Posts: 6.556
Poder: 25
egostar Va camino a la fama
Cita:
Empezado por microbiano Ver Mensaje
Aun No Puddo Resolver La Problematica Que Tengo
Y te muestra un error, no te muestra datos, danos mas informacion por favor.

Salud OS
__________________
"La forma de empezar es dejar de hablar y empezar a hacerlo." - Walt Disney
Responder Con Cita
  #7  
Antiguo 10-09-2008
Avatar de microbiano
microbiano microbiano is offline
Miembro
 
Registrado: sep 2008
Ubicación: Mexico D.F
Posts: 349
Poder: 16
microbiano Va por buen camino
aun no resuelvo el problema

no me muestra ningun error, que posiblidad hay de que me pases un ejemplo te lo agradeceria mucho de verdad.
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
procedimiento almacenado ayuda con este codigo pipecato Varios 5 16-12-2005 12:24:34
ayuda con el codigo de procedimiento almacenado pipecato MS SQL Server 3 13-12-2005 03:41:35
ayuda con el procedimiento almacenado pipecato Varios 1 13-12-2005 03:38:26
Ayuda con procedimiento almacenado y query XBart Firebird e Interbase 3 05-12-2005 03:42:55
Ayuda sobre un Procedimiento Almacenado Nuria Firebird e Interbase 6 21-01-2004 13:18:15


La franja horaria es GMT +2. Ahora son las 20:00:47.


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