Jump to content

dev botao

Recommended Posts

  • Membros Pro
Posted

boa tarde !

Tenho um cliente que me faz uma solicitação para ver se há possibilidade de consultar o a sistuação cadastral dos clientes  no Sintegra via sistema , pois hoje , faz de forma manual. O ACBR tem algo neste sentido ou que possa indicar alguma solução para tal .

Obrigado

 

  • Membros Pro
Posted
Em 04/10/2024 at 15:40, daniel_mirassol disse:

boa tarde !

Tenho um cliente que me faz uma solicitação para ver se há possibilidade de consultar o a sistuação cadastral dos clientes  no Sintegra via sistema , pois hoje , faz de forma manual. O ACBR tem algo neste sentido ou que possa indicar alguma solução para tal .

Obrigado

 

Testa isto aqui:
 

procedure TConsultaCadastro.Execute;
begin
  CoInitialize(nil);
  NFe := TACBrNFe.Create(nil);
  try
    try
      Synchronize(GetData);

      NFe.WebServices.ConsultaCadastro.UF := FUF;
      if Length(FCPF_CNPJ) > 11 then
        NFe.WebServices.ConsultaCadastro.CNPJ := FCPF_CNPJ
      else
        NFe.WebServices.ConsultaCadastro.CPF := FCPF_CNPJ;
      NFe.WebServices.ConsultaCadastro.Executar;

      Synchronize(RetornoSucesso);
    except
      on E: Exception do
      begin
        FErro := E.Message;
        if Trim(FErro) = '' then
          FErro := 'Erro desconhecido na consulta do cadastro na Sefaz.';
        Synchronize(RetornoErro);
      end;
    end;
  finally
    CoUnInitialize;
    NFe.Free;
  end;
end;

