× Linguagem de Programação ADVPL

Perguntas Erro na customização Workflow

Mais
11 anos 1 semana atrás #19955 por marcioibia
Estou com um problema na implementação do Workflow de geração de cotação.
Erro:

THREAD ERROR (dpti01) 09/01/2014 10:29:40

invalid class SENDMAIL on U_MT130WF(MT130WF.PRW) 09/01/2014 10:28:48 line : 229

Parte do Fonte que esta dando erro:

oMail := SendMail():new()
oMail:SetTo(_cEmlFor)
oMail:SetFrom(Alltrim(GetMv("MV_RELFROM",," ")))
// oMail:SetSubject('Aviso - '+cAviso)
oMail:SetSubject('Solicitação de Cotação de Preços - '+cNameEmp)
oMail:SetBody(xHTM)
oMail:SetEchoMsg(.f.)
if oMail:Send()
//ok (opc)
else
//erro (opc)
endif

oProcess:Track('1001',"Enviando o e-mail para o fornecedor: "+Trim(WAFORNEC->A2_NOME),SubStr(cUsuario,7,15))
WFSendMail()

Por favor Acessar ou Registrar para participar da conversa.

Mais
11 anos 1 semana atrás #19982 por Rone
Respondido por Rone no tópico Erro na customização Workflow
Marcio estou com problema nessa configuração também, porem meu erro é outro.
Alguém que saiba configurar esta rotina poderia fazer um vídeo ensinando a configurar. (SUGESTÃO)

Abç.

Por favor Acessar ou Registrar para participar da conversa.

Mais
11 anos 1 semana atrás #20032 por marcioibia
Respondido por marcioibia no tópico Erro na customização Workflow
Qual e o erro? você tem o fonte do Workflow. Porque o meu aqui da esse erro mais envia normal. precisava arrumar esse erro se alguém poder ajudar.

Por favor Acessar ou Registrar para participar da conversa.

Mais
11 anos 5 dias atrás #20168 por dexter
Respondido por dexter no tópico Erro na customização Workflow
Veja se isto ajuda vcs 2.


O método SendMail é obsoleto a partir de builds superiores a 7.00.101202A. Para envio de mensagens via SMTP, crie uuma instância de mensagem usando a classe tMailMessage, e utilize o método Send() da mensagem. Para mais informações, consulte a documentação da classe tMailMessage .



Exemplo Simples
User Function mail008()
  Local oMail := tMailManager():New()
  Local nRet := 0
  oMail:Init( "", EMAIL_SMTPSERVER, EMAIL_ACCOUNT, EMAIL_PASSWORD )
  nret := oMail:SetSMTPTimeout( 60 ) //1 min
  If nRet == 0
    conout( "SetSMTPTimeout Successful" )
  Else
    conout( nret )
    conout( oMail:GetErrorString( nret ) )
  Endif
  nret := oMail:SMTPConnect()
  If nRet == 0
    conout( "Connect Successful" )
  Else
    conout( nret )
    conout( oMail:GetErrorString( nret ) )
  Endif
  nRet := oMail:SendMail( "usuario1@provedor.com.br", ;
                          "usuario2@provedor.com.br", ;
                          "SUBJECT", ;
                          "BODY", ;
                          "", ;
                          "", ;
                          {}, ;
                          0 )
  If nRet == 0
    conout( "SendMail Successful" )
  Else
    conout( nret )
    conout( oMail:GetErrorString( nret ) )
  Endif
  nRet := oMail:SmtpDisconnect()
  If nRet == 0
    conout( "Disconnect Successful" )
  Else
    conout( nret )
    conout( oMail:GetErrorString( nret ) )
  Endif
return





Exemplo Complexo
#include "TOTVS.CH"
 
user Function EMail()
  Local oServer
  Local oMessage
  Local nNumMsg := 0
  Local nTam    := 0
  Local nI      := 0
   
  //Cria a conexão com o server STMP ( Envio de e-mail )
  oServer := tMailManager():New()
  oServer:Init( "", "smtp.microsiga.com.br", "ricardo.reis", "rica4758", 0, 25 )
   
  //seta um tempo de time out com servidor de 1min
  If oServer:SetSmtpTimeOut( 60 ) != 0
    Conout( "Falha ao setar o time out" )
    Return .F.
  EndIf
   
  //realiza a conexão SMTP
  If oServer:SmtpConnect() != 0
    Conout( "Falha ao conectar" )
    Return .F.
  EndIf
   
  //Apos a conexão, cria o objeto da mensagem
  oMessage := tMailMessage():New()
   
  //Limpa o objeto
  oMessage:Clear()
   
  //Popula com os dados de envio
  oMessage:cFrom              := "Microsiga "
  oMessage:cTo                := "microsiga@microsiga.com.br;microsiga@microsiga.com.br"
  oMessage:cCc                := "microsiga@microsiga.com.br"
  oMessage:cBcc               := "microsiga@microsiga.com.br"
  oMessage:cSubject              := "Teste de Email"
  oMessage:cBody              := "Conteudo do e-mail"
   
  //Adiciona um attach
  If oMessage:AttachFile( "arquivo.txt" ) < 0
    Conout( "Erro ao atachar o arquivo" )
    Return .F.
  Else
    //adiciona uma tag informando que é um attach e o nome do arq
    oMessage:AddAtthTag( 'Content-Disposition: attachment; filename=arquivo.txt')
  EndIf
   
  //Envia o e-mail
  If oMessage:Send( oServer ) != 0
    Conout( "Erro ao enviar o e-mail" )
    Return .F.
  EndIf
   
  //Desconecta do servidor
  If oServer:SmtpDisconnect() != 0
    Conout( "Erro ao disconectar do servidor SMTP" )
    Return .F.
  EndIf
   
  //Cria uma nova conexão, agora de POP
  oServer := tMailManager():New()
  oServer:Init( "pop3.microsiga.com.br", "", "SeunomeAntesDo@", "senhaDoEmail", 0, 110 )
  If oServer:SetPopTimeOut( 60 ) != 0
    Conout( "Falha ao setar o time out" )
    Return .F.
  EndIf
 
  If oServer:PopConnect() != 0
    Conout( "Falha ao conectar" )
    Return .F.
  EndIf
   
  //Recebe o número de mensagens do servidor
  oServer:GetNumMsgs( @nNumMsg )
  nTam := nNumMsg
  For nI := 1 To nTam
    //Limpa o objeto da mensagem
    oMessage:Clear()
     
    //Recebe a mensagem do servidor
    oMessage:Receive( oServer, nI )
     
    //Escreve no server os dados do e-mail recebido
    Conout( oMessage:cFrom )
    Conout( oMessage:cTo )
    Conout( oMessage:cCc )
    Conout( oMessage:cSubject )
    Conout( oMessage:cBody )
  Next
   
  //Deleta todas as mensagens do servidor
  For nI := 1 To nTam
    oServer:DeleteMsg( nI )
  Next
   
  //Desconecta do servidor POP
  oServer:POPDisconnect()
Return .T.




Mais informações
Informações 1

Informações 2

Por favor Acessar ou Registrar para participar da conversa.

Tempo para a criação da página:0.091 segundos
Joomla templates by a4joomla