FoxPro/Visual FoxPro - VFP y SQL SERVER

 
Vista:

VFP y SQL SERVER

Publicado por Alfonso Pallares Escamilla (5 intervenciones) el 20/09/2007 00:20:44
Buenas tardes a todos.
Estoy empezando a programar una aplicacion de VFP y SQLSERVER. El problema que tengo, es que no se si voy bien. Yo realizo mas o menos lo siguiente:
1.- una conexion a SQL server
2.- Una consulta a determinada tabla, sqlexex(conexion, etc)
3.- sqlsetprop()
4.- ejecuto un UPDATE sobre la tabla

Mis dudas son:
1.- ¿Voy bien?
2.- ¿Al final debo de poner SQLCOMMIT? para cuando quiera poner una transaccion
3.- Cuando armo un UPDATE con actualizaciones a varios campos al mismo tiempo, me marca error, y si solo lo hago a un solo campo, funciona bien. ¿Que hice mal?
4.- Alguien tendra un ejemplo de muestra?

Gracias y un saludo a todos
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

RE:VFP y SQL SERVER

Publicado por Henry (3 intervenciones) el 20/09/2007 02:13:18
Hola mira en www.portalfox.com hay
mucha información al respecto. Te dejo algunos que seguro te servirán:

--- Breve Reseña sobre los conceptos de Cliente-Servidor ---
http://www.portalfox.com/article.php?sid=1000

--- Crear Aplicaciones Cliente-Servidor con Visual FoxPro ---
http://www.portalfox.com/article.php?sid=970

--- ¿Utilizar Vistas Remotas o SQL Pass Through (SPT) para

Cliente-Servidor? ---
http://www.portalfox.com/article.php?sid=996

--- eFrontEnd, Proyecto de Ejemplo Cliente-Servidor con Visual FoxPro ---
http://www.portalfox.com/modules.php?op=modload&name=Downloads&file=i...

--- eBook Gratuito: SQL: A Practical Introduction (reseña y descarga) ---
http://www.portalfox.com/article.php?sid=782

--- Consultas de mas de 256 cars. a el servidor remoto (SPT y TEXT..
ENDTEXT) ---
http://www.portalfox.com/article.php?sid=1035

--- Conectar a DBMS sin crear DSN (técnica DSNLess) ---
http://www.portalfox.com/article.php?sid=817

--- Uso de AERROR() para errores ODBC ---
http://www.portalfox.com/article.php?sid=966

Espero te sirvan estos links.....

En estos libros o links veras acerca del COMMIT que en relalidad no lo necesitas para cuando llamas datos, solo cuando quieres actualizar o guardar informacion, usando transactions. EJEMPLO.

Select tu Tabla o Cursor

* Variables a grabar
nID = TuTabla.ID
nNombre = TuTabla.Nombre
nTelefono = TutTabla.Telefono

ThisForm.Conectar && Conect con la DB SQL o bien crea la conexion a SQL

= SQLSETPROP(lnHandle,'Transactions',2) && Iniciamos la transaccion

TEXT TO lcSQL NOSHOW
INSERT INTO TBLTABLA (ID,Nombre,Telefono)
VALUES (?nID,?nNombre,?nTelefonor)
ENDTEXT
IF SQLEXEC(lnHandle,lcSQL)<0
IF AERROR(laError)>0
Menssagebox( laError[2])
ENDIF
ENDIF
IF SQLCOMMIT(lnHandle)>0 && Confirma los cambios
* && Aquí nada, ya que significa que se realizo exitosamente
ELSE
IF AERROR(laError)>0
SQLROLLBACK(lnHandle) && Deshacemos los cambios
Messagebox ( laError[2])
ENDIF
ENDIF

Saludos desde Costa Rica y que Dios te bendiga....
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:VFP y SQL SERVER

Publicado por henry roman (3 intervenciones) el 20/09/2007 02:22:02
Hola mira en www.portalfox.com hay
mucha información al respecto. Te dejo algunos que seguro te servirán:

--- Breve Reseña sobre los conceptos de Cliente-Servidor ---
http://www.portalfox.com/article.php?sid=1000

--- Crear Aplicaciones Cliente-Servidor con Visual FoxPro ---
http://www.portalfox.com/article.php?sid=970

--- ¿Utilizar Vistas Remotas o SQL Pass Through (SPT) para

Cliente-Servidor? ---
http://www.portalfox.com/article.php?sid=996

--- eFrontEnd, Proyecto de Ejemplo Cliente-Servidor con Visual FoxPro ---
http://www.portalfox.com/modules.php?op=modload&name=Downloads&file=i...

--- eBook Gratuito: SQL: A Practical Introduction (reseña y descarga) ---
http://www.portalfox.com/article.php?sid=782

--- Consultas de mas de 256 cars. a el servidor remoto (SPT y TEXT..
ENDTEXT) ---
http://www.portalfox.com/article.php?sid=1035

--- Conectar a DBMS sin crear DSN (técnica DSNLess) ---
http://www.portalfox.com/article.php?sid=817

--- Uso de AERROR() para errores ODBC ---
http://www.portalfox.com/article.php?sid=966

Espero te sirvan estos links.....

En estos libros o links veras acerca del COMMIT que en relalidad no lo necesitas para cuando llamas datos, solo cuando quieres actualizar o guardar informacion, usando transactions. EJEMPLO.

Select tu Tabla o Cursor

* Variables a grabar
nID = TuTabla.ID
nNombre = TuTabla.Nombre
nTelefono = TutTabla.Telefono

ThisForm.Conectar && Conect con la DB SQL o bien crea la conexion a SQL

= SQLSETPROP(lnHandle,'Transactions',2) && Iniciamos la transaccion

TEXT TO lcSQL NOSHOW
INSERT INTO TBLTABLA (ID,Nombre,Telefono)
VALUES (?nID,?nNombre,?nTelefonor)
ENDTEXT
IF SQLEXEC(lnHandle,lcSQL)<0
IF AERROR(laError)>0
Menssagebox( laError[2])
ENDIF
ENDIF
IF SQLCOMMIT(lnHandle)>0 && Confirma los cambios
* && Aquí nada, ya que significa que se realizo exitosamente
ELSE
IF AERROR(laError)>0
SQLROLLBACK(lnHandle) && Deshacemos los cambios
Messagebox ( laError[2])
ENDIF
ENDIF

Saludos desde Costa Rica y que Dios te bendiga....
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:VFP y SQL SERVER

Publicado por alfonso (5 intervenciones) el 20/09/2007 18:16:44
Muchas Gracias.
Hare mis intentos y en caso de emergencia. Vulevo a molestarlos.
Un saludo desde Mexico
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar