Prezados, Bom dia!
Alguém pode me ajudar como faço para alterar a hora de envio de o relatório utilizado o drive SendMail?
Como alterar a hora de envio do E-mail usando o drive SendMail
Bom dia Joedson! Tudo bem?
Não entendi a sua dúvida. Poderia explicar melhor o que você quer fazer?
Temos um relatório onde ele é enviado todos os dias às 00:00:00, porém
foi solicitado que esse envio fosse as 07:20:00. Dei uma olhada no script
e pedi o auxílio de alguns colegas, dentro da pasta de dados tem uma tag
chamada dia, quena propriedade falaram para mudar o horário, quando
fiz isso o relatório parou de ser enviado.
Poderia enviar um print da configuração desse Tag e do script que envia o Relatório?
Sub Dia_OnPreset()
Dim dia, mes, ano, hora, minuto
Instrumento61 = Array(“TT01”,“TT02”)
For i = 0 To UBound(Instrumento61)
If Fix(Parent.Parent.Item(“Unidade61”).Item(“Instrumentos”).Item(Instrumento61(i)).ProximaCalibracao - now) <= 30 Then
Parent.Parent.Item(“Unidade61”).Item(“Instrumentos”).Item(Instrumento61(i)).AlertaCalibracao = True
Else
Parent.Parent.Item(“Unidade61”).Item(“Instrumentos”).Item(Instrumento61(i)).AlertaCalibracao = False
End If
Next
Instrumento63 = Array(“BL01”,“BL02”,“BL03”,“BL04”,“BLCONF”,“TT01”)
For i = 0 To UBound(Instrumento63)
If Fix(Parent.Parent.Item(“Unidade63”).Item(“Instrumentos”).Item(Instrumento63(i)).ProximaCalibracao - now) <= 30 Then
Parent.Parent.Item(“Unidade63”).Item(“Instrumentos”).Item(Instrumento63(i)).AlertaCalibracao = True
Else
Parent.Parent.Item(“Unidade63”).Item(“Instrumentos”).Item(Instrumento63(i)).AlertaCalibracao = False
End If
Next
'Envio de relatório por email
'TotDia está atualizado pois este evento é 2s após o evento de ‘CincoMinutos’
Parent.Parent.Item(“SendEmail”).Item(“TagsReportFooter”).Item(“TotalTurnoT”).Value = Parent.Parent.Item(“Unidade61”).Item(“TotDia”).Value + Parent.Parent.Item(“Unidade63”).Item(“TotDia”).Value - Parent.Parent.Item(“SendEmail”).Item(“TagsReportFooter”).Item(“TotalTurnoN”).Value - Parent.Parent.Item(“SendEmail”).Item(“TagsReportFooter”).Item(“TotalTurnoM”).Value
Application.GetObject(“Dados.Unidade61.TotMes”).Value = Application.GetObject(“Dados.Unidade61.TotMes”).Value + Application.GetObject(“Dados.Unidade61.TotDia”).Value
Application.GetObject(“Dados.Unidade63.TotMes”).Value = Application.GetObject(“Dados.Unidade63.TotMes”).Value + Application.GetObject(“Dados.Unidade63.TotDia”).Value
'Parent.Parent.Item(“Unidade61”).Item(“TotMes”).Value = Parent.Parent.Item(“Unidade61”).Item(“TotMes”).Value + Parent.Parent.Item(“Unidade61”).Item(“TotDia”).Value
'Parent.Parent.Item(“Unidade63”).Item(“TotMes”).Value = Parent.Parent.Item(“Unidade63”).Item(“TotMes”).Value + Parent.Parent.Item(“Unidade63”).Item(“TotDia”).Value
Parent.Parent.Item(“Ensaque”).Item(“Status”).Value = “Inicio Dia”
Application.GetObject(“Ensaque”).WriteRecord()
DataIni = now - 1
DataFim = now
Set Report = Application.LoadReport(“Relatorio_Email”)
Report.Item(“Consulta1”).SetVariableValue “DataInicial”, DataIni
Report.Item(“Consulta1”).SetVariableValue “DataFinal”, DataFim
dia = Day(Date)
mes = Month(Date)
ano = Year(Date)
hora = Hour(Time)
minuto = Minute(Time)
Report.Export “PDF”,“C:\APLICAÇÃO ELIPSE E3\Timac\RelatoriosProducao”&“Produção” &"" &dia &"-" &mes &"-" &ano &".pdf"
Report.Export “Excel”,“C:\APLICAÇÃO ELIPSE E3\Timac\RelatoriosProducao”&“Produção” &"" &dia &"-" &mes &"-" &ano &".xls"
'Set driver = Application.GetObject(“SendMail”)
'Set data = Application.GetObject(“Dados.SendEmail.ProducaoDiaria”)
Set driver = Application.GetObject(“SendMail”)
Set data = Parent.Parent.Item(“SendEmail”).Item(“ProducaoDiaria”)
data.Item(“tAttach”).Value = “C:\APLICAÇÃO ELIPSE E3\Timac\RelatoriosProducao”&“Produção” &"" &dia &"-" &mes &"-" &ano &".pdf|C:\APLICAÇÃO ELIPSE E3\Timac\RelatoriosProducao"&“Produção” &"" &dia &"-" &mes &"-" &ano &".xls"
driver.Item(“TagTo”).Value = data.Item(“tTo”).Value
driver.Item(“TagCc”).Value = data.Item(“tCc”).Value
driver.Item(“TagBcc”).Value = data.Item(“tBcc”).Value m
driver.Item(“TagSubj”).Value = data.Item(“tSubj”).Value 'Assunto p.e. Relatório de Produção Diária - Ensaque
driver.Item(“TagBody”).Value = data.Item(“tBody”).Value 'Texto do email p.e. Segue no anexo relatório diário de produção
driver.Item(“TagAttach”).Value = data.Item(“tAttach”).Value 'Caminho do anexo: p.e. “C:\CLP_ENSAQUE\RELATORIOS_E3” &“Produção” &"_" &dia &"-" &mes &"-" &ano &".pdf"
driver.Item(“TagSMTPUser”).value = data.Item(“tSMTPUser”).Value
driver.Item(“TagSMTPPass”).value = data.Item(“tSMTPPass”).Value
driver.Item(“TagName”).value = data.Item(“tName”).Value 'Texto para nome do remetente p.e. Supervisório Ensaque
driver.Item(“TagEmail”).value = data.Item(“tEmail”).Value
driver.Item(“TagSMTPSvrAddr”).value = data.Item(“tSMTPSvrAddr”)
driver.Item(“TagSMTPSvrPort”).value = data.Item(“tSMTPSvrPort”).Value 'Número da porta do servidor p.e. 465
driver.Item(“TagSend”).Value = data.Item(“tSend”).Value 'Define a prioridade do email p.e. 1 (alta)
Set filesys = CreateObject(“Scripting.FileSystemObject”)
Arquivo = “C:\APLICAÇÃO ELIPSE E3\Timac\RelatoriosProducao”&“Produção” &"" &dia &"-" &mes &"-" &ano &".pdf"
filesys.DeleteFile Arquivo
Arquivo = “C:\APLICAÇÃO ELIPSE E3\Timac\RelatoriosProducao”&“Produção” &"" &dia &"-" &mes &"-" &ano &".xls"
filesys.DeleteFile Arquivo
'Parent.Parent.Item(“Unidade61”).Item(“TotDia”).Value = 0
Parent.Parent.Item(“Unidade61”).Item(“TotDia”).Value =0
'Parent.Parent.Item(“Unidade63”).Item(“TotDia”).Value = 0
Parent.Parent.Item(“Unidade63”).Item(“TotDia”).Value = 0
End Sub
Foi feita mais alguma alteração na aplicação ou no computador?
não, somente o horário.
Podemos analisar o log do driver Sendmail. Para isso, habilite o log nas configurações do driver e envie para o meu e-mail o arquivo gerado após a execução do script “OnPreset” do tag Timer.
Muito obrigado pelo apoio, verificamos que de fato não estava sendo enviado os emails, comparando um script com outro, verificamos que havia uma letra errada, copiando o script correto novamente a alteração foi bem sucedida.