Ir para conteúdo
  • Cadastre-se

dev botao

DANFE Fortes Impressão várias notas


Ver Solução Respondido por Glaucos Luiz Ginez,
  • Este tópico foi criado há 2886 dias atrás.
  • Talvez seja melhor você criar um NOVO TÓPICO do que postar uma resposta aqui.

Recommended Posts

  • Moderadores
Postado

Gostei ..mostre o resultado anexando arquivo para analise ( Danfe Retrato / Danfe Paisagem )

Para melhorar o entendimento , solicito uma melhoria nos nomes da variáveis (  LArray : TObjectArray; , LReport, LReportNext : TRLCustomReport;     LObject : TObject; )

Obrigado pela sua ajuda.

 

Equipe ACBr Henrique Leonardo
Ajude o Projeto ACBr crescer - Assine o SAC

Projeto ACBr

Tecnólogo em processamento de dados

E-mail [email protected] - Skype : hleorj

  • Moderadores
Postado
4 horas atrás, Juliomar Marchetti disse:

Só uma pergunta!

nesse caso como ficaria o nome do PDF?

a primeira nota que entrasse pra ser emitida?

 

Esta questões do @Juliomar Marchetti

Equipe ACBr Henrique Leonardo
Ajude o Projeto ACBr crescer - Assine o SAC

Projeto ACBr

Tecnólogo em processamento de dados

E-mail [email protected] - Skype : hleorj

  • Moderadores
Postado

@Glaucos Luiz Ginez

Ótima iniciativa, se não temos o recurso vamos implementar e propor ao debate.

@hleorj

Já peço licença para dar a minha opinião.

No meu ponto de vista, quando gerar mais de uma nota o pdf não tem como ser individualizado e será sempre um só o grupo.

Não tem como individualizar algo que já foi agrupado, e o correto seria usar o nome que for definido no primeiro DANFe.

Se o programador imprimir individualmente, ai sim cada uma nota sai com seu nome.

 

 

  • Moderadores
Postado

@Glaucos Luiz Ginez

Olhei suas alterações, e acredito que podemos melhorar um pouco esse ponto:

Citar

         200,200,10,10,False,10,0,
          i = Pred(TACBrNFe(ACBrNFe).NotasFiscais.Count),
          @ReportArray);

Vou tentar uma melhoria nesse ponto para conseguir parametrizar esses valores.

Precisamos da opinião dos outros colegas sobre a definição do nome do pdf do grupo de notas.

  • Moderadores
Postado

Segue uma ideia;

Function TACBrNFeDANFeRL.MontaNomePdf( NFE : TNFe) : String;
Var
  iUltimo : Integer;
begin
  if NFE = nil then
  begin
    Result  := TACBrNFe(ACBrNFe).DANFE.PathPDF;
    iUltimo := TACBrNFe(ACBrNFe).NotasFiscais.Count;
   if iUltimo > 1 then

      Result := Result + 'De_' +
                IntToStr( TACBrNFe(ACBrNFe).NotasFiscais.Items[0].NFe.Ide.nNF ) +
                '_a_' +
                IntToStr( TACBrNFe(ACBrNFe).NotasFiscais.Items[ iUltimo - 1 ].NFe.Ide.nNF )


    else
      Result := Result +
                   StringReplace(TACBrNFe(ACBrNFe).NotasFiscais.Items[0].NFe.infNFe.ID,'NFe', '', [rfIgnoreCase]);
  end
  else
    Result := Self.PathPDF + StringReplace(NFe.infNFe.ID,'NFe', '', [rfIgnoreCase]);

  Result := Result+ '-nfe.pdf'
end;

Resultado para notas fiscais em grupo 

Ex.


De_xxxxx_a_yyyyyy-nfe.pdf

xxxxx = Nf Inicial
yyyyy = Nf final

 

 

 

 

ACBrNFeDANFeRLClass.pas

ACBrNFeDANFeRL.pas

Equipe ACBr Henrique Leonardo
Ajude o Projeto ACBr crescer - Assine o SAC

Projeto ACBr

Tecnólogo em processamento de dados

E-mail [email protected] - Skype : hleorj

  • Moderadores
Postado

@Glaucos Luiz Ginez , repliquei a sua ideia.

function TACBrNFeDANFeRL.MontaNomePdf( NFE : TNFe) : String;
begin
  if NFE = nil then
    Exit(Self.PathPDF + 'DANFe.pdf');
  Result := Self.PathPDF + StringReplace(NFe.infNFe.ID,'NFe', '', [rfIgnoreCase]) +  '-nfe.pdf'
end;

para facilitar o entendimento.

Equipe ACBr Henrique Leonardo
Ajude o Projeto ACBr crescer - Assine o SAC

Projeto ACBr

Tecnólogo em processamento de dados

E-mail [email protected] - Skype : hleorj

  • 2 semanas depois ...
Postado (editado)

@Glaucos Luiz Ginez Muito obrigado. Estava buscando essa solução à alguns dias. No trunk1 usava a impressão do Rave, que era agrupada. Alguns clientes já estavam reclamando.

Eu apenas retirei o agrupamento do PDF, para que ficar em arquivos separados.

Editado por arce
  • Membros Pro
Postado

Bom dia a todos,

Nao sei se é a ideia é boa, quando imprimir, ele poderá gerar layout somente, mas na hora de gerar o pdf, gerar cada arquivo separadamente.

Pq na visualização, os clientes gostam de apenas rolar para baixo e virificar as nfes, mas ao enviar por email, que é o uso que tenho para os

pdfs, poderia ser separado, nota a nota.

O que vcs acham?

  • 2 semanas depois ...
Postado

A alteração sera incorporada aos fontes no svn? Atualizei hoje o acbr e quando jogo os  últimos .pas do arce da uma mensagem de erro de memória quando manda imprimir mas funciona. Uso o delphi 7!

Postado

@gutopmc Minha versão em produção está na revisao 12022 do svn do ACBr. Verifiquei que recentemente fizeram algumas mudanças nessas units. Ainda não fiz a atualização para a versão mais atual.

  • 1 mês depois ...
Postado
Em 23/09/2016 at 16:32, arce disse:

@gutopmc Minha versão em produção está na revisao 12022 do svn do ACBr. Verifiquei que recentemente fizeram algumas mudanças nessas units. Ainda não fiz a atualização para a versão mais atual.

Já foi possivel atualizar?

  • Moderadores
Postado

Boa tarde

por favor faça o update e vejam que existe diferença da unit aqui anexada e as do svn!

não é mais usado os dataset pra alimentar o componente e sim diretamente da classe!

então se faz necessário atualizarem os arquivos, aplicarem as mudanças que já fizeram e depois anexar novamente !

 

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
 

 

  • Este tópico foi criado há 2886 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.