Enlazar Vfp9 y Sql2000

Estoy desarrollando un programa para Controlar las Asistencias de Alumnos en 14 aulas y lo que me han pedido es que al mismo tiempo ( hay clases simultáneamente en otras 13 aulas) el profesor se Logee al sistema (q debe estar Instalado en el SERVIDOR, ingrrese su clave, jale el modulo de registro de asistencia y pueda realizar la rutina q ya esta programada. Estoy trabajando con el sistema operativo WINDOWS 2000 el SQL 2000 (no se q version es no se si es Standard, personal, etc) y estoy programando en VPF9.
Mis problemas son:
1. Como hacer q este programa en VFP9 se instale en el Windows 2000 y tengan desde las aulas virtuales (14) acceso a el.
2. Como Exportar mi Base de Datos de VFP9 al SQL 2000 q esta instalo en el servidor
3. Como enlazar mis TABLAS DE MIS 6 FORMULARIOS q conforman mi programa al SQL 2000.
Sabes amigo estoy como lo Loco por q ya me pedido un Demo q lo tengo q entregar este sábado 14 pucha deberás no se q hacer te pido q me orientes por favor mil gracias.

1 Respuesta

Respuesta
1
SQL2000 seria SQL SERVER de Microsoft Verdad, bueno, en este caso vas a programar en modo Cliente Servidor, no utilizarás la base nativa de foxpro DBC/DBF, Ok, comencemos:
Primero los 14 accesos a tu programa no es problema, puedes crear accesos directos a ella desde las 14 aulas y listo, o copias cada ejecutable de tu programa en las 14 aulas y de ahí se ejecutan, no tendrás que compartir disco ni nada porque programaremos en Cliente Servidor. Pero vamos a lo más importante, como hacer hablar vfp y sql2000
Hay varias formas, los más populares son el ADO y el ODBC, te mostrare el segundo. La conexión ODBC se realiza mediante una interfaz estándar de conexión que todos las bases de datos poseen y se instalan con ella, si entras a panel de control - herramientas administrativas Conexiones u orígenes de datos ODBC veras un listado, el sqlserver siempre viene instalado con windows, sino, debes bajarlo de su página, es ahí donde empiezas, comienzas a crear tu conexion; hasta aquí nada de vfp, le das agregar, te aparece una lista, ahí buscas SQLSERVER o lo que tengas para esa BD, yo ahora tengo SQLSERVER y te diré los parámetros que tengo: NOMBRE DEL ORIGEN DE DATOS: es muy importante por que VFP le buscara por este dato, supongamos que le pusiste Asistencia, DESCRIPCIÓN: lo que quieras, SERVIDOR: este si, seria la IP o el Nombre de tu Windows 2000 en donde esta instalado el SQL, es muy importante, luego te pide la autenticación, puede elegir LA AUTENTICACIÓN DE WINDOWS DE CONFIANZA o la de SQL SERVER, si usas la primera significa que usara el usuario de windows sino debes tener un usuario en SQL con contraseña y sus permisos, LUEGO EL NOMBRE DE TU BASE DE DATOS, con esto ya creas tu conexión, recuerda que debes tener todo listo tu SQL2000 para que esto te cree debido a la prueba que el hará al finalizar la conexión, si es satisfactorio OK, entonces pasemos a VFP.
Vfp utilizara el nombre de la conexión para buscarle a la base de datos, en este caso ASISTENCIA, para ello debes usar la función SQLCONNEC(), esta función te conecta con una base de datos externa, (MYSQL ORACLE DB2, etc ), y puedes utilizarlo sin parámetros, así te abrirá la lista de conexiones que tienes y eliges asistencia, lo directamente =SQLCONNEC('Asistencia') y listo, esto tiene más parámetros pero aquí no tenemos mucho espacio, debes mirar la ayuda de vfp y veras, bueno, esto función así: xApunta = sqlconnec('Asistencia') con esto creas la variable xApunta que sera el controlador de conexión a la base de datos, y todo lo que quieras hacer en la base de datos deberás hacerlo mediante esta variable, el el quien sabe el camino, pues de aquí solo viene una función más importante, SQLEXEC(), esta función es la que envía los comando a la base de datos, ej: =SQLEXEC(xApunta," select * from alumnos","cursorAlumnos") esta función devuelve positivo si tuvo éxito, y te creara un cursor de memoria de lectura escritura llamada cursorAlumno que traerá del SQL, ok, son solo tres pasos lo que haces para trabajar en SQL2000 en VFP.
=sqlconnec(el nombre de conexion)             te conectas
=sqlexec(xApunta," el comando ","el cursor de resultado")   envias los comandos, agregar, borrar registros, querys etc.
=sqldisconnec(xApunta)       al finalizar tu programa te desconectas,
PD: Es muy importante que la variable xApunta sea publica, así te conectas al entrar nada más, y todos tus formularios lo utilizan como el mediador. Bueno, tu pregunta es muy extensa, mi fuerte es mysql no SQLSERVER, si aun no manejas SQL2000 debes ver algún buen manual para instalar, crear las bases de datos etc, este es otro lado, el programador en CLIENTE SERVIDOR ademas de conocer su lenguaje debe conocer su Motor de Bases de Datos (SQL SERVER, MYSQL ORACLE etc), ah, por ultimo no se si entendí, pero si tu tienes un programa ya creado pero con DBF para migrar los dbf a sqlserver hay una infinidad de herramientas gratuitas en la red para hacer directamente sin perder los datos inclusive, pero si estas empezando de Cero, olvida los DBF, comienza a leer sql para crear las tablas ahí directamente.
Muchas gracias amigo por que me despejastes todas mis dudas y las aclarates pero solo te pido unos datos más como hago para llevar mis tablas con información que tengo al SQL sin que se pierda nada y como trabajo con Cursores en VFP. Sabes es que nunca utilice Cursores y tampoco la consola de SQL 2000

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas