El ciclo de trabajo de estás librerías es por medio de eventos en donde se invocan los diferentes métodos y sus parámetros enumerados, para que el escáner realice las funciones que le indica la librería.
Es decir, lanzamos un ksScan.action = KSACTIONSTART y el escaner lanza los siguientes eventos:
BatchStart
PageStart
PageEnd
PageAnnotate
PageDone
BatchEnd
ErrorEvent
Estos eventos, en el modo de lote de escaneos, se repiten una y otra vez hasta que finalizas el trabajo o llegas a la última página. Y aquí tenía el problema con el Canon (ahora mismo usamos un Fujitsu), que se quedaba tonto y no cerraba el ciclo de eventos.
Después de una semana rompiéndome los cuernos, decidí hacerme un proyecto nuevo desde cero y corrigiendo los múltiples fallos y duplicidades que tiene el código original, y obteniendo resultados positivos, escanear y almacenar el documento, de forma casi inmediata.
Y entonces se presento "la bestia negra del desarrollo"...
La causa principal de cambiar de escáner es el poder imprimir por el anverso un sello de registro del documento. Con el Fujitsu, solamente se puede imprimir por el reverso y se imprime una etiqueta de registro extra para situar en el anverso del documento físico.
Por lo cual cuando en las pruebas no obtenía ninguna impresión, empecé a tocar todo lo tocable y a volverme loco pensando el porqué del fallo. Incluso modifiqué el desarrollo para poder pasar de un escáner al otro de manera fácil y sencilla para hacer pruebas, y nada. Aquello no imprimía la línea de prueba ni en broma.
Al final me olvidé que en mis tiempos de servicio técnico lo primero que había que comprobar es el entorno FISICO. Y, efectivamente, el problema era que la impresora del escáner (llamada preprinter) no recibía las hojas desde el escáner por un desajuste que el técnico encontró después de una hora de sufrimiento y que soluciono con una cuña de papel (alta tecnología).
Es decir, lanzamos un ksScan.action = KSACTIONSTART y el escaner lanza los siguientes eventos:
BatchStart
PageStart
PageEnd
PageAnnotate
PageDone
BatchEnd
ErrorEvent
Estos eventos, en el modo de lote de escaneos, se repiten una y otra vez hasta que finalizas el trabajo o llegas a la última página. Y aquí tenía el problema con el Canon (ahora mismo usamos un Fujitsu), que se quedaba tonto y no cerraba el ciclo de eventos.
Después de una semana rompiéndome los cuernos, decidí hacerme un proyecto nuevo desde cero y corrigiendo los múltiples fallos y duplicidades que tiene el código original, y obteniendo resultados positivos, escanear y almacenar el documento, de forma casi inmediata.
Y entonces se presento "la bestia negra del desarrollo"...
La causa principal de cambiar de escáner es el poder imprimir por el anverso un sello de registro del documento. Con el Fujitsu, solamente se puede imprimir por el reverso y se imprime una etiqueta de registro extra para situar en el anverso del documento físico.
Por lo cual cuando en las pruebas no obtenía ninguna impresión, empecé a tocar todo lo tocable y a volverme loco pensando el porqué del fallo. Incluso modifiqué el desarrollo para poder pasar de un escáner al otro de manera fácil y sencilla para hacer pruebas, y nada. Aquello no imprimía la línea de prueba ni en broma.
Al final me olvidé que en mis tiempos de servicio técnico lo primero que había que comprobar es el entorno FISICO. Y, efectivamente, el problema era que la impresora del escáner (llamada preprinter) no recibía las hojas desde el escáner por un desajuste que el técnico encontró después de una hora de sufrimiento y que soluciono con una cuña de papel (alta tecnología).
No hay comentarios:
Publicar un comentario