Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   La Taberna (https://www.clubdelphi.com/foros/forumdisplay.php?f=40)
-   -   Biolab 1.0 (https://www.clubdelphi.com/foros/showthread.php?t=75272)

Neftali [Germán.Estévez] 11-08-2011 10:32:50

(instalador) El tema que ya te han comentado del Checkbox de "Ejecutar ahora"; Esto tiene pinta de ser problema del instalador. Tal vez no has configurado bien el path o nombre de la aplicación a ejecutar.
=======================================================
(Configuración) Me ha pasado una cosa curiosa, que no es un error. Ayer con la primera versión borré TODA la inormación (o eso creía yo); Hay al instalar la nueva versión e ir a confguración veo que mantiene el LOGOTIPO que configuré ayer. ¿Guardas algo en el registro?
=======================================================
(programa) Los errores de transacciones siguen; Parece que estos pasos hacen que salte siempre:
(1) Abrir programa
(2) Ir a: Configuración / Examenes ofrecidos
(3) Modificar un examen y guardar
(4) Ir a: Configuración/Usuarios de Biolab

>= En este punto sale:
"BioDataModule.DefaultUpdateTransaction :Transaction is active."

NOTA: Te enviaría la pila de llamadas, pero me salen "marcianadas"



Por lo demás, sigo sin poder dar de alta órdenes por el problema comentado ayer.

Un saludo.

ecfisa 11-08-2011 14:02:49

Cita:

Empezado por maeyanes (Mensaje 409133)
ecfisa, yo a lo que me refiero es que si buscas por 'PEREZ JUAN', es muy difícil que obtengas un resultado que sea 'PEREZ JAN'...

Ahora, lo que deseas se podría implementar usando comodines, no se, implementar que puedas buscar por: PERE* J*N y entonces si, tus resultados serían 'PEREZ JUAN', 'PERES JUAN' y 'PEREZ JAN'...
Saludos...

Correcto y seguramente Chris haya previsto esa posibilidad.
Creo que pensamos de igual forma, pero seguramente yo no me supe expresar con claridad.
Lo que sucedió en la prueba, es que al no encontrar el nombre por el error de tipeo, intenté hacer click en la lupa o busqué alguna información al respecto y no la encontré.
Por supuesto que en mi caso no hubo problema, pero si la persona que está al frente no tiene mucha idea (como es la mayoría de las veces :) ), concluiría que el paciente no existe.
En relación a eso le sugerí que dejara la posibilidad de flexibilizar la busqueda.

Un saludo.:)

José Luis Garcí 11-08-2011 14:45:17

Hola newton si en este comentario

Cita:

Y digo yo.... ¿no podían haber llamado a la tienda de informática de la esquina para que le mirara el pc?.
te referías a la anécdota que conté, el problema es que el programa es uno que cree hace más de 10 años y por tacañeria del Jefe, no quiso incorporar sistemas de seguridad adicionales como mochilas, etc, por lo que cualquier problema que hubiese en las cedes de la península o de las Islas, le tocaba a un servidor realizar lo, lo curioso es que llevo fuera de ese entorno más de 9 años y siguen trabajando con el programa, lo han intentado cambiar 2 o 3 veces, pero claro pagando aprecio de risa y de momento no han funcionado las nuevas versiones. Hace una año quizo que le hiciese una versión mejorada, pero no se puso de acuerdo con migo en el precio, y ahí quedo, sólo comentar que realmente son tres programas independientes, uno de tiradas, otro de entrada de datos y por último el que maneja el usuario, Realmente en su día había 4, por que los inspectores tenían otro para modificaciones, inspecciones y demás, pero este era más una herramienta que un programa en si.

Chris 11-08-2011 16:12:25

Cita:

Empezado por newtron (Mensaje 409157)
Chris.
Me he instalado la nueva versión y esto es lo que me aparece cuando intento abrir el programa:

Gracias Newtron! Creo que telepáticamente nos comunicamos :). Hace unas horas había pensado en este error (el programa no lo maneja). Lo que sucede es que Biolab está intentando utilizar el servidor Firebird que está instalado en tu PC, pero parece que tienes la versión 2.1, no la 2.5 que requiere Biolab.

Saludos,
Chris.

Chris 11-08-2011 16:15:10

Cita:

