Ir para conteúdo
  • Cadastre-se

dev botao

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

Recommended Posts

Postado

estou com a versão mais recente da trunk2. estou consultando uma nota carregando o xml, mas o xml não esta sendo atualizado com as informações do cancelamento como na versão antiga do acbr. segue em anexo o xml da nota.

23151041567389000139550690000113101000113107-nfe.xml

http://www.projetoacbr.com.br/forum/topic/23840-nota-cancelada-atualização-do-xml-e-do-danfe

Equipe ACBr Sérgio Assunção
Ajude o Projeto ACBr crescer - Assine o SAC

Projeto ACBr

 

[email protected]

  • Consultores
Postado

Boa tarde Edilberto,

Quanto a essa propriedade AtualizarXMLCancelado ela foi removida por sugestão minha.

A equipe ACBr esta avaliando se ela vai voltar ou não.

A minha posição quando a esse assunto é:

Não deve voltar, pois em nenhum Manual ou Nota Técnica diz que o XML assinado e com o protocolo de autorização tem que ser alterado caso a nota venha a ser cancelada.

Portanto ao realizar essa troca do protocolo de autorização pelo de cancelado estaremos gerando um XML que não tem nenhuma validade jurídica.

E desta forma o componente deixa de ficar em conformidade com os Manuais e Notas Técnicas.

Resumindo:

A nota foi emitida e autorizada, enviar por e-mail o XML da NF-e (*-nfe.xml) assinado e autorizado para o destinatário e transportadora (se necessário).

A nota foi cancelada, enviar por e-mail o XML de processamento do Evento (*-procEventoNFe.xml) para o destinatário e transportadora (se necessário).

O primeiro arquivo temos todos os dados pertinentes a venda bem com a assinatura digital do emitente mais o protocolo de autorização da SEFAZ, portanto temos um documento fiscal eletrônico com validade jurídica.

O segundo arquivo temos a solicitação do cancelamento a assinatura digital do emitente mais o protocolo de homologação do cancelamento da SEFAZ, portanto temos um documento fiscal eletrônico com validade jurídica.

  • Curtir 1
Consultor SAC ACBr

Italo Giurizzato Junior
Ajude o Projeto ACBr crescer - Assine o SAC

Projeto ACBr

Analista de Sistemas / Araraquara-SP

Araraquara - A era dos Trólebus

Postado

eu uso o xml atualizado com as informações do cancelamento, só para facilitar a exibir o protocolo e data do cancelamento na impressão do danfe. hoje não tem como mostrar a data do cancelamento ao lado do número do protocolo. Se algum moderador pudesse implementar um propriedade para a data do cancelamento e mostrasse ao lado do protocolo na impressão do danfe, para mim já resolveria.

  • Moderadores
Postado

eu uso o xml atualizado com as informações do cancelamento, só para facilitar a exibir o protocolo e data do cancelamento na impressão do danfe. hoje não tem como mostrar a data do cancelamento ao lado do número do protocolo. Se algum moderador pudesse implementar um propriedade para a data do cancelamento e mostrasse ao lado do protocolo na impressão do danfe, para mim já resolveria.

Você leu o que o Italo escreveu acima?

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
 

 

  • Membros Pro
Postado

Na minha opinião deveria sim voltar essa propriedade AtualizarXMLCancelado .

Apesar da justificativa valida ... perde se muito em questão de informação agrupada.

 

 

Postado

Boa tarde,

Na minha opiniao:

Como contador : Deveria SIM permanecer, pois facilita o controle durante o processo de importação dos xmls para os sistemas fisco-contabeis.

Como desenvolvedor : Se o nao existe MOC OU NT dizendo que tem que ser alterado caso a nota venha a ser cancelada. Ainda não vi nenhuma destas dizendo o contrario. Sendo assim, minha opiniao seria pela manutenção da possibilidade de anexar o protocolo de cancelamento. Esta operação poderia ficar opcional,  dependendo da necessidade de cada um.

  • Consultores
Postado

Boa tarde a todos,

Encontra-se disponível no Portal Nacional da NF-e uma minuta da versão 6 do Manual da NF-e.

Convido a todos a baixarem esse manual.

De posse do mesmo vamos a página 181 - item 10.3 que trata sobre layout da distribuição da NF-e, por favor leiam com a máxima atenção e em especial o campo XR06.

Depois peço que leiam também com muita atenção o item 4.3.10 (página 48) que trata sobre o Armazenamento e Disponibilização do Evento de Cancelamento.

Peço para aqueles que tiverem tempo que leiam ou busquem todas as ocorrências de cancelada, canelamento, disponibilização, armazenamento, distribuição, e coisas similares no PDF da minuta, pois, eu não encontroei nada que diz que devemos trocar o grupo <protNfe> (que contem os dados do protocolo de autorização de uso) por um outro que contenha o protocolo de cancelamento. E também não encontrei nada que diga que devemos acrescentar um novo grupo com os dados do cancelamento.

Pelas páginas 48 e 181 fica para mim muito claro que o XML da NF-e não deve ser alterado após o seu cancelamento e o XML (*-procEventoNFe) conforme titulo do item 4.3.10 deve ser armazenado pelo emitente e disponibilizado ao destinatário.