Segue algumas informações improtantes:
 

	# cSit =  Situação do contribuinte:
    0 = Não habilitado;
    1 = Habilitado;

    # indCredNFe = Indicador de contribuinte credenciado a emitir NF-e:
    0 = Não credenciado para emissão da NF-e;
    1 = Credenciado;
    2 = Credenciado com obrigatoriedade para todas operações;
    3 = Credenciado com obrigatoriedade parcial;
    4 = SEFAZ não fornece a informação. Este indicador significa apenas que o contribuinte é credenciado para emitir NF-e na SEFAZ consultada;            [

    # indCredCTe  = Indicador de contribuinte credenciado a emitir CT-e:
    0 = Não credenciado para emissão da CT-e;
    1 = Credenciado;
    2 = Credenciado com obrigatoriedade para todas operações;
    3 = Credenciado com obrigatoriedade parcial;
    4 = SEFAZ não fornece a informação. Este indicador significa apenas que o contribuinte é credenciado para emitir CT-e na SEFAZ consultada;

    # xRegApur = Regime de Apuração do ICMS do Contribuinte;

    # IEUnica = IE única, este campo será informado quando o contribuinte possuir IE única;
    # IEAtual = IE atual (em caso de IE antiga consultada);

Vou te mostrar o exemplo de retorno, eu salvo em um arquivo .ini:

  Config := TIniFile.Create(ExtractFileDir(Application.ExeName) + '\Config.ini');
  try
    Config.EraseSection('CONSULTA_CADASTRO_SEFAZ');
    Config.WriteBool('CONSULTA_CADASTRO_SEFAZ', 'Usado', True);

    Config.WriteInteger('CONSULTA_CADASTRO_SEFAZ', 'cStat', NFe.WebServices.ConsultaCadastro.cStat);
    Config.WriteString('CONSULTA_CADASTRO_SEFAZ', 'xMotivo', NFe.WebServices.ConsultaCadastro.xMotivo);
    Config.WriteString('CONSULTA_CADASTRO_SEFAZ', 'UF', NFe.WebServices.ConsultaCadastro.UF);
    Config.WriteInteger('CONSULTA_CADASTRO_SEFAZ', 'cUF', NFe.WebServices.ConsultaCadastro.cUF);
    Config.WriteString('CONSULTA_CADASTRO_SEFAZ', 'CNPJ', NFe.WebServices.ConsultaCadastro.CNPJ);
    Config.WriteString('CONSULTA_CADASTRO_SEFAZ', 'CPF', NFe.WebServices.ConsultaCadastro.CPF);
    Config.WriteString('CONSULTA_CADASTRO_SEFAZ', 'IE', IfThen(NFe.WebServices.ConsultaCadastro.IE.Trim = '', NFe.WebServices.ConsultaCadastro.RetConsCad.IE,
      NFe.WebServices.ConsultaCadastro.IE));
    Config.WriteDateTime('CONSULTA_CADASTRO_SEFAZ', 'dhCons', NFe.WebServices.ConsultaCadastro.dhCons);

    Config.WriteInteger('CONSULTA_CADASTRO_SEFAZ', 'QuantCadEst', NFe.WebServices.ConsultaCadastro.RetConsCad.InfCad.Count);
    for I := 0 to NFe.WebServices.ConsultaCadastro.RetConsCad.InfCad.Count - 1 do
    begin
      Config.WriteString('CONSULTA_CADASTRO_SEFAZ', 'IE_' + (I + 1).ToString, NFe.WebServices.ConsultaCadastro.RetConsCad.InfCad[I].IE);
      Config.WriteString('CONSULTA_CADASTRO_SEFAZ', 'CNPJ_' + (I + 1).ToString, NFe.WebServices.ConsultaCadastro.RetConsCad.InfCad[I].CNPJ);
      Config.WriteString('CONSULTA_CADASTRO_SEFAZ', 'CPF_' + (I + 1).ToString, NFe.WebServices.ConsultaCadastro.RetConsCad.InfCad[I].CPF);
      Config.WriteString('CONSULTA_CADASTRO_SEFAZ', 'UF_' + (I + 1).ToString, NFe.WebServices.ConsultaCadastro.RetConsCad.InfCad[I].UF);
      Config.WriteInteger('CONSULTA_CADASTRO_SEFAZ', 'cSit_' + (I + 1).ToString, NFe.WebServices.ConsultaCadastro.RetConsCad.InfCad[I].cSit);
      Config.WriteInteger('CONSULTA_CADASTRO_SEFAZ', 'indCredNFe_' + (I + 1).ToString, NFe.WebServices.ConsultaCadastro.RetConsCad.InfCad[I].indCredNFe);
      Config.WriteInteger('CONSULTA_CADASTRO_SEFAZ', 'indCredCTe_' + (I + 1).ToString, NFe.WebServices.ConsultaCadastro.RetConsCad.InfCad[I].indCredCTe);
      Config.WriteString('CONSULTA_CADASTRO_SEFAZ', 'xNome_' + (I + 1).ToString, NFe.WebServices.ConsultaCadastro.RetConsCad.InfCad[I].xNome);
      Config.WriteString('CONSULTA_CADASTRO_SEFAZ', 'xFant_' + (I + 1).ToString, NFe.WebServices.ConsultaCadastro.RetConsCad.InfCad[I].xFant);
      Config.WriteString('CONSULTA_CADASTRO_SEFAZ', 'xRegApur_' + (I + 1).ToString, NFe.WebServices.ConsultaCadastro.RetConsCad.InfCad[I].xRegApur);
      Config.WriteInteger('CONSULTA_CADASTRO_SEFAZ', 'CNAE_' + (I + 1).ToString, NFe.WebServices.ConsultaCadastro.RetConsCad.InfCad[I].CNAE);
      Config.WriteDate('CONSULTA_CADASTRO_SEFAZ', 'dIniAtiv_' + (I + 1).ToString, NFe.WebServices.ConsultaCadastro.RetConsCad.InfCad[I].dIniAtiv);
      Config.WriteDate('CONSULTA_CADASTRO_SEFAZ', 'dUltSit_' + (I + 1).ToString, NFe.WebServices.ConsultaCadastro.RetConsCad.InfCad[I].dUltSit);
      Config.WriteDate('CONSULTA_CADASTRO_SEFAZ', 'dBaixa_' + (I + 1).ToString, NFe.WebServices.ConsultaCadastro.RetConsCad.InfCad[I].dBaixa);
      Config.WriteString('CONSULTA_CADASTRO_SEFAZ', 'IEUnica_' + (I + 1).ToString, NFe.WebServices.ConsultaCadastro.RetConsCad.InfCad[I].IEUnica);
      Config.WriteString('CONSULTA_CADASTRO_SEFAZ', 'IEAtual_' + (I + 1).ToString, NFe.WebServices.ConsultaCadastro.RetConsCad.InfCad[I].IEAtual);
      Config.WriteString('CONSULTA_CADASTRO_SEFAZ', 'xLgr_' + (I + 1).ToString, NFe.WebServices.ConsultaCadastro.RetConsCad.InfCad[I].xLgr);
      Config.WriteString('CONSULTA_CADASTRO_SEFAZ', 'nro_' + (I + 1).ToString, NFe.WebServices.ConsultaCadastro.RetConsCad.InfCad[I].nro);
      Config.WriteString('CONSULTA_CADASTRO_SEFAZ', 'xCpl_' + (I + 1).ToString, NFe.WebServices.ConsultaCadastro.RetConsCad.InfCad[I].xCpl);
      Config.WriteString('CONSULTA_CADASTRO_SEFAZ', 'xBairro_' + (I + 1).ToString, NFe.WebServices.ConsultaCadastro.RetConsCad.InfCad[I].xBairro);
      Config.WriteInteger('CONSULTA_CADASTRO_SEFAZ', 'cMun_' + (I + 1).ToString, NFe.WebServices.ConsultaCadastro.RetConsCad.InfCad[I].cMun);
      Config.WriteString('CONSULTA_CADASTRO_SEFAZ', 'xMun_' + (I + 1).ToString, NFe.WebServices.ConsultaCadastro.RetConsCad.InfCad[I].xMun);
      Config.WriteInteger('CONSULTA_CADASTRO_SEFAZ', 'CEP_' + (I + 1).ToString, NFe.WebServices.ConsultaCadastro.RetConsCad.InfCad[I].CEP);
    end;
  finally
    Config.Free;
  end;

 

Valter Patrick

Gerente de Projetos na empresa CTEC

(33)98400-0936

GitHub: https://github.com/valterpatrick

×
×
  • Create New...

Important Information

We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.

The popup will be closed in 10 seconds...