Empezado por José Luis Garcí (Mensaje 409152)
En cuanto a lo de los usuarios, os cuento una pequeña anécdota, que costo a mi antiguo Jefe, casi 700 euros, llaman de una de las oficinas que tiene problemas para escribir en el programa, tanto con varias letras como con números, le digo que quiten el teclado y compren uno nuevo y lo instalen, así lo hace y persiste el problema, pues nada billete ida y vuelta Las Palmas/Sevilla/Las Palmas transporte a hueva, hotel, dietas, etc.. para tres días, llego por la noche, me voy al hotel y a la mañana siguiente estoy en la oficina, la persona llega dos horas más tarde de la que ha quedado con migo, yo con un mosqueo de tres pares de narices, por tenerme tirado en frente de la oficina, me pide disculpas, le pido que encienda el equipo, ejecute el programa y la dejo actuar y me dice muy eufórica "Lo vez esta mierda no funciona", me muerdo el labio, cojo el teclado (que estaba lleno entre las teclas de imágenes de Santos, una especies de palillos con muñequitos, etc), le quito todo, y le digo prueba ahora, "A pues va mejor, pero aún hay dos teclas que no van" (ojo al caso que estamos hablando de un teclado con dos días), miro las teclas, las saco y adivinar lo que tenían por dentro, restos de pan, trozos pequeños de palmera de chocolate, etc, cojo tecla por tecla y limpiando la membrana, le comento que no puede comer ni poner bebidas cercas del teclado ni del equipo en general, y me responde que ella no hace eso, mientras se come un dulce, cojo el teclado antiguo, que daba asco sólo de verlo le doy la vuelta y no veas la de porquería que caía. Por la tarde vuelvo a la oficina, y el teclado otra vez con las estampitas, y comiendo de nuevo, le digo que eso no lo puede hacer y me contesta que hace lo que le da la gana, y que no va a cambiar su manera de ser, le digo de acuerdo, cojo el móvil y llamo a mi jefe, le comento lo que pasa y me dice que la pase con ella, en un minuto, dejo el teclado limpio, en todos los sentidos, y no volvimos a tener problemas de este tipo en esta oficina.

Gracias José!

Ahora con respecto a tu experiencia, talvez a tu jefe (o el que se comunicó con el cliente en su momento) le faltó pericia para preguntarle por ejemplo: "El teclado funciona correctamente con otros programas?" En todo caso, para estas situaciones hay empresas que te facturan si el incidente fue por negligencia del usuario. Pero bueno, también como StartUp no puedes ser tan extricto y debes complacer a tus clientes. El cliente es el que manda.

Saludos,
Chris

Chris 11-08-2011 16:18:08

Cita:

Empezado por Neftali (Mensaje 409162)
No hombre, no te preocupes; A mi también me ha pasado. Estás 1 semana probando la aplicación y no te falla. Generas la instalación, la subes y justo en esa hay un error tonto que hace que falle... :):)

Nos hubiéramos aburrido mucho como "betatesters" si todo hubiera funcionado a la primera. ;)

Definitivamente que sí :p (Gajes del oficio)

Cita:

Empezado por Neftali (Mensaje 409164)
Creo que es mejor así. Yo he usado Eureka y ExcMagic (ambos añaden esa información) durante mucho tiempo y te aseguro que nunca me ha servido para nada.

Tampoco a mí. Se quedó allí activada por que es predeterminada. Pero realmente para el tipo de aplicación que suelo realizar, no me sirve de nada.

Saludos,
Chris

Chris 11-08-2011 16:21:48

Cita:

Empezado por Neftali (Mensaje 409165)

:eek: :eek: :eek: :eek: qué es eso? no recuerdo haber nombrado mis unidades y funciones así :D

Revisaré eso

Chris 11-08-2011 16:24:36

Cita:

Empezado por ecfisa (Mensaje 409190)
Correcto y seguramente Chris haya previsto esa posibilidad.
Creo que pensamos de igual forma, pero seguramente yo no me supe expresar con claridad.
Lo que sucedió en la prueba, es que al no encontrar el nombre por el error de tipeo, intenté hacer click en la lupa o busqué alguna información al respecto y no la encontré.
Por supuesto que en mi caso no hubo problema, pero si la persona que está al frente no tiene mucha idea (como es la mayoría de las veces :) ), concluiría que el paciente no existe.
En relación a eso le sugerí que dejara la posibilidad de flexibilizar la busqueda.

Un saludo.:)