Desculpe, achar todos acham, até eu acho pedras nos caminhos por onde passo, mas para mim o que vale é o que esta escrito em um manual ou nota técnica emitida pelo ENCAT.

Se alguns sistemas de empresas ou de escritórios de contabilidade esperam ler um XML com os dados da venda mais o protocolo de cancelamento, para mim eles estão errados e não preciso apontar os motivos.

Vou reiterar a minha posição, o componente não deve realizar a troca e nem possibilitar que isso seja feito através da habilitação de uma propriedade, ele tem que estar em conformidade com os manuais e notas técnicas.

Respeito aqueles que não concordam com a minha opinião e para essas pessoas digo: o fonte do componente esta disponível no HD da sua maquina fique a vontade em fazer a customização que julgar necessária.

Um bom trabalho a todos nós.

  • Curtir 1
Consultor SAC ACBr

Italo Giurizzato Junior
Ajude o Projeto ACBr crescer - Assine o SAC

Projeto ACBr

Analista de Sistemas / Araraquara-SP

Araraquara - A era dos Trólebus

Postado

Italo Jurisato, não vamos falar mais sobre modificar o xml com as informações do cancelamento. agora o que você acha de uma propriedade para informar e imprimir a data do cancelamento no danfe (DhRecbtoNFeCancelada: TDateTime na classe,TACBrNFeDANFEClass). similar a "ProtocoloNFe" e "NFeCancelada"? Essa sugestão poderia ser implementada?

  • Consultores
Postado (editado)

Boa tarde Edilberto,

O que você acha de uma propriedade chamada xCancelada do tipo String?

Onde você possa colocar o texto que desejar, como por exemplo:

NF-e Cancelada em dd/mm/aaaa sob o protocolo n. 9999999999

Ao executar o método Imprimir ou ImprimirPDF caso o valor de NFeCancelada for True será impresso como um carimbo no DANFE o texto contido em xCancelada.

Editado por Italo Jurisato Junior
Consultor SAC ACBr

Italo Giurizzato Junior
Ajude o Projeto ACBr crescer - Assine o SAC

Projeto ACBr

Analista de Sistemas / Araraquara-SP

Araraquara - A era dos Trólebus

Postado

Italo, também daria certo. Na impressão onde ficaria esse "carimbo"?

Segue abaixo o código da função "CarregaCalculoImposto" da unit "ACBrNFeDANFEFRDM.pas(porque trabalho com o fastreport) da mudança que pensei.

      teSVCSP :   begin
                    FieldByName('ChaveAcesso_Descricao').AsString := 'CHAVE DE ACESSO';
                    FieldByName('Contingencia_ID').AsString := '';

                    if ((FDANFEClassOwner.NFeCancelada) or (FNFe.procNFe.cStat in [101,151,155])) then
                      FieldByName('Contingencia_Descricao').AsString := ACBrStr('PROTOCOLO DE HOMOLOGAÇÃO DO CANCELAMENTO' )
                    else if ( FNFe.procNFe.cStat = 110 ) or
                            ( FNFe.procNFe.cStat = 301 ) or
                            ( FNFe.procNFe.cStat = 302 ) or
                            ( FNFe.procNFe.cStat = 303 ) then
                      FieldByName('Contingencia_Descricao').AsString := ACBrStr('PROTOCOLO DE DENEGAÇÃO DE USO')
                    else
                      FieldByName('Contingencia_Descricao').AsString := ACBrStr('PROTOCOLO DE AUTORIZAÇÃO DE USO');

                    if EstaVazio(FDANFEClassOwner.ProtocoloNFe) then
                    begin
                      if EstaVazio(FNFe.procNFe.nProt) then
                        FieldByName('Contingencia_Valor').AsString := ACBrStr('NFe sem Autorização de Uso da SEFAZ')
                      else
                        FieldByName('Contingencia_Valor').AsString := FNFe.procNFe.nProt + ' ' + IfThen(FNFe.procNFe.dhRecbto <> 0, DateTimeToStr(FNFe.procNFe.dhRecbto), '');
                    end
                    else
                      // CODIGO ORIGINAL
                      // FieldByName('Contingencia_Valor').AsString := FDANFEClassOwner.ProtocoloNFe; jetro - original
                      // CODIGO ALTERADO
                                FieldByName('Contingencia_Valor').AsString := FDANFEClassOwner.ProtocoloNFe + ' ' + IfThen(FDANFEClassOwner.DhRecbtoNFeCancelada <> 0, DateTimeToStr(FDANFEClassOwner.DhRecbtoNFeCancelada), ''); // jetro - mostra a data do cancelemento
                  end;

Postado

boa tarde,

Não levem a mal que me meta na discussão, contudo não existe já uma propriedade MarcaDaguaMSG no DANFE onde o programador pode colocar o texto que desejar? creio até que foi italo quem fez essa funcionalidade.

caso afirmativo creio que já existem funcionalidades suficientes para atender ao exposto, sendo que o programador antigamente colocava a true a propriedade NFeCancelada para sair uma marca-de-agua predefinida, agora ele tem somente de preencher a propriedade MarcaDaguaMSG como o mesmo texto ou outro de sua preferencia. pode inclusive usar o mesmo processo para indicar uma marca de agua quando se imprime uma NFe denegada (sugestão)

fica a dica.

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