Ir para conteúdo
  • Cadastre-se

dev botao

ACBrNFe1StatusChange


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

Recommended Posts

Caros estou usando o exemplo do ACBr e nele tentando pegar os retornos da NFe 

Quando em 

TForm1.ACBrNFe1StatusChange(Sender: TObject);
begin
    case ACBrNFe1.Status of

         stNFeStatusServico :  begin

                                               // Gravar retorno usando o mesmo utilizado em 

                                             MemoDados.Lines.Add('tpAmb: '    +TpAmbToStr(ACBrNFe1.WebServices.StatusServico.tpAmb));
                                             MemoDados.Lines.Add('verAplic: ' +ACBrNFe1.WebServices.StatusServico.verAplic);
                                             MemoDados.Lines.Add('cStat: '    +IntToStr(ACBrNFe1.WebServices.StatusServico.cStat));
                                             MemoDados.Lines.Add('xMotivo: '  +ACBrNFe1.WebServices.StatusServico.xMotivo);
                                                     ...

                                            end;

 o resultado é 

 

tpAmb=1
verAplic=
cStat=0
xMotivo=
cUF=0
dhRecbto=30/12/1899
tMed=0
dhRetorno=30/12/1899
xObs=

 

 

Link para o comentário
Compartilhar em outros sites

Obrigado Régys,

Utilizando o Demo, eu fiz assim :

ACBrNFe1.Configuracoes.Geral.ExibirErroSchema := True;


  with ACBrNFe1.WebServices.StatusServico do
    begin
      Executar;
      iStat := cStat;
    end;

  if iStat <> 107 then
    begin
      MessageDlg('WebService da Sefaz não está em operação,'+
          #10#13+'a nota não poderá ser enviada !',mtError,[mbOk],0);
    end
  else
    begin
       ACBrNFe1.NotasFiscais.Clear;
       ACBrNFe1.NotasFiscais.GerarNFe;

       try
         Retorno := ACBrNFe1.Enviar(vNumLote,True);
       except
         on e: Exception do
           begin

              // foi preciso esse bloco para poder pegar o protocolo do envio pois caso contrário era exibido uma caixa de mensagem

              // do componente e se fosse necessário consultar porque da falha não havia como

              GravaLog('Protocolo : '+Protocolo);

              GravaLog('cStat : '+cStat);
              GravaLog('xMotivo : '+xMotivo);

              Showmessage('Erro : '+E.message);     
          end;
      end;

      if Retorno then
        begin
          with ACBrNFe1.WebServices.Retorno do
            begin
              GravaLog('tpAmb     : '+TpAmbToStr(tpAmb));
              GravaLog('verAplic  : '+verAplic);
              GravaLog('ChaveNFe  : '+ChaveNFe);
              GravaLog('Recibo    : '+Recibo);
              GravaLog('Protocolo : '+Protocolo);

              iStat := cStat;
              GravaLog('cStat     : '+IntToStr(iStat));
              GravaLog('xMotivo   : '+xMotivo);
              GravaLog('cUF       : '+IntToStr(cUF));
              GravaLog('cMsg      : '+IntToStr(cMsg));
            end;

          if iStat <>  100 then
            begin
              MessageDlg(' Nota não autorizada : '+IntToStr(iStat)+xStat,mtError,[mbOk],0);
            end
          else
            begin

               with ACBrNFe1.NotasFiscais.Items[0].NFe.procNFe do
                begin
                   GravaBanco( chNFe, dhRecbto, nProt, digVal, cStat, xMotivo, ACBrNFe1.NotasFiscais.Items[0].NomeArq);
                end;

 

 

Estou usando o ambiente de Homologação no RJ que usa os webServices de RS, é muito rápido o processo ate aparecer o Danfe,

Questões :

A -  Como em teste é muito rápido onde pode ocorrer demora em resposta e como tratar ?

B - Para simular erro nos dados do XML eu fiz um loop de 5 produtos e em todos eles coloquei um valor incorreto de ICMS o retorno

ERRO: Nota(s)  não confirmadas: 56->Rejeicao: Valor do ICMS difere do produto BC e Aliquota

Usei o validador da SEFAZ RS e também obtive o mesmo erro. Se o retorno é padrão como o emissor gratuito faz para indicar quais itens ocorre o erro ? 

C - No DANFE do ACBrNFeDANFeESCPOS1 na NFCe o valor dos tributos desaparecem se colocarmos informações adicionais a serem impressas como aqui no RJ que tem que aparecer ALERJ e PROCON .... o único jeito é colocar os impostos detalhado , mas tem o seguinte problema, tem vFed, vEst, vMuni mas não tem para produto importado, como fazer ?

 

 

 


 

Editado por Antonio Carlos L
Link para o comentário
Compartilhar em outros sites

  • Moderadores

Boa noite

para tratar os retornos basta executar o comando e envio e conferir o cStat dele!

sempre vai lhe retornar o erro!

sobre as validações já tentou usar o ValidaRegrasNegocio?

ele é interno e faz quase tudo o que é necessário off-line de testes!

bom a NFC-e é venda consumidor então acho que essa parte de exportação não se aplica certo?

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
 

 

Link para o comentário
Compartilhar em outros sites

×
×
  • 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.