Revisaré la búsqueda compañeros. Veré que posibilidades tengo de optimizar la búsqueda de texto (gracias a Dios su código lo tengo centralizado en un sólo lugar).

Saludos,
Chris

José Luis Garcí 11-08-2011 17:25:55

Chris, Mi jefe era el cliente, y tal cual se instalaba el programa, sólo ejecutaba el programa, cuando cerrabas totalmente apagaba el equipo y tan pronto se iniciaba, se ejecutaba el programa, debo reconocer que esto si que no era mio, era un programa que compro mi jefe y que no te permitía ejecutar otra cosa que no fuese el programa.

Por fin he podido ejecutar el programa, de momento en las ordenes tengo un error, al tomar orden agregar examen, al seleccionar un examen y pulsar o dar doble click me sale el siguiente error

Cita:

Access violation at address 00777A34 in module 'biolab.exe'. Read of address 0000000C.
Ademas en tomar Examen, tienes un combobox para doctor, pero esta vació y no encuentro ningún apartado para agregarlos.

La apariencia visual es muy buena y muy claro el programa, sólo veo muy pequeños los botones del ABM, teniendo en cuenta que un futuro no muy lejano, todos los monitores serán táctiles, serán muy justos para su uso.

Por cierto Chris, usas dbgrid o Listview, por que me gusta mucho la apariencia como te quedan.

Neftali [Germán.Estévez] 11-08-2011 17:42:48

Cita:

Empezado por José Luis Garcí (Mensaje 409225)
Por fin he podido ejecutar el programa, de momento en las ordenes tengo un error, al tomar orden agregar examen, al seleccionar un examen y pulsar o dar doble click me sale el siguiente error

Ese es el mismo que me sale a mi y no he conseguido saltármelo.

Cita:

Empezado por José Luis Garcí (Mensaje 409225)
Ademas en tomar Examen, tienes un combobox para doctor, pero esta vació y no encuentro ningún apartado para agregarlos.

Creo quelo rellenas directamente ahí, "a mano".
Supongo (como pasa con las categorías de las pruebas) que luego te aperecerán los que has agregado antes (pero no lo se seguro, porque no he podido guardar la orden).

Cita:

Empezado por José Luis Garcí (Mensaje 409225)
..usas dbgrid o Listview, por que me gusta mucho la apariencia como te quedan.

=> TJvDBGrid de las Jedi

José Luis Garcí 11-08-2011 17:53:48

Gracias por la información Neftalí

Chris 11-08-2011 18:02:06

Cita:

Empezado por Neftali (Mensaje 409165)
(instalador) El tema que ya te han comentado del Checkbox de "Ejecutar ahora"; Esto tiene pinta de ser problema del instalador. Tal vez no has configurado bien el path o nombre de la aplicación a ejecutar.

He buscado y buscado pero no encuentro dónde se configura que .exe ejecutará el instalador cuando finalice la instalación. De hecho ni siquiera hay una opción para que no ponga este Checkbox.
Cita:

Empezado por Neftali (Mensaje 409165)
(Configuración) Me ha pasado una cosa curiosa, que no es un error. Ayer con la primera versión borré TODA la inormación (o eso creía yo); Hay al instalar la nueva versión e ir a confguración veo que mantiene el LOGOTIPO que configuré ayer. ¿Guardas algo en el registro?

Lo que sucede es que la base de datos no se crea con la instalación. Biolab la crea en su primera ejecución. La base de datos persiste a menos que la borres manualmente. La base de datos está en: %DOCUMENTOS_PUBLICOS%\biolab\database.fdb

Cita:

Empezado por Neftali (Mensaje 409165)
(programa) Los errores de transacciones siguen; Parece que estos pasos hacen que salte siempre:
(1) Abrir programa
(2) Ir a: Configuración / Examenes ofrecidos
(3) Modificar un examen y guardar
(4) Ir a: Configuración/Usuarios de Biolab

He logrado reproducir el problema Neftalí. Empezaré a trabajar en una solución lo antes posible. Gracias!

Chris 11-08-2011 18:06:01

Cita:

Empezado por José Luis Garcí (Mensaje 409225)
Ademas en tomar Examen, tienes un combobox para doctor, pero esta vació y no encuentro ningún apartado para agregarlos.

Ya lo dijó Neftalí! Aquí van apareciendo valores mediante se le valla dando uso al sistema.

