Ir para conteúdo
  • Cadastre-se

Gallixx

Membros Pro
  • Total de ítens

    79
  • Registro em

  • Última visita

Posts postados por Gallixx

  1. Fala pessoal.

    Sou novo no ramo de NFSe e até agora não desenvolvi nenhuma Nota Fiscal Eletronica em uma prefeitura que não esteja no Projeto ACBR.

     

    Essa semana iniciei Londrina, e os usuários já estão criados, e tudo certo. estou recebendo sempre a mensagem:

     

    •  
    • Processo Geral - Usuário não emissor de nota eletrônica
    •  
    • Processo Geral - Falha na autenticação, verifique suas credenciais.
    •  

    Esse código é o envio da nota através do XML, gostaria de saber se estou fazendo da maneira certa.

    
    
    
    
    
    
    var
      RPS :            TElementoRPS;
      ws:              ModuloEmissorNFSePortType;
      descricaoRps:    tcDescricaoRps;
      retornoNota:     tcRetornoNota;
      DescricaoErros:  tcListaErrosAlertas;
      I:               Integer;
      dia,mes,ano :    word;
    
    begin
       try
          RPS := TLeitorGenerico(TNFPSe(FNFPSeRef).Leitor).lote.listaRPS.item(indice);
          descricaoRps   := tcDescricaoRps.Create;
          DescricaoErros := tcListaErrosAlertas.Create();
    
          if TUtil.iif(IniOptions.Ambiente = 1, True, False) then
          begin
             ws :=  getModuloEmissorNFSePortType(True,
                 'http://testeiss.londrina.pr.gov.br/ws/v1_01/sigiss_ws.php?wsdl',
                 frmMenu.HTTPRIO1);
             descricaoRps.ccm   := 948314;
             descricaoRps.cpf   := '22853201830';
             descricaoRps.senha := '**********';
          end
          else
          begin
             ws :=  getModuloEmissorNFSePortType(True,
                 'https://iss.londrina.pr.gov.br/ws/v1_01/sigiss_ws.php?wsdl',
                 frmMenu.HTTPRIO1);
    
            descricaoRps.ccm   := 948314;
            descricaoRps.cpf   := '10280162634';
            descricaoRps.senha := ''**********';';
          end;
          descricaoRps.cnpj  := Session.Filial.getCnpj;
    
    
         
          if (RPS.Servico.Valores.IssRetido <> 0.00) then
            descricaoRps.situacao := 'tt'   // tributado no tomador
          else
            descricaoRps.situacao := 'tp';  // tributado no prestador
    
          //cod_pais_prestacao_servico  := '1082';
          descricaoRps.servico                     := StrToInt(RPS.Fiscal.ItemListaServico);
    
    
    
          descricaoRps.aliquota := RPS.Servico.Valores.Aliquota;
          if StrToFloat(descricaoRps.aliquota)=0 then
            descricaoRps.aliquota := '0,00'
          else
            descricaoRps.aliquota := descricaoRps.aliquota+',00';
    
          descricaoRps.cod_municipio_prestacao_servico := IntToStr(ord(Session.Filial.getEndereco.CodigoMunicipio));
          descricaoRps.cod_municipio_incidencia        := RPS.Fiscal.CodIBGEMunicipioIncidencia;
    
    
    
          // ****************************** Início Dados Tomador ******************************** //
          // Verifica o tipo de tomador
          if (RPS.Tomador.TipoPessoa = pesFisica) then
                descricaoRps.tomador_tipo := 2                             // 2- Pessoa Física
          else if  (descricaoRps.cod_municipio_prestacao_servico = descricaoRps.tomador_cod_cidade) then
               descricaoRps.tomador_tipo := 3  // 3- Pessoa Jurídica do Município do Prestador
          else if  (descricaoRps.cod_municipio_prestacao_servico <> descricaoRps.tomador_cod_cidade) then
               descricaoRps.tomador_tipo := 4  // 4- Pessoa Jurídica de Fora
          else
          raise Exception.Create('Tipo do Tomador inexistente!!!');
    
          if (descricaoRps.tomador_tipo<>1) and (descricaoRps.tomador_tipo<>5) then
          begin
              descricaoRps.tomador_cnpj  := RPS.Tomador.Documento;
              descricaoRps.tomador_razao := RPS.Tomador.RazaoSocial;
              descricaoRps.tomador_endereco := RPS.Tomador.Endereco.Logradouro;
              descricaoRps.tomador_numero  := RPS.Tomador.Endereco.Numero;
              descricaoRps.tomador_CEP  := RPS.Tomador.Endereco.CEP;
              descricaoRps.tomador_cod_cidade := RPS.Tomador.Endereco.CodigoMunicipio;
              descricaoRps.tomador_bairro := RPS.Tomador.Endereco.Bairro;
              if (descricaoRps.tomador_tipo<>1) then
                  descricaoRps.tomador_complemento := '';
          end;
    
          descricaoRps.tomador_im := IntToStr(descricaoRps.ccm);
    
    
         // ****************************** Fim Dados Tomador ************************************ //
    
         // Verifica  se o código de incidência do serviço é diferente do município do prestador.
         if (descricaoRps.cod_municipio_incidencia <> descricaoRps.cod_municipio_prestacao_servico)  then
         begin
           descricaoRps.situacao := 'nt';
           descricaoRps.retencao_iss :=  FormataDinheiro(FloatToStr(RPS.Servico.Valores.Inss.AsCurrency));
         end
         else
          //descricaoRps.retencao_iss := '0,00';  //NAO PREENCHER COM NENHUM VALOR
    
          //Dados e Impostos RPS
          descricaoRps.valor      :=  FormataDinheiro(FloatToStr(RPS.Servico.Valores.Servico));
          descricaoRps.base       :=  FormataDinheiro(FloatToStr(RPS.Servico.Valores.BaseDeCalculo));
          if RPS.Servico.Valores.Ir.AsFloat>0 then
             descricaoRps.ir         :=  FormataDinheiro(FloatToStr(RPS.Servico.Valores.Ir.AsFloat));
    
          if RPS.Servico.Valores.Pis.AsFloat>0 then
             descricaoRps.pis        :=  FormataDinheiro(FloatToStr(RPS.Servico.Valores.Pis.AsFloat));
    
          if RPS.Servico.Valores.Cofins.AsFloat>0 then
             descricaoRps.cofins     :=  FormataDinheiro(FloatToStr(RPS.Servico.Valores.Cofins.AsFloat));
    
          if RPS.Servico.Valores.Csll.AsFloat>0 then
             descricaoRps.csll       :=  FormataDinheiro(FloatToStr(RPS.Servico.Valores.Csll.AsFloat));
    
          if RPS.Servico.Valores.Inss.AsFloat>0 then
             descricaoRps.inss       :=  FormataDinheiro(FloatToStr(RPS.Servico.Valores.Inss.AsFloat));
    
          descricaoRps.descricaoNF       :=  RPS.Servico.Discriminacao;
          descricaoRps.rps_num           :=  StrToInt(RPS.Numero);
          descricaoRps.rps_serie         :=  RPS.Serie;
    
          DecodeDate(now,ano,mes,dia);
          descricaoRps.rps_dia           := dia;
          descricaoRps.rps_mes           := mes;
          descricaoRps.rps_ano           := ano;
    
    
          retornoNota := tcRetornoNota.Create;
    
          ws.GerarNota(descricaoRps, retornoNota, DescricaoErros);
    
    
           if retornoNota.Resultado=1 then
           begin
             with retornoNota do
             begin
                 TfrmNFSeEnvio(Pai).dolog('Auth: '+autenticidade,tmSucesso);
                 TfrmNFSeEnvio(Pai).doLog('Nota: '+IntToStr(Nota),tmSucesso);
                 TfrmNFSeEnvio(Pai).dolog('Link para visualização: '+LinkImpressao,tmSucesso);
             end;
           end
           else
           begin
             for I:= 0 to Length(DescricaoErros)-1 do
    
             with DescricaoErros[I] do
             begin
                TfrmNFSeEnvio(Pai).dolog(ID+'-'+DescricaoProcesso+' - '+DescricaoErro,tmVermelho);
             end;
    
           end;
    
       {   if ((Length(DescricaoErros) > 0) and (retornoNota.Nota = 0)) then
          begin
            for I := 0 to Length(DescricaoErros) - 1 do
            begin
              with DescricaoErros[I] do
              begin
                frmNFSeEnvio.doLog(IntToStr(id) + ' - ' + DescricaoProcesso + ': ' + DescricaoErro, tmErro);
              end;
            end;
          end
          else
          begin
            frmNFSeEnvio.doLog(retornoNota.Resultado, tmSucesso);
            frmNFSeEnvio.doLog(retornoNota.Nota, tmSucesso);
            frmNFSeEnvio.doLog(retornoNota.autenticidade, tmSucesso);
            frmNFSeEnvio.doLog(retornoNota.LinkImpressao, tmSucesso);
          end;   }
        except
          on e: Exception do
            raise Exception.Create('Erro ao enviar da nota fiscal.' + sLineBreak + e.Message);
        end;
    end;
    

    Alguém pode me auxiliar no codigo acima?? agradeço.

  2. Caros colegas, obrigado por ter respondido ao meu tópico, mas estou com os seguintes problemas:

     

    1 - Montei a rotina que alimenta o componente, conforme listado a baixo:

        try

         ACBrNFSe1.Enviar(vNumLote);

          EProtocolo.Text := acbrNfse1.NotasFiscais.Items[0].NFSe.Protocolo; //ACBrNFSe1.WebServices.ConsLote.Protocolo;

          EditStatus.Lines.add( acbrNfse1.NotasFiscais.Items[0].NFSe.CodigoVerificacao );

        except

          on E: Exception do

          begin

            ACBrNFse1.NotasFiscais.Clear;

            EditStatus.Lines.Add(E.Message);

            Exit;

          end;

        end;

     

     Ao enviar o lote, me vem o seguinte erro:

     

    Requisicao de servico invalida. O sistema nao conseguiu capturar o parametro nfseCabecMsg e/ou nfseDadosMsg.

     

    Alguem pode me ajudar a resolver isso?

     

    Obrigado

     

    Marcos

     

    Estou tendo o mesmo problema.

     

    Alguma solução??

  3. Olá pessoal, bom dia.

    Estou criando a NFSe para Londrina, porém não estou conseguindo gerar ainda. Estou recebendo os seguintes erros de retorno:

     

    • Processo Geral - Usuário não emissor de nota eletrônica
    • Processo Geral - Falha na autenticação, verifique suas credenciais.

     

    A prefeitura já me informou que o usuário/senha que estou usando é válido para gerar NFSe e quando acesso o site de consulta de NFSe consigo fazer login com as mesmas credenciais.

     

    Alguém já passou por algum problema semelhante??

     

    Obrigado, aguardo respostas :)

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