Objeto Persistente: Advantage Lo Hace De Nuevo !!!!
Total Page:16
File Type:pdf, Size:1020Kb
Objeto Persistente: Advantage lo hace de nuevo !!!! http://objetopersistente.blogspot.com/2005/03/advantage-lo-hace-de... BlogThis! Objeto Persistente De programación y sistemas... y algo mas Enlaces domingo, marzo 20, 2005 Programación Xailer, Libreria GUI y entorno integrado de Advantage lo hace de nuevo !!!! desarrollo para Acabo de regresa de pasar una semana en la ciudad de Chetumal, Capital del Estado Mexicano de Quintana Roo, para que se ubiquen mis lectores no xHarbour mexicanos, es el estado (provincia/departamento) donde se encuentra el FiveWin, Librería GUI mundialmente conocido centro turístico de CanCun. para Clipper, C3, (x)Harbour y xBase++ No, no estaba en una playa del Caribe Mexicano tumbado al sol, estuve xHarbour, trabajando en la dirección de informática de la Secretaría de Hacienda del Compilador de Estado, dándole los toques finales al sistema ISTUV y poniendo a punto un Clipper extendido ADS para 100 usuarios. (OpenSource) xHarbour, ISTUV son la iniciales de Impuesto Sobre Tenencia y Uso de Vehículos, y es el sistema que utiliza el gobierno del estado para controlar automóviles, Compilador de moticicletas, jets ski, botes, yates, etc. Todos los vehículos del estado y el Clipper extendido cobro de los impuestos que el uso de estos genera, están controlados por el (Comercial) sistema ISTUV, el cual posteriormente los reporta al gobierno Federal. ISTUV originalmente estaba desarrollado en Clipper 5.2, e instalado en Blogs de redes de area local con servidores Novell 4.11 dentro de los centros de Programadores atención al público del gobierno del Estado, esto dificultaba contar con información en línea debido a que las redes no estaban conectadas a la AveMundi by José central, lo cual demoraba la integración de la información hasta en 5 días. Luis Sanchez Navarro Chochurro by Jose Con el programa de modernización del gobierno, se decidió enlazar a todas 'Arfonso' Suarez las oficinas de atención al publico y centralizar la información de tal forma Codigo Escrito by que todas las operaciones del padrón vehicular se pudieran llevar a cabo en Jaime Iruzun tiempo real. Listo El Pollo by Vikthor Tomás Se hizo una importante inversión tecnológica para conectar a todas las TheFull by Rafa oficinas remotras a través de un enlace dedicados E3 a un super servidor HP Xeon Dual processor 2 procesadores de 2.8 GHertz cada uno, 2 Gbytes de Carmona memoria ram y un array de 8 discos duros de 40 gigas cada uno... un sueño de servidor. Herramientas Con tan buen hardware y excelente ancho de banda, nadie tomó en cuenta útiles para el el software... y cuando se montó la version Clipper en este ambiente WAN, programador con todas las bases de datos a su maxima capacidad.... ¡ oh desilusión !, los sitios remotos tardaban más de 20 minutos solo en abrir la tabla del padrón CanalFive, los vehicular (mas de 200 mil registros) y mas de 3 horas en abrir los mejores controles 1 de 3 07/09/2006 12:00 p.m. Objeto Persistente: Advantage lo hace de nuevo !!!! http://objetopersistente.blogspot.com/2005/03/advantage-lo-hace-de... para FiveWin movimientos del padrón (1,200,000 registros), fue entonces cuando Funcky, la librería entramos en acción nosotros, para sugerirles el uso de Advantage Database OLE mas completa Server como su solución. para (x)Harbour Cabe señalar que no es la primera vez que voy a Chetumal, ya he estado allí SoftwareFX, hogar de 3 veces, la primera fue para hacer una demostración del ADS y dejarles ChartFX, la librería instalada una copia de evaluación, enseñarles las bondades de los indices de gráficas CDX contra los NTX que estaban utilizando y mostrarles las técnicas de MultiEdit, excelente programación que debían seguir para migrar su aplicación a ADS. La editor de programas dirección quedó sumamente satisfecha con los resultados de esta primera visita, que quedó pendiente una segunda visita. La segunda vez que los visité, fue para impartir un curso intesivo de Archivo (x)Harbour y FiveWin, ya que en las pruebas efectuadas, vimos que la febrero 2005 aplicación de Clipper DOS se volvía mas rápida usando ADS, pero debido al marzo 2005 uso del ADSDosIP (interfaz ADS para que aplicaciones DOS puedan utilizar el abril 2005 protocolo TCP/IP) , había cierta caída de velocidad que no resultaba mayo 2005 satisfactoria para el uso del programa en oficinas remotas, así que se junio 2005 decidió mover la aplicación completa a una Interfaz Visual de 32 bits, y julio 2005 dada la amplia experiencia de los programadores en Clipper, el camino obvio fue utilizar (x)Harbour con FiveWin Harbour como interfaz gráfica. octubre 2005 noviembre 2005 Para esta última visita, el avance del proyecto era ya del 90% y durante 5 diciembre 2005 días nos dedicamos a resolver dudas técnicas de programación y a hacerle enero 2006 un ajuste fino al servidor ADS. febrero 2006 marzo 2006 El sistema está programado en FiveWin Harbour 2.4, con xHarbour 0.92, los abril 2006 reportes están hechos con Crystal Reports 8.5 utilizando el Cliente Crystal mayo 2006 de ADS, adicionalmente cuenta con una aplicación PHP para Internet que le permite consultar al público los importes correspondientes a los impuestos junio 2006 de sus vehículos. Los usuarios no son pocos, en total 75 estaciones de trabajo remotas están Sindicar este sitio conectadas en la WAN via Advantage Internet Server, 10 Estaciones más utilizan el servidor ADS remoto dentro de las instalaciones del departamento de informática, y 20 usuarios adicionales se conectan utilizando Clientes Delgados de Windows Terminal Server. Las bases de datos no son precisamente pequeñas, el padrón vehicular sobre pasa los 220 mil registros, mientras que el archivo que contiene los movimientos del padrón son aproximadamente 1,200,000 registros. Durante los días de prueba, el servidor ADS registró mas de 300 mil operaciones a las mas de 50 tablas DBF e índices CDX que componen el sistema, sin experimentar absolutamente ningún problema y entregando la información a las estaciones remotas casi como si fuera una red de área local. Surgieron algunos problemas con la aplicación PHP, debido a que los programadores deseban integrar algunas cosas adicionales a las tablas, como procesos almacenados (store procedures) y esquemas de seguridad a las tablas, por esa razón se decidió migrar todos los DBF y sus índices CDX al formato nativo de ADS, archivos ADT, con índices ADI todos integrados dentro de un Diccionario de Datos Advantage. Debido a la premura del tiempo, me tocó realizar a mí la parte de la 2 de 3 07/09/2006 12:00 p.m. Objeto Persistente: Advantage lo hace de nuevo !!!! http://objetopersistente.blogspot.com/2005/03/advantage-lo-hace-de... migración de los DBFs a ADT, para lo cual escribí un pequeño programa en XAILER que realizara esta tarea, el programa quedó bastante decente, pese a mi evidente inexperiencia utilizando Xailer, pero este pequeño programa cumplió bien su objetivo, con algunos pequeños bugs. Si deseas verlo en acción, puedes descargarlo haciendo click aqui, (proyecto, ejecutable y DLLs incluidos). Necesitarás Xailer para volverlo a construir. Una vez cambiadas todas las estructuras de las tablas, únicamente tuvimos que agregar a nuestro código fuente la función ADSSetFileType(3) (para definir el formato ADT como predeterminado), volvimos a compilar el programa y ¡ listo !, nuestra aplicación estuvo lista para funcionar con tablas ADT en pocos minutos, ahora hay que cambiar todos los reportes de Crystal, pero eso es lo de menos. Las tablas ADT se portaron bastante bien con el programa, sentimos que la velocidad del programa se incrementó, no de manera radical, pero si se siente un poco (no mucho) mas rápida que con DBFs e índices CDX, los usuarios remotos nos notificaron también de un incrmento de velocidad. Dejé Chetumal con el servidor ADS montado y bien configurado, listo para entrar en producción, las dudas de los programadores totalmente resultas y en pocas palabras.... ¡ Advantage lo hace de nuevo ! # posted by Rene Flores @ 1:06 AM Comments: Publicar un comentario en la entrada << Home 3 de 3 07/09/2006 12:00 p.m..