Vimos no artigo anterior como gerar o arquivo da NF-e compartilhada à partir do XML da NF-e assinada e do XML do protocolo de autorização da NF-e. Nesse artigo vamos demonstrar o uso do componente Indy do Delphi para enviar o arquivo da NF-e compartilhada via E-mail; complentando-se assim, o processo de compartilhamento da NF-e com o destinatário:
Vamos partir do código anterior e implementar os recursos de envio do e-mail para o destinatário. Nesse exemplo, fazemos uso do componente Indy também disponível nas distribuições do Delphi.
Adicione os seguintes componentes no seu programa: idSMTP e idMessage; em seguida escreva o código abaixo:
Código-fonte para comandar o envio do e-mail da NF-e compartilhada para o destinatário:
begin
// configura servidor smtp
idSMTP1.Host := 'smtp.empresaxyz.com.br';
idSMTP1.Username := 'controlenfe@empresaxyz.com.br';
idSMTP1.Password := 'xxxxxxxx';
// configurando mensagem
// e-mail da sua loja
idmessage1.ContentType := 'text/html';
idmessage1.from.address := 'controlenfe@empresazyz.com.br';
// e-mail destinatario
idmessage1.recipients.emailaddresses := 'contato@empresaxyz.com.br';
// Assunto (titulo E-mail)
idmessage1.subject := 'Empresa XYZ (Envio automático NF-e) '+DateTimeToStr(now);
// Corpo da Mensagem (use aqui um HTML ou texto que deseja enviar
// juntamente com a mensagem.
idmessage1.body.Add(
'Prezado Cliente,'+
'Obrigado por comprar na Empresa XYZ. Estamos encaminhando esse e-mail contendo'+
' em anexo, o arquivo eletrônico da sua Nota Fiscal de Compra; de acordo com '+
' o "Manual de Integração do Contribuinte" da Nota Fiscal Eletrônica. '+
'Sds,'+
'A administração!'+
'
'+
'PS. Caso tenha alguma dúvida favor entrar em contato conosco '+
'pelos fones: xx xxx xxxxx ou E-mail: xxxxxx@xxxxx.xx.x'+
';
'+
'<strong>Favor não responder!</strong>. Esse e-mail foi enviado automáticamente pelo'+
' nosso servidor após registro da autorização de uso da NF-e para a vossa '+
'Empresa.'
);
// ou carregue uma mensagem pré-definida em um arquivo
//idmessage1.Body.LoadFromFile('mensageNFe_destinatario.html');
// anexa o XML da NFe compartillhada no e-mail
TIdAttachment.create(idmessage1.MessageParts,
TFileName('c:\nfe_arquivos\compartilhadas\procNFE.xml'));
// conecta com o servidor SMTP
idSMTP1.connect;
try
// Envia o e-mail
idSMTP1.send(idmessage1);
finally
idSMTP1.Disconnect;
end;
end;
Com isso concluímos o artigo sobre a Nota Fiscal Eletrônica Compartilhada, na primeira parte (parte I) geramos o arquivo da NF-e compartilhada à partir dos arquivos XML da NF-e assinada e do XML do recibo de autorização da NF-e. Nesse ultimo artigo vimos como enviar esse arquivo via e-mail para o destinatário.
Espero que essas informações sejam úteis para vcs e que eliminem com isso, algumas horas de pesquisa e trabalho.