FiveTech Support Forums

FiveWin / Harbour / xBase community
Board index FiveWin para Harbour/xHarbour Muy Urgente, por favor!!
Posts: 479
Joined: Fri Feb 16, 2007 10:29 AM
Muy Urgente, por favor!!
Posted: Tue May 13, 2008 03:55 PM

Compañeros:

Tengo que encontrar una solución rápida al problema que tengo:
Tengo una aplicación corriendo en una RED Local (1 PC Servidor + 2 terminales conectados mediante un HUB), pero la aplicación se ralentiza hasta 9 segundos en refrescar un Dialog si hay más de 2 o más PC activos.
En mi aplicación no tengo SET FILTER ni LOCATES, todo está a base de seek y find. Uso DBF y NTX.
El S.O. es W.vista y tiene desactivado el Fireware, Antivirus y demás...

Si accede a las DBF 1 solo PC va como un tiro... el problema es cuando acceden varios.

Que solución tiene?
Mil gracias.
LORENZO.

Posts: 94
Joined: Tue Mar 28, 2006 04:09 PM
Muy Urgente, por favor!!
Posted: Tue May 13, 2008 04:23 PM

Hola Loren, para empezar yo revisaria mis cables de red, y ademas cambiaria el HUB por un SWITCH..

Saludos

P.D. tambien les daria una revisada a mis funciones con las que abro las bases de datos y ver que todo estuviera correcto.

Luis Fernando Rubio Rubio
Posts: 446
Joined: Mon Dec 26, 2005 09:11 PM
Re: Muy Urgente, por favor!!
Posted: Tue May 13, 2008 05:19 PM
Loren wrote:Compañeros:

Tengo que encontrar una solución rápida al problema que tengo:
Tengo una aplicación corriendo en una RED Local (1 PC Servidor + 2 terminales conectados mediante un HUB), pero la aplicación se ralentiza hasta 9 segundos en refrescar un Dialog si hay más de 2 o más PC activos.
En mi aplicación no tengo SET FILTER ni LOCATES, todo está a base de seek y find. Uso DBF y NTX.
El S.O. es W.vista y tiene desactivado el Fireware, Antivirus y demás...

Si accede a las DBF 1 solo PC va como un tiro... el problema es cuando acceden varios.

Que solución tiene?
Mil gracias.
LORENZO.


abres y cierras las tablas? con frecuencia esto enlentece las aplicaciones que trabajan en red (además de un posible problema con cables y el Hub)
FWH + BCC582 + WorkShop 4.5 + Resource Hacker + Mingw
Mis nuevas herramientas
Comunicacion via WhatsApp (+51) 957549 665
Comunicación via Correo: apic1002002 at yahoo dot es; apic1002002@gmail.com
Posts: 479
Joined: Fri Feb 16, 2007 10:29 AM
Muy Urgente, por favor!!
Posted: Tue May 13, 2008 08:48 PM

Efectivamente compañeros:

