Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Principal > Conexión con bases de datos
Registrarse FAQ Miembros Calendario Guía de estilo Temas de Hoy

Conexión con bases de datos

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 09-06-2005
buffygcs buffygcs is offline
Registrado
 
Registrado: abr 2005
Posts: 9
Poder: 0
buffygcs Va por buen camino
Question Problema con adocommand stored procedure

Hola tengo un procedimiento almacenado:

CREATE PROCEDURE busca_pais
@pais_buscado varchar(5)

AS
if @pais_buscado is null
begin
raiserror('Codigo de pais con valor en blanco, Verifique!',14,1)
return
end

select setctps_desc
from setctps
where pais_code = @pais_buscado
GO

Y tengo el siguiente codigo en delphi

principal.adocommand.CommandType:= cmdStoredProc;
principal.adocommand.CommandText:= 'busca_pais';
principal.adocommand.Parameters.Refresh;

principal.adocommand.Parameters.ParamByName('@pais_buscado').Value:= pais;
principal.adocommand.Execute;
resultado:=principal.command2.Parameters.ParamValues['@RETURN_VALUE'];

El problema es que resultado siempre es "0" no se porque, intente hacer lo mismo con adoprocedure pero me dice que no se puede realizar debido a que el dataset esta cerrado , espero que alguien me pueda decir quee estoy haciendo mal, gracias
Responder Con Cita
  #2  
Antiguo 09-06-2005
Aztaroth Aztaroth is offline
Miembro
 
Registrado: dic 2003
Ubicación: Matamoros
Posts: 52
Poder: 21
Aztaroth Va por buen camino
Stored Proc

Código Delphi [-]
CREATE PROCEDURE busca_pais 
@pais_buscado varchar(5)

AS
if @pais_buscado is null 
begin 
raiserror('Codigo de pais con valor en blanco, Verifique!',14,1)
return 
end 

  DECLARE @RESULTADO int

select @RESULTADO = setctps_desc
from setctps
where pais_code = @pais_buscado

SET @RETURN_VALUE = @RESULTADO

GO

te falta decirle al procedimiento almacenado cual es el valor a regresar, por que si no te devuelve el resultado de la ejecucion del procedimiento si no ocurre ningun error entonces devuelve 0 si no te devolvera el numero de error
Responder Con Cita
  #3  
Antiguo 10-06-2005
buffygcs buffygcs is offline
Registrado
 
Registrado: abr 2005
Posts: 9
Poder: 0
buffygcs Va por buen camino
Thumbs down No puedo modificar stored procedure

El problema es que no puedo modificar el stored procedure ya que este es usuado por otra aplicacion ajena al programa que estoy haciendo, si corro el stored procedure en el analizador de consultas me regresa la columna correspondiente, el problema es que no se como agarrar ese resultado en una variable, alguien me podria ayudar
Responder Con Cita
  #4  
Antiguo 10-06-2005
Aztaroth Aztaroth is offline
Miembro
 
Registrado: dic 2003
Ubicación: Matamoros
Posts: 52
Poder: 21
Aztaroth Va por buen camino
StoredProcedure

Para empezar el control que usas es un TAdoCommand que se llama adocommand todo esta bien hasta la ultima linea que veo que estas usando otro nombre diferente

principal.command2.Parameters.ParamValues['@RETURN_VALUE'];


donde se supone deberias utilizar adocommand, la otra es que te recomiendo usar mejor

resultado := principal.adocommand.Parameters.ParamByName('@RETURN_VALUE').Value;
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


La franja horaria es GMT +2. Ahora son las 08:49: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