none
Mandar informe a una hora determinada RRS feed

  • Pregunta

  • Necesito desarrollar una funcion que mande un informe de cierre de ventas a las 18:00 hrs

    Me gustaria ver si es posible sin usar el timer

     
    Hora_envio = Format(Now, "hh:mm")
    If Hora_envio = "18:00" Then
    DoCmd.SendObject acSendReport, "Cierre diario", acFormatXLS, "x@x.com", , , "Cierre diario", , "Informe de Cierre diario", False
    End If


    Luis Carlos Lugo

    miércoles, 29 de enero de 2014 1:08

Todas las respuestas

  • Hola

    Tendrás que comprobar de alguna manera cuando es la hora de cierre ¿no? y para ello necesitarás hacer la comprobación cada x tiempo.  El evento Timer te permitiría hacer esa comprobación. Pero yo más que comprobar un literal, comprobaría que la hora del sistema es mayor o igual a las 18:00 usando un valor doble. 

        Dim dHora As Double
        dHora = TimeSerial(Hour(Now), Minute(Now), Second(Now))
        Debug.Print dHora
        If dHora >= 75 Then
            DoCmd.SendObject acSendReport, "Cierre diario", acFormatXLS, "x@x.com", , , "Cierre diario", , "Informe de Cierre diario", False
        End If
    

    Puedes poner un intervalo de cronómetro de 60000 (cada minuto), por ejemplo.

    Espero te sirva.

    Salu2,




    José Mª Fueyo [MS MVP Access]

    miércoles, 29 de enero de 2014 12:42
  • Hola,

    A modo de idea, otra opción es crear un ejecutable de línea de comandos que envíe el informe y utilizar las tareas programadas de Windows para que lancen ese ejecutable a las 18:00.

    Un saludo

    miércoles, 29 de enero de 2014 15:20