Muchas Gracias!! 

Una consulta, que conviene usar ADO o ODBC?

saludos.

-----Original Message-----
From: "Alejandro Paciotti Iacchelli" <alejandro.pacio...@gmail.com>
To: "GUFA List Member"  <GUFA@mug.org.ar>
Date: Thu, 26 Jul 2012 17:18:44 -0300
Subject: [GUFA] SQL SERVER

> Bueno Pablo, yo uso algo como lo siguiente:
> 
>  
> 
> ***********************************************************************
> *****
> ***************************
> 
> DEFINE CLASS Pagos AS Custom
> 
> ***********************************************************************
> *****
> ***************************
> 
> NumeroError              = 0   
> 
> DescripcionError         = ""
> 
>  
> 
>           * nResultado = THISFORM.oPagos.Alta(cComprobante, dFechaPago,
> nImporte, cCodigoContrato, nDescuento, cDescripcion, cNumeroRecibo)
> 
>  
> ***********************************************************************
> *****
> ***************************             
> 
>         PROCEDURE Alta(cComprobante, dFechaPago, nImporte,
> cCodigoContrato,
> nDescuento, cDescripcion, cNumeroRecibo)
> 
>  
> ***********************************************************************
> *****
> ***************************             
> 
>         * Recibe las variables y llama al procedimiento almacenado
> SP_Alta_PAGOS
> 
>         *
> 
>         LOCAL nResultado
> 
>         nResultado = -1
> 
>             *
> 
>             =SQLSETPROP(oAplicacion.Conexion, "Transactions", 2) 
> 
>             *
> 
>            TEXT TO cInstruccionSql NOSHOW PRETEXT 2
> 
>                   EXECUTE SP_Alta_Pagos @CodigoContrato   =
> ?cCodigoContrato,
> 
>                                          @CodigoFormaPago =
> ?cCodigoFormaPago,
> 
>                                          @Comprobante     =
> ?ALLTRIM(cComprobante), 
> 
>                                          @FechaPago
> =?DTOC(dFechaPago),  
> 
>                                          @Importe         =?nImporte,
> 
>                                          @Descuento       =?nDescuento,
> 
>                                          @Descripcion    
> =?cDescripcion,
> 
>                                          @NumeroRecibo   
> =?cNumeroRecibo,
> 
>                                          @CodigoUsuario
> =?oAplicacion.CodigoUsuario
> 
>             ENDTEXT
> 
>             *
> 
>                   =SQLPREPARE(oAplicacion.Conexion, cInstruccionSql)
> 
>                   *
> 
>                   nResultado = SQLEXEC(oAplicacion.Conexion)
> 
>                   *
> 
>                   IF nResultado < 0
> 
>                      THIS.ParseaError("ALTA Pagos")              
> 
>                      =SQLROLLBACK(oAplicacion.Conexion)
> 
>                      =SQLSETPROP(oAplicacion.Conexion, "Transactions",
> 1)
> 
> 
>                      RETURN -1
> 
>                   ELSE
> 
>                      nResultado = 1
> 
>                   ENDIF
> 
>  
> 
>  
> 
> ETC, ETC, ETC …
> 
>  
> 
> O bien, para traer un cursor con un listado de PAGOS:
> 
>  
> 
>  
> ***********************************************************************
> *****
> ***************************             
> 
>         PROCEDURE TraerTodos(sNombreCursor)
> 
>  
> ***********************************************************************
> *****
> ***************************                     
> 
>         LOCAL nResultado
> 
>         nResultado = -1
> 
>               *
> 
>               TEXT TO cInstruccionSql TEXTMERGE NOSHOW PRETEXT 2
> 
>                    SELECT FechaPago, CodigoPago, Comprobante,
> Descripcion,
> Descuento, Importe, NumeroRecibo FROM Pagos 
> 
>               ENDTEXT
> 
>               *
> 
>             nResultado = SQLEXEC(oAplicacion.Conexion, cInstruccionSql,
> sNombreCursor)             
> 
>                   *
> 
>               IF nResultado < 0
> 
>                  THIS.ParseaError
> 
>               ENDIF
> 
>               *
> 
>             RETURN nResultado  
> 
>             *
> 
>         ENDPROC         
> 
>  
> 
>  
> 
> Estoy mil por cien seguro que el framework es muchísimo mejor… pero
> yo así
> saqué las papas del fuego, desarrollé todo rapidito y eficientemente.
> 
>  
> 
> Saludos.
> 


Responder a