Hola. 

 

Suponiendo que el Remote Desktop no sea la solución, y que los dueños sólo
deseen acceder a datos remotos, la recomendación sería confeccionar un sitio
web colgado a una IP accesible desde afuera, ya sea IP publica estática o
dinámica. El problema reside en el sistema operativo que corre el IIS, si es
de 32 bits no pasa nada, pero si es de 64 bits..

 

Si el sistema operativo que tiene la página expuesta a la internet es de 64
bits, el problema es que no existe OLE-DB para Fox de 64 bits. Por lo tanto:

1.       Instalá un SQL Server Express de 32 bits en el sistema operativo de
64 bits.

2.       Instalá el IIS correspondiente a la versión de Windows que tengas

3.       Instalá Visual Studio 2012 Express para web.
(http://www.microsoft.com/visualstudio/esn/products/visual-studio-express-fo
r-web#product-express-web)

Luego, en el SQL Server Express se confecciona una conexión de servidor
encadenado (linked server) que apunta a la carpeta VFP que contiene la .DBC
de tus tablas DBF. El SQL server Express nunca tiene ningún dato, su espacio
de tablas permanece siempre vacío, y sólo sirve de pasarela entre la
aplicación ASP.NET. La aplicación .NET se desde el IIS de 64 bits al SQL
Server Express de 32 bits, que a su vez hace de pasarela a través de OLE-DB
con las tablas VFP. Es decir: IIS (64bits)-->SQL Server Express (32 bits)
--> linked server --> Archivo .DBC de Fox, que da acces a todas las DBFs
contenidas. Vos programas las páginas ASP.NET para consultas, etc., creando
un website para ASP.NET, y podés utilizar tanto datasets como sqldatasources
que se conectan al SQL Server Express. 

 

Si el sistema operativo que tiene la página expuesta a la internet es de 32
bits, vas en coche. Con OLE-DB creás conexiones y podés usar datasets y
sqldatasources desde ASP.NET directamente. 

 

Ya sea que utilices el linked server o no, el problema que tiene el OLE-DB
es el tratamiento de las constantes de fechas, es un dolor de cabeza al
armar los WHERE con datasets o con sqlDataSources, vas a tener que ejercitar
la paciencia, quizás utilizando DTOS() para convertir las fechas a string
primeramente para pasarle desde la página ASP.NET los criterios de filtrado
de fechas como strings del tipo “20130101”, etc., esto lo acelerás quizás
con un INDEX ON DTOS(fecha) TAG …  en las columnas confictivas en las tablas
DBFs. Por lo demás, si vas con el linked server, el trabajo adicional de
agregarle una capa más a la instalación se paga sola porque no hay que
migrar datos de ninguna manera, los datos se leen siempre directamente a las
DBFs, y las páginas ASP.NET se hacen con técnicas estándares de consulta.

 

Suerte

 

Carlos

 

 

De: [email protected] [mailto:[email protected]] En nombre de Pablo Pioli
Enviado el: viernes, 14 de junio de 2013 04:20 p.m.
Para: GUFA List Member
Asunto: [GUFA] Consulta desde acceso internet

 

VFP10 no va a existir nunca.

Si lo unico que quiere es hacer consultas podes exponer los datos a traves
de una pagina web, leyendo desde VFP. ASP.NET Web Pages me parece bastante
directo y simple para eso. http://www.asp.net/web-pages

Otra opcion es es usar SQL Server Express con Reporting Services (que seria
gratuito, pero podes tambien comprar las versiones mas capaces) pasando cada
tanto los datos desde VFP hasta el SQL Server.

Pablo Pioli

El 14/06/2013 04:04 p.m., Fabian Casal escribió:

Reprogramar todo en que???

No hay forma de hacer algún servicio o consulta con por ejemplo .NET que
haga solo esas consultas puntuales desde BD de VFP?

 

Que onda el VFP10?

 

El 14 de junio de 2013 15:31, Pablo Pioli <[email protected]
<mailto:[email protected]> > escribió:

3 opciones:

1. Si tiene Windows Server ponele Remote Desktop
2. Si no tiene Windows Server ponele escritorio remoto en una PC / LogMeIn /
etc.
3. Reprograma todo (bueno, es una opcion)


El 14/06/2013 03:22 p.m., Fabian Casal escribió:

Estimados colegas, tengo un sistema que hice hace años en VFP y que el
cliente ahora quiere poder acceder a hacer consultas desde su casa o desde
donde se encuentre.
Me darían una idea de como empezar o por donde?
Gracias a todos.

 

 

 

Responder a