Ver Mensaje Individual
  #1  
Antiguo 03-02-2008
Esteban Quito Esteban Quito is offline
Miembro
 
Registrado: feb 2008
Posts: 21
Reputación: 0
Esteban Quito Va por buen camino
Velocidad en Cajeros de Supermercado

Hola a todos. Tengo el siguiente problema en el siguiente contexto.
Aplicacion de gestion comercial desarrollada en delphi 7 y tablas Paradox 7 instalada en un autoservicio de dos cajas y tres PCs (caja 1 con Celeron 6.1 (s.o.WinXp), caja 2 con Pentiun III (s.o.Win98) y la oficina administrativa una integrada VIA y (s.o.WinXp)) y dos controladores fiscales Epson TM 2000. Yo instalé los datos (entre ellos 13000 artic) en la caja 1 que es el punto donde mas se trabaja, y la aplicación en las tres PCs. La red es Windows.
La Caja 1, que es la que tiene los datos accede con buena velocidad pero el problema es la velocidad de coneccion con el TM 2000 y en la caja dos se potencian todas las demoras de manera tal que si no logro la velocidad requerida por mi cliente buscará otro software.
Mi pregunta es qué estoy haciendo mal ya que es mi primera experiencia en cajeros de autoservicio donde la facturación es intensa y con los cajeros(empleados) acostumbrados a la velocidad del cobol (antes funcionaba con una aplicación en cobol rm85)

Sé que en una base de datos Cliente Servidor, el problema estaria solucionado (eso creo), pero la solución debo encontrarla de inmediato y pasar entera una aplicación de tablas planas a cliente servidor tendría un costo en tiempo que mis clientes no estarían dispuestos a esperar.

Describo brevemente como es (desde el punto de vista Código) el acceso a los datos y a un articulo específico.
Un Query que carga los 13000 artículos, un Locate de ese Query se encarga de la busqueda del codigo de barras contenido en un control Edit con el SetFocus permanente que toma la lectura del scanner. A partir de ahí, comienza el envio del item al TM2000, el descuento de stock, totalizador (un conjunto de acumuladores), etc. Me sugirieron que en vez de Query de 13000 y el Locate, ejecute un Query para un solo articulo parametrizado por el código de barras. Esto significa leer del disco cada vez que se scannea un artículo. Ambos mecanismos funcionaron igual en la PC mas grande pero en la mas lenta, la lectura en disco por cada articulo ingresado es una muerte.

Bueno. Si necesitan mas detalles del código Delphi o sql para entender el lio que estoy haciendo, solo me dicen. Muchas gracias desde ya.
Responder Con Cita