1.- Sustituire el HUB por un SHITCH
2.- Abro las DBF al principio de mi EXE y las cierro al SALIR, pero no obstante en determinados procesos cierro (calias->(dbclosearea()) y abro ( use cDbf index cIndex shared alias cAlias) porque es la única manera de refrescarlas en la RED.

Descubrí que si un terminal crea y guarda 1 registro en una DBF y otro terminal necesita mostrar todos los registros, nunca se muestra el último introducido. Cerrando y abriendo las DBF soluciono este problema.

La cosa es que si accedo con 1 solo terminal la cosa va como 1 tiro. Si acceden varios se ralentizan enormemente.

Un saludo.
LORENZO.

Posts: 8523
Joined: Tue Dec 20, 2005 07:36 PM
Muy Urgente, por favor!!
Posted: Tue May 13, 2008 08:55 PM

muestra como haces los REPLACES...

Saludos.

João Santos - São Paulo - Brasil - Phone: +55(11)95150-7341
Posts: 446
Joined: Mon Dec 26, 2005 09:11 PM
Muy Urgente, por favor!!
Posted: Tue May 13, 2008 09:09 PM
Loren wrote:Efectivamente compañeros:

1.- Sustituire el HUB por un SHITCH
2.- Abro las DBF al principio de mi EXE y las cierro al SALIR, pero no obstante en determinados procesos cierro (calias->(dbclosearea()) y abro ( use cDbf index cIndex shared alias cAlias) porque es la única manera de refrescarlas en la RED.

Descubrí que si un terminal crea y guarda 1 registro en una DBF y otro terminal necesita mostrar todos los registros, nunca se muestra el último introducido. Cerrando y abriendo las DBF soluciono este problema.

La cosa es que si accedo con 1 solo terminal la cosa va como 1 tiro. Si acceden varios se ralentizan enormemente.

Un saludo.
LORENZO.


Necesitas con urgencia refrescar tu dialogo (o los objetos que tiene en él):

oDlg:refresh() o
oWnd:refresh()

en el peor de los casos requieres hacer un comando tal como:

refreshall()
FWH + BCC582 + WorkShop 4.5 + Resource Hacker + Mingw
Mis nuevas herramientas
Comunicacion via WhatsApp (+51) 957549 665
Comunicación via Correo: apic1002002 at yahoo dot es; apic1002002@gmail.com
Posts: 1446
Joined: Mon Oct 10, 2005 02:38 PM
Muy Urgente, por favor!!
Posted: Tue May 13, 2008 09:50 PM
Loren wrote:Efectivamente compañeros:

1.- Sustituire el HUB por un SHITCH
2.- Abro las DBF al principio de mi EXE y las cierro al SALIR, pero no obstante en determinados procesos cierro (calias->(dbclosearea()) y abro ( use cDbf index cIndex shared alias cAlias) porque es la única manera de refrescarlas en la RED.

Descubrí que si un terminal crea y guarda 1 registro en una DBF y otro terminal necesita mostrar todos los registros, nunca se muestra el último introducido. Cerrando y abriendo las DBF soluciono este problema.

La cosa es que si accedo con 1 solo terminal la cosa va como 1 tiro. Si acceden varios se ralentizan enormemente.

Un saludo.
LORENZO.


No abras y cierres la DBF en el PC 'x', sino en el PC 'y' donde has realizado el append o el replace seguido realiza un Goto( Recno() ). Pruébalo y cuentas.

Saludos
Carlos G.

Un Saludo

Carlos G.



FiveWin 25.12 + Harbour 3.2.0dev (r2502110321), BCC 7.7 Windows 11 Home

Posts: 479
Joined: Fri Feb 16, 2007 10:29 AM
Muy Urgente, por favor!!
Posted: Wed May 14, 2008 07:07 AM
Haber compañeros:
Esta mi pantalla de ventas:

[/img] Al modificar una Localidad yo hago:
unlock()
replace ....
dbcommit()
dbunlock()
....
Esto no me refresca en el resto de terminales. Tengo que hacer un TIMER que sí me refresca pero revisar todos los asientos cuando hay varios terminales operando en la RED puede suponer hasta 9 seg. de espera.

¿ Alguna solución ?
Mil gracias.
LORENZO
" alt="" loading="lazy">
Posts: 989
Joined: Thu Nov 24, 2005 03:01 PM
Muy Urgente, por favor!!
Posted: Wed May 14, 2008 09:57 AM

Hola Lorenzo,

es muy probable que el problema sean los Oportunistic Locks. Hay que desactivarlos en el servidor y las estaciones. Ahora estoy en el trabajo y no tengo las claves de registro exactas, pero si las buscas en Microsoft seguro las vas a encontrar.

Si puedes, te recomiendo que uses un samba de servidor.

Un saludo,
Carls

Saludos
Carlos Mora
http://harbouradvisor.blogspot.com/
StackOverflow http://stackoverflow.com/users/549761/carlos-mora
“If you think education is expensive, try ignorance"

Continue the discussion