Cita:

Empezado por José Luis Garcí (Mensaje 409225)
La apariencia visual es muy buena y muy claro el programa, sólo veo muy pequeños los botones del ABM, teniendo en cuenta que un futuro no muy lejano, todos los monitores serán táctiles, serán muy justos para su uso.

Por cierto Chris, usas dbgrid o Listview, por que me gusta mucho la apariencia como te quedan.

Gracias José! Veré lo de los botones en su momento. Aunque talvez para una pantalla táctil tendré que volver a la mesa de dibujo para la interfaz. POr último, no sé como Neftalí lo supo, pero los componentes son TJvDBGrid!

Saludos,
Chris

Chris 11-08-2011 18:07:26

Cita:

Empezado por José Luis Garcí (Mensaje 409225)
Por fin he podido ejecutar el programa, de momento en las ordenes tengo un error, al tomar orden agregar examen, al seleccionar un examen y pulsar o dar doble click me sale el siguiente error

Access violation at address 00777A34 in module 'biolab.exe'. Read of address 0000000C.

Todos me han reportado este error. Pero yo aún no logro reproducirlo :(

newtron 11-08-2011 18:11:01

Cita:

Empezado por ecfisa (Mensaje 409190)
En relación a eso le sugerí que dejara la posibilidad de flexibilizar la busqueda.

Pues fijaros que para esto viene estupendamente mi método de búsqueda, como lo hago con un ttable (vale, no debería) voy buscando según va tecleando el nombre y cuando no encuentra la cadena se queda en el último válido.

ecfisa 11-08-2011 18:20:28

Hola Chris.

Generalmente cuando a uno le dicen que pruebe algo busca si hay fallos y se olvida del resto...

Se me olvidó comentarte la excelente impresión que me dejó la presentación del programa y la dinámica del mismo: Muy profesional y de muy buen gusto.
Sé que una vez que corrijas esos pequeños errores, te va a quedar una aplicación de primera.

Un saludo.:)

Chris 11-08-2011 18:46:56

Cita:

Empezado por ecfisa (Mensaje 409239)
Hola Chris.

Generalmente cuando a uno le dicen que pruebe algo busca si hay fallos y se olvida del resto...

Se me olvidó comentarte la excelente impresión que me dejó la presentación del programa y la dinámica del mismo: Muy profesional y de muy buen gusto.
Sé que una vez que corrijas esos pequeños errores, te va a quedar una aplicación de primera.

Un saludo.:)

Muchas Gracias Ecfisa. Aun queda una parte de la aplicación que vean, si es que no han popido aún ingresar las órdenes. Pero no logro reproducir el error aún. Ya he probado en W7 y WinXP y nada aún.

Utilicé un desamblador. No estoy seguro, pero por la información que me dió el código, algo hace sugerir que el problema es un componente de terceros que utilizo para manejar formatos JSON.

Saludos,
Chris

look 11-08-2011 20:07:57

Cita:

Empezado por José Luis Garcí (Mensaje 408996)
Chris, en estos momentos lo estoy bajando, lo probare y te comento, dentro de un rato, pero no sería, mejor (Según mi experiencia), que lo probaran usuarios que no son programadores, te lo comento, por que lo programadores tenemos una manera de trabajar, más lógica, que un usuario normal, por eso a nosotros nos suelen salir menos errores, que cuando lo usan otros usuarios. Yo creo que es debido a que nosotros actuamos según como hemos pensado el sistema, mientra que el usuario te sorprende, es verdad que nuestros sistemas deben de estar pensado a prueba de manipulaciones incorrectas, pero ello no nos exime de despistes y situaciones totalmente inesperadas.

Amen a eso!!!

Chris 11-08-2011 21:17:38

