Abrir Formulario solo una vez al día cuando abra la Base de Datos

Espero puedan ayudarme con lo siguiente. Como sabrán llevo ya un tiempo haciendo, desarrollando y ya casi concluyendo gracias a la ayuda de ustedes una BD en Acces..

Ahora sucede que en mi país el dólar fluctúa mucho. Por ello en los formularios de compras, venta, cotizaciones, etc; siempre debo colocar un campo con la tasa de cambio al momento de generar un registro. Lo que quiero es que cuando abra la BD por primera vez en el día. Y al abrir el formulario "Navegación" me envíe un mensaje pidiéndome actualizar la tasa de cambio y al decirle SI (al mensaje) me abra el formulario de la tasa de cambio que tiene solo dos campos ("Fecha"; "Valor"). Cargo la nueva tasa y la fecha y cierro. Pero que esto suceda solo una vez al día. Es decir, si vuelvo a cerrar la BD y la abro minutos o una hora más tarde ya no me aparezca el mensaje de actualización y solo me mande al formulario de navegación. O mejor aún. Solo me aparezca en la mañana y posterior a la 1Pm. Dado que este es el horario cuando la tasa de cambio sufre cambios en el mercado

2 Respuestas

Respuesta
1

Lo puedes hacer de muchas formas, lamentablemente cuando copio el código del formulario e intento copiarlo aquí no me deja, dice que ha ocurrido un error. Por eso, si quieres, repito, si quieres mándame un mensaje(sólo el mensaje) a [email protected] y te mando un ejemplo.

Si lo haces, en el asunto del mensaje pon tu alias Jose Mejias, ya que si no sé quien me escribe ni los abro.

Por cierto, estoy totalmente de acuerdo con Enrique que lo de las horas puede dar muchos problemas. Se puede hacer pero...

Gracias Julián González Cabarcos yEnrique Feijóo ambos tomados en cuenta, aplicaré la función If ten, sin embargo se presenta otro problema, Sucede que no estoy usando un formulario de navegación creado por mi, sino que; uso las fichas de Access y una serie de submacros porque está opción me permite tener muchas ventanas abiertas al mismo tiempo. Hice varios formulario de nevegacion ahpoyándome en el CONTROLADOR DE PESTAÑAS de formulario pero esto hace que al abrir un formulario me cierre o oculte los otros, es decir, no puedo tener varios formularios almimo tiempo. Entonces dicho esto; como hago para aplicar esta función if then para actualizar la taasa de cambio al abrir la base de datos. O si ustedes saben como puedo eliminar esa limitación de solo poder abrir un solo formulario al mismo tiempo y poder tener abierto y visible todos los que pueda mientras no sean modal claro está

José, poco puedo ayudarte. Verás, jamás he usado los tipos de formularios predefinidos que viene con Access, ya que eso te obliga a aceptar los caprichos que haya tenido el diseñador de Microsoft cuando los hizo. Prefiero, que un formulario haga lo que yo diga o quiera. Además, honestamente, pienso que son una puta mierda. Lo mismo que digo de los campos de datos adjuntos, calculados, hipervínculo y OLE. Si tu fueras diseñador de Microsoft, para justificar el sueldo y que no te echen te inventas un convertidor de pasos de yak tibetano a metros lineales. Va a su jefe, que para justificar lo mismo le dice que muy bien. Hasta que llega a dirección y piensan, esto es conveniente para justificar una versión nueva y así cobramos otra vez. La pregunta que surge es ¿Cuándo coño voy a usar ese convertidor? Pero ellos sacan la versión Office XX y te cobran por ello. El mejor Office que se hizo jamás fué el 2003. Lo que ha venido detrás son mierdas añadidas para justificar la nueva versión y así seguir cobrando.

Si quieres un formulario y que sobre él se vayan abriendo otros basta con decirles que se abran en vista diálogo. Y si quieres tener varios formularios "abiertos" basta con usar un control pestañas en un formulario. En fin, que hay muchas formas de hacerlo.

Es que yo no uso formularios predefinidos. Los he creado bajo los parámetros propios y según mis necesidades, pero al construir un formulario de navegación tipo panel de navegación me sucede que no importa lo que haga, solo me deja abrir un solo formulario por vez. Abro uno y me cierra el otro. En cambio , cuando creo fichas con Macros que creo se llaman;  Cinta de Opciones Ribbon.  O no se cómo se llamen, allí si me deja abrir todos los formularios a la vez y puedo tener por ejemplo; el formulario de ventas, vendedores y productos al mismo tiempo y verlos todos en la pantalla.  Pero como creo que no me explico bien. Lo que utilizo en lugar de un formulario de navegación es algo llamado. Y es allí donde no se o en qué evento de la base de datos poner el código. iF then para procesar y cargar los valores que quiero descritos en el primer mensaje.  Repito, allí con esa cinta se opciones Ribbon no tengo formulario de navegación Ergo No  tengo eventos al cargar formulario para añadir el codigo

Vamos a hacer una cosa, si quieres. Haz una copia de tu base sólo con ese formulario de navegación y me lo mandas a [email protected] y lo miro.

Si lo haces, en el asunto del mensaje pon tu alias José Mejías, ya que si no sé quien me escribe ni los abro.

Respuesta
1

Si lo que se necesita es que solo solicite una vez al día (la primera vez que se abra la aplicación), solo se necesita obtener la fecha más alta en la tabla (la función de dominio DMAX es adecuada).

A esta fecha se le suma una unidad (un día)

Se compara con la fecha del sistema y de la repuesta obtenida (igual, mayor, inferior) se renueva o se ignora la actualización.
Si la fecha se guarda con parte horaria, la hora puede suponer un problema (por madrugar o retrasarse).

1.- Obtener la fecha
2.- Sumarle una unidad
3.- Comparar con la fecha del sistema
4,.- Se cumple la condición ==> se renueva, no se cumple ==> se ignora (un IF Then ...) 

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas