FoxPro/Visual FoxPro - Conexion de visual fox a sql via Ado

 
Vista:

Conexion de visual fox a sql via Ado

Publicado por Beatriz (88 intervenciones) el 18/04/2008 21:08:50
Hola a todos¡¡¡???Necesito realizar un programa con visual fox y sql , y debo de conectarme via Ado??Si me pudieran explicar como es ésto???
Como hacer la conexión a sql via Ado???Y como se trabaja con este componente, es decir a la hora de hacer consultas, y mantenimiento de registros.
Gracias
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:Conexion de visual fox a sql via Ado

Publicado por Saul (El Guatemalteco...) (728 intervenciones) el 17/05/2008 00:25:41
Si ya sabes hacer tus store procedures en SQL pues mandame un mail y mando codigo para hacer la conexion

saludos
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:Conexion de visual fox a sql via Ado

Publicado por Beatriz (88 intervenciones) el 20/05/2008 23:39:21
Hola Saul¡¡¡¡si...con los sp no tengo problemas....ya he hecho conexiones con sentencias de paso, pero quiero y tengo que aprender como se hace con ADO.....si me quieres ayudar...mandame aca al foro...lo que quieres pasar..y así de paso..le ayudas a otras personas que puedan tener mi misma duda.
Mil gracias atte Beatriz
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
sin imagen de perfil

RE:Conexion de visual fox a sql via Ado

Publicado por Walter Vasquez  (1 intervención) el 03/10/2009 07:31:46
CLEAR
&& lcServidor = Servidor SQL Server
&& lcUsuario = Usuario
&& lcClave = Clave del Usuario
&& lcDb = Base de Datos a Conectar Ejemplo "Northwind"

PUBLIC rs,Conn,oCom as Object

LOCAL lcServidor,lcUsuario,lcClave
lcServidor = "desarrollo10"
lcUsuario = "sa"
lcClave = "123456"
lcDb = "Northwind"

&& Creando los Objetos
Conn = CREATEOBJECT("ADODB.Connection") && Objeto Contenedor de la Conexión
oCom = CREATEOBJECT("vfpcom.comutil") && Objeto COM para Trabajar con ADO Recordset desde VFP
rs = CREATEOBJECT("ADODB.Recordset") && Objeto Recordset

&& Creamos el Strings de Conexión
strconn = "Provider=sqloledb;Data Source=&lcServidor ;Initial Catalog=&lcDb;User Id=&lcUsuario;Password=&lcClave;"

&& Abriendo la Conexión pasandole el String al Objeto "ADODB.Connection"
Conn.Open (strconn)

&& Conn.Execute ("use com;") && Si deseamos cambiar de base de datos

&& Abriendo el "ADODB.Recordset". Pasamos la Sentencia SQL a Ejecutar,
&& El objeto contenedor de la Conexión y el modo de apertura.
rs.Open ("select * from Orders", Conn, 3)

LOCAL lnReg

&& Contamos los campos que nos devuelve el Recordset y a su vez
&& imprimimos todo el registro donde estamos parados

lnReg = rs.Fields.Count
FOR i = 1 TO lnReg
? "CAMPO: " + RS.FIELDS(I - 1).Name + " VALOR: " + TRANSFORM(RS.FIELDS(I - 1).VALUE)
ENDFOR

&& Creamos un Cursor nativo de VFP y vamos a volcar todos los registros
&& que contiene el Recordset en el Campo shipcountry a el campo del cursor temporal
&& Podemos llamar a los campos en el Recordset asi rs.Fields('shipcountry').Value 0 RS.FIELDS(3).VALUE
CREATE CURSOR foxjose(shipcountry C(50))

&& Nos paramos en el Primer Registro del Recordset
rs.MoveFirst
DO WHILE NOT rs.EOF && Evaluamos si no es un Fin del Archivo
SELECT foxjose
APPEND BLANK
REPLACE shipcountry WITH rs.Fields('shipcountry').Value
rs.MoveNext && Nos movemos al Siguiente Registro
ENDDO

&& Presentamos Resultados

SELECT foxjose
BROWSE

RS.CLOSE && Cerramos el Recordset

&& Conn.Execute ("use SICA;")
&& Abrimos el Recordset Con otra Sentencia, Otra Conexion y parametros de Actualizacion en el mismo

rs.Open ("select * from invoices", Conn, 1, 3)

&& Convertimos con el Objeto "vfpcom.comutil" De un Recordset a un Cursor nativo de VFP
oCom.RSToCursor(RS,"prueb")

&& Mostramos Resultados
SELECT prueb
BROWSE

&& Agregamos en la tabla de SQL Server llamada Region un nuevo Registro a traves de
&& el Objeto Conexión Directamente
Conn.Execute ("insert into Region(regionid,regiondescription) values ('5','Táchira')")
rs.close && Cerramos el Recordset

&& Abrimos para efectuar otra prueba
rs.Open ("select * from Region", Conn, 1, 3)

&& Agregamos un nuevo Registro a traves de el Recordset
rs.AddNew
rs.fields('regionid').value = '6'
rs.fields('regiondescription').value = 'Vargas'

rs.update && Actualizamos el Recordset para que surta efecto el cambio

oCom.RSToCursor(RS,"Resultado") && Volvemos a Volcar el Recordset a un Cursor de VFP

&& Resultados
SELECT Resultado
BROWSE

rs.close

&& Destruimos los objeto que utilizamos

rs = .NULL.
Conn = .NULL.
oCom = .NULL.

Referencia:
Visual FoxPro VFPCOM Utility
This utility is a COM server that provides additional functionality when you use ADO and access COM events with your Visual FoxPro 9.0 applications.

Proba y me comentas
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:Conexion de visual fox a sql via Ado

Publicado por Daniel (1 intervención) el 13/05/2019 17:47:25
No conecta me da error el oCom = CREATEOBJECT("vfpcom.comutil")
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