Ir para conteúdo
  • Cadastre-se

dev botao

Alteracao Pcnnfertxt E Pcnlayouttxt


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

Recommended Posts

pcnNFeRTXT.pas:
 
Troca do tipo do campo na versao 3.10 de tcDat para tcDatHor.
 
if (nfe.infNFe.Versao < 3.10) then
     begin
       (*B09*)NFe.ide.dEmi := LerCampo(tcDat, 'dEmi');
      (*B10*)NFe.ide.dSaiEnt := LerCampo(tcDat, 'dSaiEnt');
     (*B10a*)NFe.ide.hSaiEnt := LerCampo(tcHor, 'hSaiEnt');
 
     end
    else
     begin
       (*B09*)NFe.ide.dEmi := LerCampo(tcDatHor, 'dhEmi');
              NFe.Ide.dSaiEnt := LerCampo(tcDatHor, 'dhSaiEnt');
     end;
 
pcnLayoutTXT.pas:
 
Incluído indFinal e indPres.
 
    LoadLayout('<B01>     B|cUF¨|cNF¨|NatOp¨|indPag¨|mod¨|serie¨|nNF¨|dhEmi¨|dhSaiEnt¨|tpNF¨|idDest¨|cMunFG¨|tpImp¨|tpEmis¨|CDV¨|tpAmb¨|finNFe¨|indFinal¨|indPres¨|procEmi¨|verProc¨|dhCont¨|xJust¨');
 

pcnLayoutTXT.pas

pcnNFeRTXT.pas

Link para o comentário
Compartilhar em outros sites

  • Moderadores

Já existe o seguinte código na unit pcnNFeR.pas

    if NFe.infNFe.Versao >= 3 then
     begin
      (*B09*) NFe.ide.dEmi    := Leitor.rCampo(tcDatHor, 'dhEmi');
      (*B10*) NFe.ide.dSaiEnt := Leitor.rCampo(tcDatHor, 'dhSaiEnt');
     end
    else
     begin
      (*B09*) NFe.ide.dEmi    := Leitor.rCampo(tcDat, 'dEmi');
      (*B10*) NFe.ide.dSaiEnt := Leitor.rCampo(tcDat, 'dSaiEnt');
      (*B10a*)NFe.ide.hSaiEnt := Leitor.rCampo(tcHor, 'hSaiEnt');
     end;
E a alteração na unit pcnLayoutTXT.pas foi comitada.
djsystem-logo.png
 youtube.png facebook.png instagram.png linkedin.png
André Ferreira de Moraes | Analista de Sistemas
www.djsystem.com.br | www.djpdv.com.br
www.tefhouse.com.br | www.lambretinha.com.br
Link para o comentário
Compartilhar em outros sites

  • 2 semanas depois ...
Boa tarde.
Nosso sistema utiliza a leitura por arquivos texto.
Estava verificando os fontes das units pcnLayoutTXT e observei que a função CarregarLayoutTXT
está lendo corretamente os campos da versão da 3.10 da NF-e.
 
A questão é que utilizamos a unit pcnNFeRTXT, existe a procedure LerRegistro, e nessa rotina não consta a leitura das tags 'I50' e 'I52' para a leitura dos novos campos que a Sefaz disponibiliza.
I50|nDraw
I52|nRE¨|chNFe¨|qExport
 
E nessa mesma procedure, a leitura da tag 'I18', existe um trecho comentado que também se refere a novos campos criados.
{           NFe.Det.Prod.DI[j].tpViaTransp := StrToindIEDest(ok, LerCampo(tcStr, 'tpViaTransp'));
           NFe.Det.Prod.DI[j].vAFRMM := LerCampo(tcStr, 'vAFRMM');
           NFe.Det.Prod.DI[j].tpIntermedio := StrToindIEDest(ok, LerCampo(tcStr, 'tpIntermedio'));
           NFe.Det.Prod.DI[j].CNPJ := LerCampo(tcStr, 'CNPJ');
           NFe.Det.Prod.DI[j].UFTerceiro := LerCampo(tcStr, 'UFTerceiro'); }
 
Atualizei os fontes hoje e gostaria de saber se por enquanto é isso mesmo ou se será revisado.
 
Obrigado.
Link para o comentário
Compartilhar em outros sites

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