Ir para conteúdo
  • Cadastre-se

dev botao
  • Este tópico foi criado há 3781 dias atrás.
  • Talvez seja melhor você criar um NOVO TÓPICO do que postar uma resposta aqui.

Recommended Posts

Postado

Senhores, bom dia. Baixei a nova versão do ACBRNFSe hoje e estou com um problema estranho. Quando envio o e-mail do XML com o PDF da NFS-e o cliente esta recebendo 2 xmls, um correto e outro vazio. E o PDF esta com duas paginas. Um da Nota correto e outro parece ser do canhoto, não estou entendo este problema.

 

** Estou utilizando o Quick, a opção imprimir canhoto esta TRUE.

** Prefeitura São José do Rio Preto

** Provedor GISS

Postado (editado)

Senhores,resolvi o problema acima.

1º Na impressão da NFS-e diminui a band Outras Informações, ACBrNFSeDANFSeQRRetrato.pas

2º No envio do XML. Alterei a função abaixo.

 

unit ACBrNFSeNotasFiscais;

procedure NotaFiscal.EnviarEmail(const sSmtpHost,
                                       sSmtpPort,
                                       sSmtpUser,
                                       sSmtpPasswd,
                                       sFrom,
                                       sTo,
                                       sAssunto: String;
                                       sMensagem : TStrings;
                                       SSL : Boolean;
                                       EnviaPDF: Boolean = true;
                                       sCC: TStrings = nil;
                                       Anexos:TStrings=nil;
                                       PedeConfirma: Boolean = False;
                                       AguardarEnvio: Boolean = False;
                                       NomeRemetente: String = '';
                                       TLS: Boolean = True;
                                       UsarThread: Boolean = True);

var
 NomeArq    : String; // removido o comentario por ala em 02/04/2014,
 NomeArqPDF : String;
 NomeArqXML : String;
 AnexosEmail: TStrings;
 StreamNFSe : TStringStream;
begin
 AnexosEmail := TStringList.Create;
 StreamNFSe  := TStringStream.Create('');

 if TACBrNFSe( TNotasFiscais( Collection ).ACBrNFSe ).Configuracoes.Arquivos.NomeLongoNFSe
  then NomeArqXML := NotaUtil.GerarNomeNFSe(UFparaCodigo(Nfse.PrestadorServico.Endereco.UF),
                                            Nfse.DataEmissao,
                                            Nfse.PrestadorServico.IdentificacaoPrestador.Cnpj,
                                            StrToIntDef(Nfse.Numero, 0))
  else NomeArqXML := NFSe.Numero;

 try
    AnexosEmail.Clear;
    if Anexos <> nil then
      AnexosEmail.Text := Anexos.Text;
    if NomeArq <> '' then
     begin
       SaveToFile(NomeArq); // removido o comentario por ala em 02/04/2014,  
       AnexosEmail.Add(NomeArq);
     end
    else
     begin
       SaveToStream(StreamNFSe);
     end;
    if (EnviaPDF) then
    begin
       if TACBrNFSe( TNotasFiscais( Collection ).ACBrNFSe ).DANFSE <> nil then
       begin
          TACBrNFSe( TNotasFiscais( Collection ).ACBrNFSe ).DANFSE.ImprimirDANFSEPDF(NFSe);

          // removido por ala NomeArqPDF := Trim(NomeArq);
          // removido por ala if NomeArqPDF <> ''
           // removido por ala then begin
             NomeArqPDF := StringReplace(NFSe.Numero, 'NFSe', '', [rfIgnoreCase]); // // removido o comentario por ala em 02/04/2014,
             NomeArqPDF := NomeArqXML;
             NomeArqPDF := PathWithDelim(TACBrNFSe( TNotasFiscais( Collection ).ACBrNFSe ).DANFSE.PathPDF) + NomeArqPDF + '.pdf';
           // removido o comentario por ala em 02/04/2014,  end
           // removido o comentario por ala em 02/04/2014,   else NomeArqPDF := StringReplace(NomeArqPDF, '-nfse.xml', '.pdf', [rfIgnoreCase]);

          AnexosEmail.Add(NomeArqPDF);
       end;
    end;
    TACBrNFSe( TNotasFiscais( Collection ).ACBrNFSe ).EnviaEmail(sSmtpHost,
                sSmtpPort,
                sSmtpUser,
                sSmtpPasswd,
                sFrom,
                sTo,
                sAssunto,
                sMensagem,
                SSL,
                sCC,
                AnexosEmail,
                PedeConfirma,
                AguardarEnvio,
                NomeRemetente,
                TLS,
                StreamNFSe,
                copy(NFSe.Numero, (length(NFSe.Numero) - 44) + 1, 44) + '-NFSe.xml', //  // removido o comentario por ala em 02/04/2014,
                //NomeArqXML + '-nfse.xml', // incluido o comentario por ala em 02/04/2014,
                UsarThread);
 finally
    AnexosEmail.Free;
    StreamNFSe.Free;
 end;

Editado por ALA
  • Moderadores
Postado

Boa tarde ALA

Vamos conferir junto

veja a unit ACBrNFSeNotasFiscais.pas

confere se não existe uma propriedade com o nome "NomeArq"

Bom esse é o motivo de estar comentando a declaração da variável!

 

tanto que veja na linha 194

    if NomeArq <> '' then
     begin
//       SaveToFile(NomeArq);
       AnexosEmail.Add(NomeArq);
     end

ela está sendo usado mesmo comentando sua declaração

acredito que seja a forma de alimentar o componente que esteja diferente!

Consultor SAC ACBr Juliomar Marchetti
 

Projeto ACBr

skype: juliomar
telegram: juliomar
e-mail: [email protected]
http://www.juliomarmarchetti.com.br
MVP_NewLogo_100x100_Transparent-02.png
 

 

Postado

Julio, boa tarde. Eu não alterei a forma de alimentar o componente, já enviava desta forma a vários anos. Depois que atualizei o componente começou a dar problema, dai alterei a rotina de enviar e-mail nos fontes do componente e voltou a funcionar. Eu apenas retirei o comentário das linhas que estavam comentadas e comentei as que não existiam nas versões anteriores. Deixei a rotina do NFS-e igual ao NF-e.

  • 3 meses depois ...
Postado

Boa Tarde senhores. Estou com o mesmo problema quanto ao envio do xml anexado no e-mail da nota fiscal de serviço , com dois xmls anexados , um vazio e outro com conteúdo. A solução ficou essa citada pelo ALA comentando essa parte do codigo ? 

 

Obrigado

  • Este tópico foi criado há 3781 dias atrás.
  • Talvez seja melhor você criar um NOVO TÓPICO do que postar uma resposta aqui.

Crie uma conta ou entre para comentar

Você precisar ser um membro para fazer um comentário

Criar uma conta

Crie uma nova conta em nossa comunidade. É fácil!

Crie uma nova conta

Entrar

Já tem uma conta? Faça o login.

Entrar Agora
×
×
  • Criar Novo...

Informação Importante

Colocamos cookies em seu dispositivo para ajudar a tornar este site melhor. Você pode ajustar suas configurações de cookies, caso contrário, assumiremos que você está bem para continuar.