Ver Mensaje Individual
  #4  
Antiguo 13-02-2009
Avatar de jcarteagaf
[jcarteagaf] jcarteagaf is offline
Miembro Premium
 
Registrado: abr 2006
Ubicación: La Paz, Bolivia
Posts: 651
Reputación: 19
jcarteagaf Va por buen camino
En realidad RETURN en un Stored Procedure devuelve un valor entero para indicar el resultado de la ejecución (mas o menos como los .BAT del D.O.S.), si no se coloca devuelve 0.

Si lo que deseas es devolver el nombre de la empresa en una variable deberias usar algo asi:

Código SQL [-]
ALTER PROCEDURE [dbo][SP_EXISTE_EMPRESA]
@SP_NOMBRE NVARCHAR(50) OUTPUT
AS
BEGIN 
   SET NOCOUNT ON;
   SELECT @SP_NOMBRE = NOMBRE 
   FROM EMPRESAS
   WHERE NOMBRE = @SP_NOMBRE 
   IF @SP_NOMBRE IS NULL     -- Si no existe la variable tendra Valor NULL
      SET @SP_NOMBRE=''   -- Entonces le asignamos un string vacio
END

Ahora bien en delphi tu llamada seria asi

Código Delphi [-]
spExisteEmpresa.parameters.parambyname('@SP_NOMBRE').value := 'Mi_Empresa';
spExisteEmpresa.ExecProc;
if spExisteEmpresa.parameters.parambyname('@SP_NOMBRE').value = '' then
  ShowMessage('No existe');
else
  ShowMessage('Existe');

Lo anterior usando el TADOStoredProc

Espero que te ayude. Saludos

Última edición por jcarteagaf fecha: 13-02-2009 a las 11:46:28.
Responder Con Cita