Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   SQL (https://www.clubdelphi.com/foros/forumdisplay.php?f=6)
-   -   Stored procedures (https://www.clubdelphi.com/foros/showthread.php?t=54516)

Bracus 21-03-2008 15:34:59

Stored procedures
 
Hola a todos!!

Como puedo utilizar un procedimiento almacenado hecho en una BD en Sql Server 2000 utilizando Delphi con ADO.

Saludos y Gracias de antemano!!!

:confused:

Lepe 21-03-2008 18:01:58

con un TADOStoreProcedure.

Saludos

poliburro 21-03-2008 19:19:13

O con un TAdoDataSet.

poliburro 21-03-2008 20:20:14

Código Delphi [-]
//Crea los parámetros para ejecutar el procedimiento almacenado
Function TDmDatos.CreaParametros(PsNombProc: String): String;
Begin
  Result := 'Nada';
  Try
    If PsNombProc = 'SPADM_SNAVUSUARIOS' Then
      With AdsDatos.Parameters Do
        Begin
          Clear;
          CreateParameter('PI_NId',ftInteger,pdInput,0,0);
          CreateParameter('PI_VClave',ftString,pdInput,200,'');
          CreateParameter('PI_VNOMBRE',ftString,pdInput,200,'');
          CreateParameter('PI_VMenu',ftString,pdInput,200,'');
          CreateParameter('PI_VPASSW',ftString,pdInput,200,'');
          CreateParameter('PO_VMsgError',ftString,pdOutput,200,'');
        End;
End;



Function TDmDatos.ManejaUsuario(PsAccion: String; PsNombre: String; PCSexo: Char;
         PsPuesto: String; PsFecNac: String; PsClave: String; PsPass: String;
         PCEstatus: Char; PsUsuario: String): String;

Begin
  Result := 'Nada';
  Try
    AdsDatos.Close;
    AdsDatos.ProcedureName := 'SPADM_IUDMANUSUARIOS';
    Result := CreaParametros(AdsDatos.ProcedureName);
    If Result = 'Nada' Then
      Begin
        With AdsDatos.Parameters Do Begin
          ParamByName('PI_VClave').Value := PsClave;
          ParamByName('PI_VNOMBRE').Value := PsNombre;
          ParamByName('PI_VSexo').Value := PCSexo;
          ParamByName('PI_VPASSW').Value := PsPass;
          ParamByName('PI_VPUESTO').Value := PsPuesto;
          ParamByName('PI_VFECNAC').Value := PsFecNac;
          ParamByName('PI_VESTATUS').Value := PCEstatus;
          ParamByName('PI_VUSUARIO').Value := PsUsuario;
          ParamByName('PI_VMenu').Value := PsAccion;
        End;
        AdsDatos.ExecProc;
        Result := AdsDatos.Parameters.ParamByName('PO_VMsgError').Value;
      End;
  Except
    On Error: Exception Do
      Result := 'Ocurrió un error al ejecutar la operación. Error: ' +
        Error.Message;
  End;
End;

Bracus 21-03-2008 20:34:03

Ahora sí, Gracias
 
Un millon de Gracias Hermano!!!

:)
:)
:)


La franja horaria es GMT +2. Ahora son las 06:52:50.

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