Ir para conteúdo
  • Cadastre-se

dev botao

Alteração procedure TPAF_C.WriteRegistroC2 da unit ACBrPAF_C_Class


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

Recommended Posts

Boa tarde Pessoal.

   Hoje na procedure TPAF_C.WriteRegistroC2 ele faz os seguintes testes para inserir no arquivo dos registros do PAF-ECF os dados dos abastecimentos C2.

IfThen(STATUS_ABASTECIMENTO = 'EMITIDO CF', RFill(NRO_SERIE_ECF, 20), RFill('',20)) +

IfThen(STATUS_ABASTECIMENTO = 'EMITIDO CF', LFill(DATA, 'yyyymmdd'), RFill('',8)) +

IfThen(STATUS_ABASTECIMENTO = 'EMITIDO CF', LFill(HORA, 'hhmmss'), RFill('',6)) +

 

A questão é que na nova ER 02.04 essas descrições de status_abastecimento mudaram para EMITIDO CFN, EMITIDO CFM , EMITIDO CFA, EMITIDO CFC , conforme requisito XXXVII, e dessa forma com os testes acima essas informações nunca irão, pelo fato de não existir mais esse status 'emitido CF'. Olhando no layout do arquivo o campo status do abastecimento possui apenas 10 casas mais como da para ver as descrições 'EMITIDO CFN' possui 11, dessa forma o homologador nos sugeriu tirar o espaço em branco, tratando assim como 'EMITIDOCFN', 'EMITIDOCFM' , 'EMITIDOCFA', 'EMITIDOCFC'. Fiz a correção das linhas acima fazendo com que as informações de data, hora e série sempre irão quando os status de abastecimentos são

               IfThen(((STATUS_ABASTECIMENTO = 'EMITIDOCFN') OR (STATUS_ABASTECIMENTO = 'EMITIDOCFM') OR (STATUS_ABASTECIMENTO = 'EMITIDOCFA') OR (STATUS_ABASTECIMENTO = 'EMITIDOCFC')), RFill(NRO_SERIE_ECF, 20), RFill('',20)) +
               IfThen(((STATUS_ABASTECIMENTO = 'EMITIDOCFN') OR (STATUS_ABASTECIMENTO = 'EMITIDOCFM') OR (STATUS_ABASTECIMENTO = 'EMITIDOCFA') OR (STATUS_ABASTECIMENTO = 'EMITIDOCFC')), LFill(DATA, 'yyyymmdd'), LFill(0,8)) +
               IfThen(((STATUS_ABASTECIMENTO = 'EMITIDOCFN') OR (STATUS_ABASTECIMENTO = 'EMITIDOCFM') OR (STATUS_ABASTECIMENTO = 'EMITIDOCFA') OR (STATUS_ABASTECIMENTO = 'EMITIDOCFC')), LFill(HORA, 'hhmmss'), LFill(0,6)) +

 

Outra questão é que quando não tiver valor para data e hora ao invés de ficar vazio deve ser preencher com zeros o conteudo.

 

Não sei se ficou claro, também não sei como faríamos para manter a compatibilidade com as versões compiladas para outras ERs, mais ajustei o fonte e estou anexando como sugestão.

ACBrPAF_C_Class.pas

  • Curtir 1
Link para o comentário
Compartilhar em outros sites

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

The popup will be closed in 10 segundos...