2. Cuando se abre un c�digo, como hago para que no se pueda volver a
abrir en la otra m�quina por error?
Esto no lo entiendo. Contradice lo que quieres hacer, un dato puede y debe
de ser modificado si es posible en 2 terminales uno despues del otro, esto
por tema de seguridad.
Luis
----- Original Message -----
From: "Juan Pablo" <jpsando...@gmail.com>
To: "Comunidad de Visual Foxpro en Espa�ol"
<publice...@googlegroups.com>
Sent: Tuesday, July 27, 2010 9:48 AM
Subject: [vfp] Consideraciones al trabajar en red
Foxeros:
Hasta ahora mis programas han sido bastante sencillos y funcionales
para 1 sola m�quina, sin embargo estoy requiriendo migrar una
aplicaci�n de forma que se trabaje en varias m�quinas al mismo tiempo
y se retenga todo en una sola base de datos. Es decir que desde la PC1
y PC2 se pueda ingresar informaci�n de forma que todo se ingrese en
una sola base de datos, sin que entre ellas se generen conflictos.
Aqu� mis dudas:
1 .Como hago para que ambas m�quinas puedan usar las mismas tablas, o
es mejor que cada m�quina use su propia tabla y luego se unan
2. Cuando se abre un c�digo, como hago para que no se pueda volver a
abrir en la otra m�quina por error?
3. Alg�n ejemplo sencillo que tengan me ayudar�a, en fin cualquier
informaci�n que me permita evitar errores que ustedes por su
Hola Juan Pablo
PRIMERO. Debes decidir si usarás las tablas nativas del VFP (las .DBF) o si usarás un motor de Bases de Datos SQL (MySQL, PostgreSQL, Firebird SQL, etc.).
Ambas opciones tienen sus ventajas y sus desventajas, no hay nada perfecto. Si normalmente usas .DBF, los cambios a realizar son menores pero
también la seguridad es menor. Pasarte a un SQL requiere mucho tiempo, no lo harás en un día ni en dos, eso ni lo sueñes. Pero en contrapartida
tus aplicaciones serán mucho más robustas, seguras y confiables.
SEGUNDO. En tus formularios te conviene ponerles la opción: Data session "2 - Private Data Session", así cada formulario manejará sus propios datos y no
interferirá con los datos de otros formularios.
TERCERO. Si te decantas por los .DBF, debes abrir las tablas en forma compartida (SHARED), para que los otros usuarios de las red puedan acceder a ellas
CUARTO. Las tablas deberían estar en una sola carpeta, en el servidor, y todos los usuarios acceder a ellas cuando las necesiten. Eso de estar uniendo
tablas es causante de problemas, más lento, y la información no está siempre disponible para todos.
QUINTO. La ventaja de las aplicaciones multi-usuario es que muchos usuarios pueden estar consultando o agregando datos a las mismas tablas al mismo
tiempo, pero en este último caso debes evitar las colisiones. ¿Cómo? eso dependerá del aprovechamiento que utilices (.DBF libres, Bases de Datos
Visual FoxPro, SQL, etc.)
SEXTO. Para asegurarte que todo funciona bien te conviene hacer pruebas en 2 ó 3 computadoras al mismo tiempo. Deberías hacer un programa que corra
en red y que su función sea agregar datos a la misma tabla. Por ejemplo, que le agregue 1.000.000 de registros a la tabla CLIENTES. Si lo corres
en 3 computadoras, cuando los 3 terminen deberías tener 3.000.000 de registros y ningún código duplicado. Si no es así, debes buscar y corregir
los errores.
Saludos.
Walter.
yo hago direcciono el servidor y creo un exe solo para las terminales,
es algo como este codigo:
********* para terminal quitar asteriscos y poner asteriscos en la
parte del servidor
*SET DEFA TO \\server\Copiasuro\data
*SET PATH TO \\server\Copiasuro\TABLAS;\Copiasuro\DATA;\Copiasuro\PROYECTO;\Copiasuro\MENU;\Copiasuro\FORMAS;\Copiasuro\CODIGO;\Copiasuro\ICONO;\SICOFIN\INFORMES;\SICOFIN\QUERY;\SICOFIN\CLASES;\SICOFIN\CONTA\screen;\SICOFIN\CONTA\reportes;\SICOFIN\CONTA\programa;\Copiasuro\CONTA\bmps;\Copiasuro\CONTA\dbf00
*****************************
****** para el servidor quitar asteriscos y poner asteriscos en la
parte de la terminal
SET DEFA TO c:\Copiasuro\data
SET PATH TO c:\Copiasuro\TABLAS;\Copiasuro\DATA;\Copiasuro\PROYECTO;\Copiasuro\MENU;\Copiasuro\FORMAS;\Copiasuro\CODIGO;\Copiasuro\ICONO;\copiasuro\INFORMES;\copiasuro\QUERY;\copiasuro\CLASES;\copiasuro\CONTA\screen;\copiasuro\CONTA\reportes;\copiasuro\CONTA\programa;\Copiasuro\CONTA\bmps;\Copiasuro\CONTA\dbf00
****************
SET EXCL OFF
SET ESCAPE OFF
SET CLOCK STAT
SET CLEA ON
SET BRST OFF
SET CONS OFF
SET DELETED on
SET MESS TO
set mult on
SET DEBUG OFF
CLEA
CLOSE DATA
*#INCLUDE comun.h
public v_empresa
v_empresa = 'COPIASURO, R.L.'
_screen.height = 560
_screen.width = 847
_screen.autoCenter = .T.
_screen.caption = 'SISTEMA INTEGRADO CONTABLE & FINANCIERO '
_screen.icon = '\Copiasuro\ICONO\SICOFIN.ICO'
_screen.picture = '\Copiasuro\ICONO\SICOFIN.bmp'
DECLARE INTEGER FindWindow IN Win32API STRING lpClassName, STRING lpWindowName
DECLARE INTEGER BringWindowToTop IN Win32API INTEGER hwnd
DECLARE INTEGER SendMessage IN Win32API INTEGER hwnd, INTEGER Msg,
INTEGER WParam, INTEGER LParam
IF LAST() = 27
CLEA ALL
CLOS ALL
RETU
ELSE
DO FORM LOGIN
READ EVENT
ENDI
SET CLOC OFF
CLEA ALL
CLOS ALL
SET SYSMENU ON
CLEA ALL
CLOS ALL
gracias a todos los foxeros por las respuestas que les dan a los demas
yo leo y aprendo.
jorge desde Guatemala
El 12/08/10, william zuluaga <w2k2s...@yahoo.es> escribió:
De: publice...@googlegroups.com [mailto:publice...@googlegroups.com] En nombre de william zuluaga
Enviado el: Jueves, 12 de Agosto de 2010 08:11 p.m.
Para: publice...@googlegroups.com
Asunto: Re: [vfp] Consideraciones al trabajar en red
De: publice...@googlegroups.com [mailto:publice...@googlegroups.com] En nombre de Walter R. Ojeda Valiente
Enviado el: Lunes, 16 de Agosto de 2010 09:00 a.m.
Para: publice...@googlegroups.com
Asunto: RE: [vfp] Consideraciones al trabajar en red
Enviado el: Lunes, 16 de Agosto de 2010 09:27 a.m.
De: publice...@googlegroups.com [mailto:publice...@googlegroups.com] En nombre de Ricardo Pina
Enviado el: Lunes, 16 de Agosto de 2010 11:03 a.m.
De: publice...@googlegroups.com [mailto:publice...@googlegroups.com] En nombre de Luis Mata
Enviado el: Lunes, 16 de Agosto de 2010 07:58 a.m.