A los que han probado Biolab y han tenido problemas al crear una orden, me podrían enviar el achivo bioelog.elf. Es que ya no puedo más. No he logrado reproducir el error y ya voy por 5 máquinas en dónde lo voy probando :( Se los agradecería muchísimo, prometo no hacer nada malo con ese archivo :(

El archivo lo pueden encontrar en:
Windows XP: C:\Documents and Settings\%USUARIO%\Datos de programa\EurekaLog\biolab
Windows Vista / 7: C:\Users\%USUARIO%\AppData\Roaming\EurekaLog\biolab

ecfisa 11-08-2011 21:33:23

Hola Chris.

Lo pedido.

Saludos.

Chris 11-08-2011 21:45:21

Muchas gracias ecfisa! te lo agradezco muchísimo. Ya estoy analizando el informe :)

Saludos,
Chris

Chris 12-08-2011 06:14:14

He identificado el problema en la toma de las órdenes: El problema lo ocaciona porque algunas configuraciones regionales utilizan la coma (,) como separador de punto decimal. Un ejemplo es España (Neftalí) y Argentina (ecfisa). -Disculpame José, pero no sé exactamente dónde vives, pero para tí debe ser igual si experimentaste el mismo problema-.

La ventana de selección de exámenes se comunica con la ventana de toma de órdenes intercambiando información en formato JSON. Es ahí el problema. La definición de JSON solo especifica el punto (.) como separador de punto decimal. Es por eso que al pasar un valor como este:
Cita:

{"selected_id":2,"select_name":"Hemograma Completo","selected_category":"Hematología","selected_quantity":1,"selected_sub_total":100,00,"selected_discount":"0%","selected_vat":0,00,"selected_net_total":100,00,"examid":0,"invoice_no":0}
El interprete se confunde en las partes en negrillas generando los AV que alguno de ustedes habían estado experimentando.

La solución:
He cambiado el código que genera la anterior cadena JSON para devuelva los decimales utilizando punto (.) para separar el decimal del entero. El ejecutable reparado puede descargarse desde esta dirección: http://dl.dropbox.com/u/11734896/biolab_ejecutable.exe

El resto de problemas que me había comentado Neftalí aún no los he revisado a fondo. Este es el que para mí era de mayor prioridad. Pero sin duda también los tengo que resolver (creo que están más fáciles).

Saludos a todos y nuevamente muchísimas gracias por la ayuda que me han dado.

Attn.: Chris

José Luis Garcí 12-08-2011 07:52:21

Chris, para tú información. vivo en las islas afortunadas, para ser exacto en las islas Canarias, que pertenecen a España, para ser más exacto en Gran Canaria en la población de Teror, municipio del interior, donde se encuentra la patrona de mi isla, La Virgen del Pino http://www.corazones.org/maria/pino_nra_senora.htm

DarKraZY 12-08-2011 08:46:25

Hola!
He realizado una pequeña prueba. Y antes de nada, he de decir que la impresión visual es muy satisfactoria. Probaré dentro un rato con el nuevo ejecutable.

Aquí algunas mejoras o problemas que me he encontrado:
  • Más opciones de instalación
  • No sale el icono de la aplicación, sino el genérico de Windows, en el escritorio
  • El fichero de excepciones *.elf se guarda en el escritorio
  • No está preparado para multi-monitor, tengo 2, y la ventana de usuarios sale entre ambos.
  • Al dar de alta el usuario, sale una nueva ventana, pero no se oculta la anterior.
  • Ortografía: ficha de alta del nuevo Paciente: cédula, envío

Saludos

José Luis Garcí 12-08-2011 09:05:26

Chirs, ahora que he solucionado el problema con mi base de datos de la empresa, te pongo el código de búsqueda que tengo (más que seguro que tu también lo conoces) e imágenes para expresar mejor lo que hablaba de las búsquedas.

Código
Código Delphi [-]
procedure TFcontactos.Button2Click(Sender: TObject);
//------------------------------------------------------------------------------
//***********************************************[ REALIZAR LA BUSQUEDA ]*******
//------------------------------------------------------------------------------
begin
  if Edit1.Text<>'' then
  begin
    if CheckBox1.Checked=false then
    begin       //Mejor busqueda pero no admite acentos
      IBDContactos.Active:=False;
      IBDContactos.SelectSQL.Clear;
      IBDContactos.SelectSQL.Add('select * from CONTACTOS WHERE UPPER (EMPRESA) LIKE '+QuotedStr('%'+UpperCase(Edit1.Text)+'%'));
      IBDContactos.Active:=True;
    end else
    begin         //Busque ignorando los acentos
      IBDContactos.Locate(RemoveAcentos(UpperCase('EMPRESA')),
                          RemoveAcentos(UpperCase(edit1.Text)),
                          [ loCaseInsensitive,loPartialKey]);
    end;
  end;
end;

imagen de la base sin búsqueda


Segunda imagen ya buscando


y Tercera imagen


Como te comentaba, según realiza la búsqueda, sólo van quedando los que coinciden, es verdad que si pones búsqueda sin acentos (se que tengo que corregir el acento de búsqueda), ya no se habilita esta opción, pues aún no he descubierto la manera de hacerlo, pero aún así se ira posicionando en el registro según la búsqueda.

Por cierto RemoveAcentos es una función que me baje de un foro de delphi brasileño, si hace falta pongo la función.

Neftali [Germán.Estévez] 12-08-2011 09:22:22

Cita:

Empezado por Chris (Mensaje 409277)
La solución:
He cambiado el código que genera la anterior cadena JSON para devuelva los decimales utilizando punto (.) para separar el decimal del entero. El ejecutable reparado puede descargarse desde esta dirección: http://dl.dropbox.com/u/11734896/biolab_ejecutable.exe

Hola Chris.
He bajado esa versión del EXE (1.0.1.703) y sigue teniendo el mismo problema con las órdenes. Al seleccionar el examen, PETA.

Neftali [Germán.Estévez] 12-08-2011 09:23:47

Cita:

Empezado por Chris (Mensaje 409233)
Lo que sucede es que la base de datos no se crea con la instalación. Biolab la crea en su primera ejecución. La base de datos persiste a menos que la borres manualmente. La base de datos está en: %DOCUMENTOS_PUBLICOS%\biolab\database.fdb

Lo se, lo se. Y hubiera jurado que la había borrado manualmente. :confused::confused:
Debe ser que me equivoqué. :(

Chris 12-08-2011 16:18:18

Cita:

Empezado por DarKraZY (Mensaje 409284)
Hola!
He realizado una pequeña prueba. Y antes de nada, he de decir que la impresión visual es muy satisfactoria. Probaré dentro un rato con el nuevo ejecutable.

Aquí algunas mejoras o problemas que me he encontrado:
  • Más opciones de instalación
  • No sale el icono de la aplicación, sino el genérico de Windows, en el escritorio
  • El fichero de excepciones *.elf se guarda en el escritorio
  • No está preparado para multi-monitor, tengo 2, y la ventana de usuarios sale entre ambos.
  • Al dar de alta el usuario, sale una nueva ventana, pero no se oculta la anterior.
  • Ortografía: ficha de alta del nuevo Paciente: cédula, envío

Saludos

Gracias DarKrazy por tu observaciones. El problema del icono no sé lo que ha pasado aún. Tendré que revisar más en detalle el ejecutable. Nunca lo había probado en un sistema con más de un monitor, así que realmente me "agarras movido". Veré que puedo hacer en este caso. Gracías por las observaciones ortográficas, le daré una nueva revisada a la interfaz para encontrar estos problemas.

Con respecto a las opciones de instalación, lo hecho así porque tengo en consideración que mi público objetivo tiene pocos conocimientos técnicos. Es por esa razón que he reducido al máximo los pasos de la instalación. No entendí a lo que te refieres con: "Al dar de alta el usuario, sale una nueva ventana, pero no se oculta la anterior." Me podrías explicar mejor?

Por último, si se te creo un archivo .elf (no debió ser en el escritorio) me lo podrías enviar compañero? Es para darle análisis y reparar los problemas que aparezcan en el informe.

Saludos,
Chris

Chris 12-08-2011 16:33:15

José, gracias por compartir tu experiencia conmigo. La búsqueda en Biolab funciona más o menos a cómo lo estás haciendo tú. Pero solo con SQL, no con Locate. En el código que compartiste:
Código Delphi [-]
IBDContactos.Locate(RemoveAcentos(UpperCase('EMPRESA')),
                          RemoveAcentos(UpperCase(edit1.Text)),
                          [ loCaseInsensitive,loPartialKey]);
Tienes dos problemas, uno de ellos es que no estás quitando los acentos al valor del campo, sino a una cadena constante ('EMPRESA'). Lo que estás haciendo es solo quitarle los acentos al al nombre del campo "EMPRESA". En tu caso creo que Locate no te sirve, talvez un código así te puede ayudar mejor:
Código Delphi [-]
begin
    if Edit1.Text<>'' then
    begin
        if CheckBox1.Checked=false then
        begin       //Mejor busqueda pero no admite acentos
              IBDContactos.Active:=False;
              IBDContactos.SelectSQL.Clear;
              IBDContactos.SelectSQL.Add('select * from CONTACTOS WHERE UPPER (EMPRESA) LIKE '+QuotedStr('%'+UpperCase(Edit1.Text)+'%'));
              IBDContactos.Active:=True;
        end
        else
        with IBDContactos do //Busque ignorando los acentos
        try
            DisableControls;
            First;
               
            while not Eof do
                if AnsiPos(RemoveAcentos(AnsiLowerCase(edit1.Text))
                           RemoveAcentos(AnsiLowerCase(FieldByName('empresa').AsString))) then
                    Break
                else
                    Next;                
        finally
            EnableControls;
        end;
end;

Saludos,
Chris

Chris 12-08-2011 16:36:18

Cita:

Empezado por Neftali (Mensaje 409288)
Hola Chris.
He bajado esa versión del EXE (1.0.1.703) y sigue teniendo el mismo problema con las órdenes. Al seleccionar el examen, PETA.

PETA? :confused: No entendí :(.

Neftalí, podrías decirme que localización estás utilizando?

Gracias amigo!

Saludos,
Chris

Neftali [Germán.Estévez] 12-08-2011 17:26:04

Cita:

Empezado por Chris (Mensaje 409327)
Neftalí, podrías decirme que localización estás utilizando?

Si te refieres a la configuración regional; es esta:


José Luis Garcí 12-08-2011 17:50:27

Chris, te aseguro que el Locate funciona, claro que sólo por el Campo Empresa, pero, es por el mismo que hago la búsqueda en SQL, lo que quería decirte es que en tu caso escribes la cadena y luego buscas en mi caso el botón lo activo por su evento y desde el edit en el OnChage, donde le hago una llamada, de esta manera, según escribe el usuario va reduciendo el número de registro muy probablemente al que busca únicamente.

Chris 12-08-2011 18:22:52

Cita:

Empezado por Neftali (Mensaje 409288)
Hola Chris.
He bajado esa versión del EXE (1.0.1.703) y sigue teniendo el mismo problema con las órdenes. Al seleccionar el examen, PETA.

Confirmado! Estaba ya mariado y desvelado de tanto código :p. Subí por error copia del ejecutable con el problema y no el que ya lo tiene corregido. Lamentablemente no tengo a mano la nueva versión. Ahora que llegué a mi casa, repararé los otros problemas que me comentaste Neftalí y volveré a subir el nuevo ejecutable.

Saludos,
Chris

ecfisa 12-08-2011 19:09:31

Hola Chris.

Te paso otra posibilidad para las busquedas extendidas.
Me hice una función para componer la consulta, no digo con esto que sea inventiva mía, de algún lado seguramente habré sacado la idea ...
Código Delphi [-]
function ComponerConsulta(Tabla, Criterio, Texto: string; Inx: Integer): string;
begin
  Result:= 'SELECT * FROM ' + Tabla + ' WHERE ' + Criterio;
  case Inx of
    0:Result:= Result + ' LIKE ' + QuotedStr(Texto + '%'); // Comienza
    1:Result:= Result + ' CONTAINING ' + QuotedStr(Texto); // Contiene
    2:Result:= Result + ' = ' + QuotedStr(Texto);          // Coincide
    3:Result:= Result + ' LIKE ' + QuotedStr('%' + Texto); // Termina
    4:Result:= 'SELECT * FROM ' + Tabla;                   // Ver todo
  end;
  Result:= Result + ' ORDER BY ' + Criterio;
end;
Luego, como ejemplo, podés usar un ComboBox para el criterio (por nombre, direccion, teléfono, documento,...), un Edit para ingresar el texto buscado y un RadioGroup para el tipo de coincidencia (comienza con, contiene a, coincide con, termina con y restaurar). El resultado de la seleccíon lo podes mostrar en un DBGrid para ampliar más las opciones.
Si aún así no encuentra al paciente; el que está frente al monitor es un neardental... :D
La confección de la consulta no ofrece inseguridad alguna por que es de uso interno de la aplicación. Y la degradación de la performance es mínima ya que la búsqueda no es incremental y sólo se usa cuando existen problemas para individualizar un paciente (aunque puede aplicarse a cualquier tabla).

Quizá ya se te haya ocurrido y lo hayas descartado por no adecuarse al proyecto, pero bueno te hacerco la idea con la esperanza de que te sea de utilidad.

Un saludo.:)

Edito: No pongo imágenes de mis pantallas por que son espantosas. Además no estamos en el foro 'Humor' y no quiero que nadie se ría...:p

José Luis Garcí 13-08-2011 08:40:29

ecfisa, eso no vale yo pongo mis pantallas, que son horribles y tú no pones tus tablas, que pasa aqui tenemos derecho a reirnos todos :D:D:D:D:D. Ahora en serio, dudo que sean espantosas, por tu manera de responder y la ayuda que brindas, dudo mucho que sean espantosas ni las pantallas ni las tablas.

Chris 16-08-2011 19:20:12

Antes que todo, ecfisa quiero darte las gracias por el código que me has brindado. Aunque creo que lamentablemente ya estoy un poco tarde para implementarlo en el sistema. Lo que sí he implementado de tí es la utilización de caracteres comodines, a cómo me sugeriste. Ahora, el carácter * es reemplazado por % en el código SQL de búsqueda.

Me he es grato compartir con ustedes una nueva versión de Biolab, la construcción 706. Esta nueva versión corrige la mayoría de problemas que voluntariamente me han ayudado a encontrar. Les dejo el enlace para que puedan descargar y nuevamente probarla si no es mucha molestia :)

http://dl.dropbox.com/u/11734896/biolab_b706.exe

Nuevamente, muchas gracias a todos ustedes compañeros! Les debo una! :)

