Access - PopUp en red

 
Vista:

PopUp en red

Publicado por carlos (2 intervenciones) el 27/02/2008 23:30:41
Hola a todos, les planteo en primer lugar mi problema:

Hice una BD de consultas Veterinarias, en las que un módulo permite ir registrando los clientes que van llegando (Digamos que en la máquina 1), otro formulario es el expediente de cada mascota (Máquina 2, la que usa el veterinario).

Lo que necesito hacer es lo siguienete.

PROBLEMA:

En la máquina 1 tengo registrada la lista de espera, cuando le toque pasar a un paciente, por ejemplo apretaer un botón al lado de su nombre, y en ese momento, el expediente de ese cliente se abra en la máquina del veterinariom que vaya a dar la consulta.

PREGUNTA
Alguien sabe si existe un control que me permita hacer eso (Mandar la instruccion de que se abra un formulario en otro equipo dentro de la red), o conoce los objetos y/o métodos que me posibiliten esa cominucación?

Les agradeceré mucho sus comentarios

Carlos
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

RE:PopUp en red

Publicado por Enrique (1299 intervenciones) el 29/02/2008 14:23:32
Hola Carlos:
Tu pregunta es muy interesante y te puedo decir que lo que pides se puede hacer, pero no es fácil porque hay que coordinarlo todo muy bien para que no se produzcan confictos. Se necesita que en la mdb que está en la Red, haya una Tabla que ambas máquinas tengan vinculada, esa tabla podría ser la que contiene los datos de los clientes, a la que habría que añadirle una casilla de verificación (del tipo Sí / No ).

La aplicación que usa el veterinario (máquina 2) deberá tener un Formulario de Inicio (formulario que una vez abierta la aplicación, siempre permanece abierto y sobre él se abren los demas formularios e informes). Este formulario podría usar el Evento Form_Timer (Al cronómetro) para comprobar cada X segundos el estado de las casillas de verificación de los clientes y habría que conseguir que en el Formulario de la máquna1 (la tuya) desde la que vas a indicar que cliente se abrirá en la máquina2, solo se pueda activar una casilla al mismo tiempo y una vez conseguido esto, al activar en tu formulario (máquina1) la casilla de un cliente, el Evento Al crónometro de la máquina2 detecta una casilla activada y abre el formulario en esta máquina con el cliente elegido por ti en la máquina1.

Pero hay que tener en cuenta más cosas, por ejemplo que si el formulario de las fichas de clientes ya estuviera abierto en la máquina2, que no haga nada y que si el veterinario lo cierra, que se desactive la casilla del cliente para que el Evento Form_Timer no vuelva a abrirselo a los X segundos. Posiblemente habrá algo más que hacer que ahora se me escapa.

¿ Como andas en programación VBA ? porque si quieres hacer esto, te van a hacer falta ciertos conocimientos de código.

Bueno, esto es mi idea a grandes rasgos, si necesitas que te eche una mano, dímelo.

Un Saludo
Enrique
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:PopUp en red

Publicado por carlos (2 intervenciones) el 29/02/2008 19:44:02
Hola, de antemano te agradezco tus comentarios.

Me parece muy interesante la propuesta que mencionas de monitorear la tabla en busca del estado de la casilla de verificación. Sin embargo me parece que esta técnica es más adecuada cuando quieres "revisar en tiempo real" precisamente una lista de clientes de espera. Y en su caso "apurar" a la recepcionista a que se de atención a la lista de espera, me suena más a lo que hacen los Bancos, de que el cajero ve la lista, el turno que sigue y lo "toma"
(Esto que mencionas sin duda me piodrá servir para otro proyecto (específicamente el evento Timer, al cual no le había prestado mucha atención hasta ahora)

Precisando un poco más, necesito que la recepcionista aplique en el turno que sigue "un clic" y en ese momento me abra el expediente de la mascota con el médico que le asignaron.

Y sí, la el archivo que contiene los datos comunes está compartido en la red.

En bloques supongo que el asunto se resumiria asi:

1 - El módulo remoto (llamemosle así al equipo del medico) escribe en una tabla (tal vez una variable global) que se encuentra en espera.
2 - El módulo local (el de la recepcionista) verifica los remotos que están (revisando la tabla anterios o la Variable Global) disponibles (Esta lista alimenta un combo donde se selecciona el médico a asignar)
3 - La recepcionista asigna una mascota a un veterinario, aprieta "pasar (por ejemplo) y se abre el expediente con el veterinario
3.a - Solicitar a windows la lista de equipos en la red (Sirve para esto Winsock??)
3.b - Escribir en una tabla (u otro objeto) el nombre de las máquinas (En este paso cada máquina podria obtener el nombre o IP del equipo y escribirlo en la misma tabla de "banderas")
3.c - Establecer la conexión con los clientes de acuerdo a la tabla de banderas
(es evidente a este paso, que las BD están abiertas en los respectivos equipos)
3.d - Mandar la orden (servirá docmd ?) de que se abra el form del expediente.

conceptualmente no es muy complicado, el detalle es saber el nombre los objetos necesarios.

Por otra parte sí, manejo con la suficiente holgura VBA, así que serían bienvenidas tus sugerencias en este aspecto.

Saludos
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar