Ir para conteúdo
  • Cadastre-se

dev botao

Quebra de linha depois da impressão do MD5 PV DAV,....


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

Recommended Posts

Olá,

Existe alguma restrição para que a impressão das informações(Observacao) no Fechamento do cupom fiscal(TACBrECF.FechaCupom) referente ao MD5 ou nro de PV, DAV e DA-OS ocorram em linhas separadas?

Hj no meu caso esta imprimindo um CF referente a pré-venda assim:

"MD-5:1111111111112223334445556667677888PV0000000004".

Será que não poderia ser impresso cada item em uma linha separada?

Exemplo:


  ...

  procedure TACBrECF.FechaCupom(Observacao: AnsiString; IndiceBMP : Integer);

  //função para tratar a informação adicional:

  function TrataEnterFinalLInha(pPrefixo, pValor : String):String;

  begin

    Result := EmptyStr;

    if Trim(pValor) = EmptyStr then

	  Exit;  

	{Limpa as possíveis quebras de linha já incluidas pelos usuários}  

    Result := StringReplace(pValor,CR+LF,#10,[rfReplaceAll]) ;

    Result := StringReplace(Result,'|',#10,[rfReplaceAll]) ;


    Result := pPrefixo + Result + #10;

  end;

  var

  ....

  { Tirando os Acentos e trocando todos os #13+#10 e '|' por #10 }

  Observacao := StringReplace(Observacao,CR+LF,#10,[rfReplaceAll]) ;

  Observacao := StringReplace(Observacao,'|',#10,[rfReplaceAll]) ;


  { montar o rodape quando as informações de rodapé forem passadas }

  RodapePafECF := EmptyStr;


//Aqui, para cada item chama rotina que trata e adiciona quebra se for necessário.


  // atende ao requisito do Paf-ECF

  RodapePafECF := RodapePafECF + TrataEnterFinalLInha('MD-5:', InfoRodapeCupom.MD5);


  // atende ao requisito do paf-ECF V item 2

  RodapePafECF := RodapePafECF + TrataEnterFinalLInha('PV', InfoRodapeCupom.PreVenda);


  // atende ao requisito do paf-ECF VI item 5

  RodapePafECF := RodapePafECF + TrataEnterFinalLInha('DAV', InfoRodapeCupom.Dav);


  // atende ao requisito do paf-ECF XLI item 1

  RodapePafECF := RodapePafECF + TrataEnterFinalLInha('DAV-OS', InfoRodapeCupom.DavOs);


  // atende ao requisito VII-A 2-A (Cupom Mania [RJ])

  if InfoRodapeCupom.CupomMania then

  ....

    InfoRodapeCupom.Clear;

end;

...

Carlos H. Marian

Analista de Sistemas

|/-\|

Link para o comentário
Compartilhar em outros sites

  • 4 meses depois ...
  • Moderadores

galera, só ressuscitando o assunto. Hoje conversando com o Deynison da Polimig-MG, ele me disse que pode ser nessa ordem se quiser:

 

 

MD-5:
DAV ou PV:
MINAS LEGAL:
Nome Comercial:
 
Alguém pode me orientar como consigo fazer dessa forma?

Cleber C. Ferreira
Analista de Sistemas e Consultor
Email e
Skype: [email protected]
Formiga-MG

Link para o comentário
Compartilhar em outros sites

  • Moderadores

A ordem está correta, o que não pode é separar porque a ER é bem restritiva quanto a isso:

 

a2) no campo "mensagens promocionais", a partir do primeiro caracter imediatamente seguinte à identificação prevista no requisito IX, com o seguinte

 formato: PV“N”, onde N representa o número do do registro de pré-venda...

 

 

a2) no campo "mensagens promocionais", a partir do primeiro caracter seguinte à identificação prevista no requisito IX ou a partir do caracter imediatamente seguinte ao registro do PV”N”, quando for o caso, com o seguinte formato: DAV“N”, onde N representa o número do Documento Auxiliar de Venda;

 

Só para relembrar requisito IX:

O PAF-ECF deve, a cada inicialização:

a ) gerar, por meio do algoritmo Message Digest-5 (MD-5), código de autenticação para cada arquivo executável que realize os requisitos estabelecidos nesta especificação;

b ) gerar um arquivo texto, conforme o leiaute estabelecido no Anexo X do Ato

COTEPE/ICMS 06/08, contendo a lista de arquivos autenticados, e seus respectivos códigos MD-5;

c ) gerar, por meio do algoritmo Message Digest-5 (MD-5), código de autenticação do arquivo TXT a que se refere a alínea “b” e gravar o resultado no arquivo auxiliar criptografado e inacessível ao estabelecimento usuário de que trata o item 4 do

Requisito XXII, sobrepondo à gravação anteriormente realizada, devendo este código ser impresso no Cupom Fiscal, no campo:

c1 ) "informações complementares", no caso de ECF que disponibilize este campo, devendo utilizar este campo para esta informação e iniciando a impressão na primeira coluna, disponibilizada pelo software básico do ECF, da primeira linha, precedido pela mensagem “MD-5:”

c2 ) "mensagens promocionais", no caso de ECF que não disponibilize o campo "informações complementares", devendo utilizar a primeira linha para esta informação e iniciando a impressão na primeira coluna disponibilizada pelo software básico do ECF, precedido pela mensagem “MD-5:”

 

Equipe ACBr

Régys Borges da Silveira

http://www.regys.com.br

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

  • Moderadores

Confirmei com ele Regys se eu podia deixar do jeito que estava (gerado pelo ACBr). Ele me disse que pode sair o DAV ou PV na frente do mesmo. Mas os desenvolvedores estão preferindo colocar em baixo até por questão de estética, e para falar a verdade, é até melhor mesmo, sendo aceito por eles.

Tentei colocar um sLineBreak, mas o mesmo não surge efeito algum. Outra coisa que conversamos foi sobre a obrigatoriedade de vir o nome comercial do PAF no final (depois de MD5, DAV ou PV e Especiais) na ordem que passei. Segundo ele, tem uma legislação que consta isso. Mas eu questionei pelo fato de que na ER não pede. Ele me disse que vai olhar onde diz isso e passar o link. De toda forma, tem como acrescentar uma quebra para imprimir o DAV e PV e no final colocar o nome comercial?

Cleber C. Ferreira
Analista de Sistemas e Consultor
Email e
Skype: [email protected]
Formiga-MG

Link para o comentário
Compartilhar em outros sites

  • Moderadores

Não podemos alterar a forma que é impresso porque a Polimig aceita, mas outra homologadora pode não aceitar e como na ER consta a forma correta, melhor seguir.

Quanto ao nome comercial no rodapé não lembro de ver nada falando a respeito disso, só se for algo muito novo que ainda não vi, o que acontece é que algumas impressoras permitem nas informações suplementares (após o rodapé no fim do cupom fisca) informar dois campos, o primeiro é usado para o MD5 e o outro o pessoal convencionou informar o nome do aplicativo, mas não existe lei quanto a isso.

Equipe ACBr

Régys Borges da Silveira

http://www.regys.com.br

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

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