Problema con envio de correo
Publicado por Malyto (24 intervenciones) el 11/11/2016 13:24:32
Estimados, haber si me pueden ayudar con esto..
1.- Tengo un formulario con unos textbox donde elijo la fecha ( es un textbox al que le he puesto como Formato "Fecha Corta".
2.- Una vez seleccionada la fecha mediante un Boton ejecuto el codigo adjunto, el cual me permite visualizar unos informes que dependen de la fecha seleccionada y posteriormente enviarlos por correo automaticamente
3.- todo esto lo realiza correctamente, pero una vez que se ejecuta la accion y el foco vuelve al formulario, seme desactivan la opcion de seleccionar la fecha en el tetxbox, pudiendo solamente si escribo con el teclado la fecha.
4.- les comento que en ese mismol formulario tengo otros textbox con el formato fecha corta y estos tambie se bloquean.
5.- Probe comentando la linea que envia el correo ............... msgOne.Send y asi no seme bloquean estos textbox, pero obviamente no envia el correo.Alguien tendra idea que puede ser?
Aca el codigo, ojala me puedan ayudar:
1.- Tengo un formulario con unos textbox donde elijo la fecha ( es un textbox al que le he puesto como Formato "Fecha Corta".
2.- Una vez seleccionada la fecha mediante un Boton ejecuto el codigo adjunto, el cual me permite visualizar unos informes que dependen de la fecha seleccionada y posteriormente enviarlos por correo automaticamente
3.- todo esto lo realiza correctamente, pero una vez que se ejecuta la accion y el foco vuelve al formulario, seme desactivan la opcion de seleccionar la fecha en el tetxbox, pudiendo solamente si escribo con el teclado la fecha.
4.- les comento que en ese mismol formulario tengo otros textbox con el formato fecha corta y estos tambie se bloquean.
5.- Probe comentando la linea que envia el correo ............... msgOne.Send y asi no seme bloquean estos textbox, pero obviamente no envia el correo.Alguien tendra idea que puede ser?
Aca el codigo, ojala me puedan ayudar:
Private Sub btnInfoDiario_Click()
On Error GoTo 0
'Exportamos el informe a la carpeta donde está la BD en formato PDF
Dim ruta As String 'miInforme As String
ruta = Application.CurrentProject.Path & "\"
miInforme = ruta & "Informe.pdf"
miInforme1 = ruta & "Informe1.pdf"
txtDesFecha = txtFechaDesde
DoCmd.OpenReport "InfoPagosDiarios", acViewPreview, consPagosDiario, "(fechaPago = #" & Format(txtFechaDesde, "mm-dd-yyyy") & "#) and (" & "Doctor = 'zzzzzzzzzzzz' or Doctor = 'yyyyyyyyyy')", acWindowNormal
'DoCmd.OutputTo acOutputReport, "InfoPagosDiarios", acFormatPDF, miInforme, False
DoCmd.OpenReport "InfoPagosDiarios1", acViewPreview, consPagosDiario, "(fechaPago = #" & Format(txtFechaDesde, "mm-dd-yyyy") & "#) and (" & "Doctor <> 'yyyyyyyy' and Doctor <> 'zzzzzzzzzz')", acWindowNormal
'DoCmd.OutputTo acOutputReport, "InfoPagosDiarios1", acFormatPDF, miInforme1, False
'Aca enviamos el correo
'Definimos dos constantes, donde introduciremos la cuenta de correo, el password y el smtp
Const miMail As String = "[email protected]"
Const miPass As String = "password"
Const miSmtp As String = "smtp.googlemail.com"
'Definimos las variables
Dim elAsunto As String, elMsg As String
Dim mailA As String, mailCC As String, mailCCO As String
'Inicializamos las variables
elAsunto = "Informe Pago Diario Automatico " & Date
elMsg = " Este Correo es generado Automaticamente, cuando se genera un informe de PAGO DIARIO, por favor no responder este correo. "
mailA = "[email protected]"
'Configuramos el bloque CDO
Dim cdoConfig
Dim msgOne
Set cdoConfig = CreateObject("CDO.Configuration")
With cdoConfig.Fields
.Item("http://schemas.microsoft.com/cdo/configuration/sendusing") = 2
.Item("http://schemas.microsoft.com/cdo/configuration/smtpserverport") = 465
.Item("http://schemas.microsoft.com/cdo/configuration/smtpserver") = miSmtp
.Item("http://schemas.microsoft.com/cdo/configuration/sendusername") = miMail
.Item("http://schemas.microsoft.com/cdo/configuration/sendpassword") = miPass
.Item("http://schemas.microsoft.com/cdo/configuration/smtpusessl") = True
.Item("http://schemas.microsoft.com/cdo/configuration/smtpauthenticate") = 1
.Update
End With
'Configuramos el mensaje
Set msgOne = CreateObject("CDO.Message")
Set msgOne.Configuration = cdoConfig
msgOne.To = mailA
msgOne.CC = mailCC
msgOne.BCC = mailCCO
msgOne.From = miMail
msgOne.Subject = elAsunto
msgOne.TextBody = elMsg
'Configuramos el adjunto
Dim miAdjunto As String
miAdjunto = "file://" & miInforme
If Not IsMissing(miInforme) Then
msgOne.AddAttachment (miAdjunto)
End If
Dim miAdjunto1 As String
miAdjunto1 = "file://" & miInforme1
If Not IsMissing(miInforme1) Then
msgOne.AddAttachment (miAdjunto1)
End If
MsgBox "Se enviara el correo", vbInformation, "CORRECTO"
msgOne.Send ' esta linea bloquea los campos
'Avisamos de que el envío ha ido bien
MsgBox "Mensaje enviado con éxito", vbInformation, "CORRECTO"
'Eliminamos el informe de nuestra carpeta
Kill miInforme1
Kill miInforme
DoCmd.Close acReport, "InfoPagosDiarios", acSaveNo
DoCmd.Close acReport, "InfoPagosDiarios1", acSaveNo
'DoCmd.OpenReport "InfoPagosDiarios", acViewPreview, consPagosDiario, "(fechaPago = #" & Format(txtFechaDesde, "mm-dd-yyyy") & "#) and (" & "Doctor = 'zzzzzzzzzzzzi' or Doctor = 'Dr. xxxxxxxxx')", acDialog
'DoCmd.OpenReport "InfoPagosDiarios1", acViewPreview, consPagosDiario, "(fechaPago = #" & Format(txtFechaDesde, "mm-dd-yyyy") & "#) and (" & "Doctor <> 'zzzzzzzzzzz' and Doctor <> 'Dr. xxxxxxxxxxxxx')", acDialog
End Sub
On Error GoTo 0
'Exportamos el informe a la carpeta donde está la BD en formato PDF
Dim ruta As String 'miInforme As String
ruta = Application.CurrentProject.Path & "\"
miInforme = ruta & "Informe.pdf"
miInforme1 = ruta & "Informe1.pdf"
txtDesFecha = txtFechaDesde
DoCmd.OpenReport "InfoPagosDiarios", acViewPreview, consPagosDiario, "(fechaPago = #" & Format(txtFechaDesde, "mm-dd-yyyy") & "#) and (" & "Doctor = 'zzzzzzzzzzzz' or Doctor = 'yyyyyyyyyy')", acWindowNormal
'DoCmd.OutputTo acOutputReport, "InfoPagosDiarios", acFormatPDF, miInforme, False
DoCmd.OpenReport "InfoPagosDiarios1", acViewPreview, consPagosDiario, "(fechaPago = #" & Format(txtFechaDesde, "mm-dd-yyyy") & "#) and (" & "Doctor <> 'yyyyyyyy' and Doctor <> 'zzzzzzzzzz')", acWindowNormal
'DoCmd.OutputTo acOutputReport, "InfoPagosDiarios1", acFormatPDF, miInforme1, False
'Aca enviamos el correo
'Definimos dos constantes, donde introduciremos la cuenta de correo, el password y el smtp
Const miMail As String = "[email protected]"
Const miPass As String = "password"
Const miSmtp As String = "smtp.googlemail.com"
'Definimos las variables
Dim elAsunto As String, elMsg As String
Dim mailA As String, mailCC As String, mailCCO As String
'Inicializamos las variables
elAsunto = "Informe Pago Diario Automatico " & Date
elMsg = " Este Correo es generado Automaticamente, cuando se genera un informe de PAGO DIARIO, por favor no responder este correo. "
mailA = "[email protected]"
'Configuramos el bloque CDO
Dim cdoConfig
Dim msgOne
Set cdoConfig = CreateObject("CDO.Configuration")
With cdoConfig.Fields
.Item("http://schemas.microsoft.com/cdo/configuration/sendusing") = 2
.Item("http://schemas.microsoft.com/cdo/configuration/smtpserverport") = 465
.Item("http://schemas.microsoft.com/cdo/configuration/smtpserver") = miSmtp
.Item("http://schemas.microsoft.com/cdo/configuration/sendusername") = miMail
.Item("http://schemas.microsoft.com/cdo/configuration/sendpassword") = miPass
.Item("http://schemas.microsoft.com/cdo/configuration/smtpusessl") = True
.Item("http://schemas.microsoft.com/cdo/configuration/smtpauthenticate") = 1
.Update
End With
'Configuramos el mensaje
Set msgOne = CreateObject("CDO.Message")
Set msgOne.Configuration = cdoConfig
msgOne.To = mailA
msgOne.CC = mailCC
msgOne.BCC = mailCCO
msgOne.From = miMail
msgOne.Subject = elAsunto
msgOne.TextBody = elMsg
'Configuramos el adjunto
Dim miAdjunto As String
miAdjunto = "file://" & miInforme
If Not IsMissing(miInforme) Then
msgOne.AddAttachment (miAdjunto)
End If
Dim miAdjunto1 As String
miAdjunto1 = "file://" & miInforme1
If Not IsMissing(miInforme1) Then
msgOne.AddAttachment (miAdjunto1)
End If
MsgBox "Se enviara el correo", vbInformation, "CORRECTO"
msgOne.Send ' esta linea bloquea los campos
'Avisamos de que el envío ha ido bien
MsgBox "Mensaje enviado con éxito", vbInformation, "CORRECTO"
'Eliminamos el informe de nuestra carpeta
Kill miInforme1
Kill miInforme
DoCmd.Close acReport, "InfoPagosDiarios", acSaveNo
DoCmd.Close acReport, "InfoPagosDiarios1", acSaveNo
'DoCmd.OpenReport "InfoPagosDiarios", acViewPreview, consPagosDiario, "(fechaPago = #" & Format(txtFechaDesde, "mm-dd-yyyy") & "#) and (" & "Doctor = 'zzzzzzzzzzzzi' or Doctor = 'Dr. xxxxxxxxx')", acDialog
'DoCmd.OpenReport "InfoPagosDiarios1", acViewPreview, consPagosDiario, "(fechaPago = #" & Format(txtFechaDesde, "mm-dd-yyyy") & "#) and (" & "Doctor <> 'zzzzzzzzzzz' and Doctor <> 'Dr. xxxxxxxxxxxxx')", acDialog
End Sub
Valora esta pregunta


0