Ir para conteúdo
  • Cadastre-se

dev botao

Erro No Relatório Parametros De Cofiguração


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

Recommended Posts

Saudações:

 

Li em um tópico sobre a mudança no layout do RG Param. de configuração onde, se a versão é >= 201 ele imprime

Perfil de Requisitos Configurado: <Letra do perfil>

 

Ao implementar as mudanças (que são: a informação da versão e a letra do requisito), me deparei com algo estranho:

 

Aqui, a forma como configuro as informações na minha aplicação:

 

   AAC.AbrirArquivo;
   AAC.IdentPAF.Paf.RecompoeGT           := True;
   AAC.IdentPAF.Paf.RecompoeNumSerie := True;
   AAC.IdentPAF.VersaoER                       := '0201';
   AAC.IdentPAF.Paf.PerfilRequisitos        := 'F';

 

Mesmo informando ao AAC a versão 0201 ele não mudou a impressão do RG.

Assim, analisando o código na unit AcbrECF, a partir da linha 6155, me deparei com a seguinte situação: (omiti alguns trechos da rotina para simplificar a visualização)

 

procedure TACBrECF.PafMF_RelParametrosConfiguracao(AInfoPafECF: TACBrECFInfoPaf;  const AIndiceRelatorio: Integer);

var
...
  versaoPafECF: Integer;//a var obtém a versão da ER
...
...
...
begin
  versaoPafECF := 0;//aqui ele define zero como padrão
...
...
Aqui me deparei com o problema
 
  if (not Assigned(AInfoPafECF)) then //AInfoPafECF existe e ele pula este trecho
  begin
    if Assigned(fsAAC) then
    begin
      AInfoPafECF  := fsAAC.IdentPAF.Paf;
      versaoPafECF := StrToInt(OnlyNumber(fsAAC.IdentPAF.VersaoER));//onde deveria obter o valor da versão
    end
    else
      raise EACBrECFErro.Create( ACBrStr('Parâmetros de configuração do Paf-ECF não informados') ) ;
  end;
 
...
 
  Relatorio := TStringList.Create;
  try
    Relatorio.Clear;
 
    Relatorio.Add('</linha_dupla>');
    Relatorio.Add('<ce>PARÂMETROS DE CONFIGURAÇÃO</ce>');
    Relatorio.Add('</linha_dupla>');
    Relatorio.Add('');
//e aqui esta sempre como zero e nao muda o processamento da impressão
    if versaoPafECF >= 201 then
      Relatorio.Add('Perfil de Requisitos Configurado: ' + AInfoPafECF.PerfilRequisitos)
    else
    begin
...
 
Existe aqui um erro ou estou fazendo algo errado nas configurações?
Eu chamo a impressão da seguinte forma:
 
ECF.PafMF_RelParametrosConfiguracao(ECF.AAC.IdentPAF.Paf, indice);
 
Att,
 
Alfredo Koplin
 
PS: Após pensar um pouco, fiz o seguinte: ECF.PafMF_RelParametrosConfiguracao(nil, indice);
e funcionou, mas ainda assim cabe a dúvida: a rotina do ACBRECF nao deveria prever que AInfoPafECF está presente e proceder de acordo?
Editado por koplin
Link para o comentário
Compartilhar em outros sites

  • Moderadores
  • Solution

Na verdade ele vai utilizar uma propriedade do ACBrAAC onde está configurado o perfil de requisitos, e AInfoPafECF não possui ela.

Fiz um overload do método para um novo método que recebe a string do perfil de requisitos.

 

Estou homologando para todos os estados e implementei esse relatório da seguinte maneira.

  1. Cada estado tem seu perfil, coloquei isso em uma tabela de controle;
  2. Conforme o estado configurado no momento leio nessa tabela o perfil;
  3. Passo ao novo método para impressão.

Ficou mais ou menos assim:

ACBrECF.PafMF_RelParametrosConfiguracao(UFPERFIL, Indice);

Equipe ACBr

Régys Borges da Silveira

http://www.regys.com.br

certificacao delphicertificacao delphi
Link para o comentário
Compartilhar em outros sites

  • 11 meses depois ...
  • Moderadores

Pessoal,

precisei remover as tags de formatação (<n> e </n>) do relatório PafMF_RelParametrosConfiguracao

porque minha Daruma FS700 estava imprimindo somete até a linha do "IDENTIFICAÇÃO E CARACTERISTICAS DO".

Depois que removi, funcionou.

 

Não precisa mecher no relatório basta configurar o ACBrECF para não utilizar as tags usando a propriedade IgnorarTagsFormatacao.

  • Curtir 1

Equipe ACBr

Régys Borges da Silveira

http://www.regys.com.br

certificacao delphicertificacao delphi
Link para o comentário
Compartilhar em outros sites

  • 4 meses depois ...
  • Moderadores

Chegou a olhar o demo?

ele é muito simples, passa a letra do perfil e se quiser o indice do relatorio gerencial!

o Demo do ECF demonstra isso!

Qual seria a dificuldade?

Consultor SAC ACBr Juliomar Marchetti
 

Projeto ACBr

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

 

Link para o comentário
Compartilhar em outros sites

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