Saludos,
Chris

gluglu 16-08-2011 20:10:14

Hola Chris,

Sólo comentarte que he estado siguiendo un poco este hilo aunque no instalé tu aplicación en ningún momento.

Ahora quise instalarla con el último ejecutable que indicas, y no tengo manera, ni me crea la base de datos, ni sé donde instalar el ejecutable, y tampoco sé si el EXE que ofreces incluye 'instalador' o no, o como decías anteriormente, el mismo EXE es el que te crea la BBDD, que en mi caso no veo donde.

Tengo XP y FB 2.1 instalados.

Chris 16-08-2011 22:07:44

Gracis gluglu por tu interés. Lo que sucede es que primero tendrás que hacer la instalación con el instalar que previamente había compartido. Puedes descargarlo de http://dl.dropbox.com/u/11734896/biolab.exe
Cuando termines el proceso de instalación, tendrás que reemplazar el ejecutable principal, llamado "biolab.exe" por la última versión que he subido (http://dl.dropbox.com/u/11734896/biolab_b706.exe).

Por último, lamentablemente Biolab no te funcionará si tienes instalada la versión 2.1 de Firebird. Cualquier inconveniente que tengas, no dudes en comentarmelo.

Saludos,
Chris

gluglu 17-08-2011 08:48:26

Hola Chris,

Eso intenté exactamente. Primero me descargué el Exe que ocupa más espacio porque supuse que tenía algún instalador adicional tal y como se comentaba en anteriores post's de este hilo, y después me disponía a instalar la última versión del Exe.

Pero no me ha funcionado tampoco así. El instalador no me crea ningún directorio ni ninguna base de datos.

En cualquier caso, según se comentaba también en el hilo, a pesar de tener instalada la versión 2.1 de FB, al utilizar en tu programa la versión embedida, creo recordar que se podía trabajar con ambos.

En estos momentos, de pleno desarrollo particular, no puedo desinstalar la versión 2.1 FB de mi ordenador. :o

Saludos

ecfisa 17-08-2011 09:37:13

Hola Chris.

Probando la nueva versión...:)

Ninguno de los problemas anteriores se presentó, y la busqueda anda de diez.

Pero tuve un problema en Tomando una nueva órden:
Cita:

The application has encountered a problem.We
are sorry for the inconvenience.
TodoExams: Cannot perform this operation on a close dataset.
Los pasos que realizé hasta obtenerlo fueron:
Cita:

Tomar orden -> Seleccionar paciente -> Busque un paciente -> Agregar paciente -> (llenar datos paciente),btn Agregar paciente -> Doctor -> Agregar exámen -> Serología -> Proteina C reactiva -> Agregar exámen -> Tomar orden.
Si Aceptas el error -> Tomar órden: queda (lista para entregar).
Te adjunto bioelog.elf y el report error que copié al portapapeles como ErrorBioLab_b706.txt dentro de Errores.zip, por si te sirven de ayuda.

Un saludo.


La franja horaria es GMT +2. Ahora son las 22:32:45.

Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2026, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi