Ir para conteúdo
Fórum Script Brasil
  • 0

Lotus Notes Automático Para Atrasos


FIFT

Pergunta

Srs,

Eu preciso varrer minha Database chamada "Dados de Equipamentos" e mandar um Lotus Notes para todos que tiverem equipamentos em atraso. Eu criei o Seguinte código:

Option Compare Database

'Enviar email
Sub Enviar_email(ByVal lEndereco As String, ByVal lEquip As String)
    Dim Maildb As Object
    Dim MailDoc As Object
    Dim Body As Object
    Dim Session As Object
    Set Session = CreateObject("Lotus.NotesSession")
    Call Session.Initialize
    Set Maildb = Session.GETDATABASE("", "c:\notes\data\mail\mymail.nsf")
    If Not Maildb.IsOpen = True Then
        Call Maildb.Open
    End If
    'Create the mail document
    Set MailDoc = Maildb.CREATEDOCUMENT
    Call MailDoc.ReplaceItemValue("Form", "Memo")
    'Set the recipient
    Call MailDoc.ReplaceItemValue("SendTo", lEndereco)
    'Set subject
    Call MailDoc.ReplaceItemValue("Subject", "Equipamento em Atraso")

    Set Body = MailDoc.CREATERICHTEXTITEM("A Devolução do Equipamento " & lEquip & " está em atraso, por favor verifique.")
    Call Body.APPENDTEXT("Body text here")
    MailDoc.SAVEMESSAGEONSEND = True
    Call MailDoc.ReplaceItemValue("PostedDate", Now())
    Call MailDoc.SEND(False)
    Set Maildb = Nothing
    Set MailDoc = Nothing
    Set Body = Nothing
    Set Session = Nothing
End Sub

'Enviar emails das pendências
Sub lsEnviarAtrasos()
    Dim iTotalLinhas    As Long
    Dim i               As Long
    Dim lHoje           As Date

    Me.Select
    Cells(1, 1).Select

    iTotalLinhas = Cells(Rows.Count, 1).End(xlUp).Row

    i = 1

    While i <= iTotalLinhas
        If Cells(i, 6).Value <= Data() Then
            Enviar_email Cells(i, 12).Value, Cells(i, 2).Value
        End If
        i = i + 1
    Wend
End Sub

'Enviar emails e fechar aplicação
Sub lsValidaEnvio()
    If MsgBox("Deseja verificar as pendências e enviar por email?", vbYesNo, "5W2H") = vbYes Then
        lsEnviarAtrasos
    End If
End Sub

O problema é que não consigo criar o método "lsEnviarAtrasos()", pois não consigo varrer a Database. Como posso fazer isso? Sendo que o destinatario esta na 16ª Coluna e o Nome do Equipamento está na 2ª Coluna.

Link para o comentário
Compartilhar em outros sites

4 respostass a esta questão

Posts Recomendados

  • 0

Sim eu peguei uma parte do excel de um amigo meu. Fiz algumas alterações, mas como não entendo muito de VBA, principalmente como trabalhar com a database, não ficou muito bom. Mesmo assim a lógica de enviar o Lotus Notes esta funcionando separadamente, preciso apenas fazer ele varrer o database e enviar o Notes para os atrasados.

Link para o comentário
Compartilhar em outros sites

  • 0

No access é diferente, você não varre assim, você envia uma consulta SQL pro banco, algo como SELECT destinatario, email, data FROM Emprestimo WHERE data < NOW e ele retorna pra você uma RecordSet(Lista de registros) que você varre um a um e envia o e-mail. Só que é complicado fazer a aplicação pra vc, o que podemos fazer aqui no forum é dar apoio em alguma dúvida ou coisa do tipo.

Na internet você acha bastante coisa de como fazer controle de estoque com access, acho que isso se aproxima mais ao seu problema, depois você adapta ele ao seu caso e implementa a parte de enviar e-mail automático pra quem estiver em atraso.

Link para o comentário
Compartilhar em outros sites

  • 0

Então na verdade todo o sistema já esta implementado e funcionando, só preciso descobrir um jeito de adicionar essa funcionalidade. Eu pensei em utilizar uma consulta que verifica quem está atrasado, mas não consigo enviar os e-mails apenas para os destinatarios que aprecem no resultado da consulta, por isso apelei pro VBA.

Editado por FIFT
Link para o comentário
Compartilhar em outros sites

Participe da discussão

Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.

Visitante
Responder esta pergunta...

×   Você colou conteúdo com formatação.   Remover formatação

  Apenas 75 emoticons são permitidos.

×   Seu link foi incorporado automaticamente.   Exibir como um link em vez disso

×   Seu conteúdo anterior foi restaurado.   Limpar Editor

×   Você não pode colar imagens diretamente. Carregar ou inserir imagens do URL.



  • Estatísticas dos Fóruns

    • Tópicos
      152,3k
    • Posts
      652,5k
×
×
  • Criar Novo...