Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Bases de datos > MS SQL Server
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 23-06-2018
ASAPLTDA ASAPLTDA is offline
Miembro
 
Registrado: Jun 2003
Ubicación: COLOMBIA-CALI
Posts: 592
Poder: 16
ASAPLTDA Va por buen camino
Ejecutar Procedimiento MS SQL server con fDstoreProcedure

Hola quiero ejecutar e siguiente procemiento de sqlserver, pero no me funciona podria alguien indicarme como hacerlo Gracias

Código SQL [-]
ALTER Procedure [dbo].[sp_rever]
@p_rowid_docto    int = 0,
@p_rowid_movto    int,     
@p_error int output,
@p_cadena_error varchar(500) output,
@p_ind_ubi_lote  smallint = 0
as
begin
 -- set  @p_error=0
 --   set @p_cadena_error = 'respuesta de este procedimiento:'  +  cast(@p_rowid_docto as char(1))
 --  set @p_cadena_error = 'respuesta de este procedimiento:' + CAST( @p_rowid_docto as varchar); 

End

y quiero saber como definir y leer las variables de salida del procedimiento


Código Delphi [-]
Function TFPedidosCierresAplazarEntrega.Cancelar_conpromiso(p_rowid_docto,p_rowid_movto:integer; var p_cadena_error:string ):Boolean ;
var
  W_p_error :string;

begin
   d.sp_inv_comprom_auto_rever.Params.ParamByName('@p_rowid_docto').AsInteger:=  p_rowid_docto ;
    d.sp_inv_comprom_auto_rever.Params.ParamByName('@p_rowid_movto').AsInteger:=  p_rowid_movto ;
    d.sp_inv_comprom_auto_rever.ExecProc;

    G_ERROR    :=  d.sp_inv_comprom_auto_rever.Params.ParamByName('@p_error').AsString;
    G_MSGERROR :=  d.sp_inv_comprom_auto_rever.Params.ParamByName('@p_cadena_error').asString ;
    g_RETURN_VALUE:=     d.sp_inv_comprom_auto_rever.Params.ParamByName('@RETURN_VALUE').asString ;
Responder Con Cita
  #2  
Antiguo 29-06-2018
Alex Mireles Alex Mireles is offline
Miembro
 
Registrado: Nov 2014
Posts: 32
Poder: 0
Alex Mireles Va por buen camino
Hola... Es Importante poner la clausula OUTPUT en los argumentos de la definición de tu Store Procedure.


Mira estos 2 ejemplos tomados de stackOverlow:

----Ejemplo 1:

ALTER PROCEDURE testme @input VARCHAR(10),
@output VARCHAR(20) output
AS
BEGIN
IF @input >= '1'
BEGIN
SET @output = 'i am back';

RETURN;
END
END

DECLARE @get VARCHAR(20);

EXEC testme
'1',
@get output

SELECT @get



-----Ejemplo 2:

CREATE PROCEDURE Myproc

@parm varchar(10),
**@parm1OUT varchar(30) OUTPUT**,
**@parm2OUT varchar(30) OUTPUT**
AS
SELECT @parm1OUT='parm 1' + @parm
SELECT @parm2OUT='parm 2' + @parm

GO

DECLARE @SQLString NVARCHAR(500)
DECLARE @ParmDefinition NVARCHAR(500)
DECLARE @parmIN VARCHAR(10)
DECLARE @parmRET1 VARCHAR(30)
DECLARE @parmRET2 VARCHAR(30)

SET @parmIN=' returned'
SET @SQLString=N'EXEC Myproc @parm,
@parm1OUT OUTPUT, @parm2OUT OUTPUT'
SET @ParmDefinition=N'@parm varchar(10),
@parm1OUT varchar(30) OUTPUT,
@parm2OUT varchar(30) OUTPUT'

EXECUTE sp_executesql
@SQLString,
@ParmDefinition,
@parm=@parmIN,
@parm1OUT=@parmRET1 OUTPUT,@parm2OUT=@parmRET2 OUTPUT

SELECT @parmRET1 AS "parameter 1", @parmRET2 AS "parameter 2"
GO
DROP PROCEDURE Myproc

----FIN
Saludos
Responder Con Cita
  #3  
Antiguo 29-06-2018
Avatar de Casimiro Notevi
Casimiro Notevi Casimiro Notevi is offline
Moderador
 
Registrado: Sep 2004
Ubicación: En algún lugar.
Posts: 28.482
Poder: 10
Casimiro Notevi Tiene un aura espectacularCasimiro Notevi Tiene un aura espectacular
No olvides poner las etiquetas al código, gracias.


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
Error al ejecutar un procedimiento JosepGA Conexión con bases de datos 4 26-11-2008 11:54:41
Ejecutar procedimiento en ventana main JULIPO Varios 3 26-10-2007 20:21:42
ejecutar Procedimiento almacenado en SQL Server, Intraweb. Roilo Internet 9 25-07-2007 18:01:32
Ejecutar un Procedimiento almacenado saul saldaña MS SQL Server 1 03-08-2004 21:20:30
Ejecutar procedimiento automaticamente Javi2 Varios 2 08-07-2004 13:02:02


La franja horaria es GMT +2. Ahora son las 14:55:01.


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