Jump to content

ACBR CNPJ Erro


BrunoNoe

Recommended Posts

Bom dia, estou com dificuldade em fazer funcionar a busca do CNPJ com o unigui.

Unigui é a versao demo, rodando no servidor da amazon.

 

Erro quando busca o captcha. Retorna "socket error 10091 ssl/tls support is not compiled"

 

Como no meu computador local funciona, imaginei q fosse alguma dll, fiz um programa em VCL so pra fazer a busca do cnpj e coloquei no servidor pra testar e corrigi as dll ate fazer funcionar.

Mas no meu programa em Unigui, coloquei na mesma pasta as dll, mas ele continua me retornando esse erro, teria q fazer mais alguma configuração? Coloquei no System32 e SysWOW64 tambem pra ver se era isso e nada.

Link to comment
Share on other sites

  • 6 months later...
On 2/22/2019 at 8:05 AM, BrunoNoe said:

Bom dia, estou com dificuldade em fazer funcionar a busca do CNPJ com o unigui.

Unigui é a versao demo, rodando no servidor da amazon.

 

Erro quando busca o captcha. Retorna "socket error 10091 ssl/tls support is not compiled"

 

Como no meu computador local funciona, imaginei q fosse alguma dll, fiz um programa em VCL so pra fazer a busca do cnpj e coloquei no servidor pra testar e corrigi as dll ate fazer funcionar.

Mas no meu programa em Unigui, coloquei na mesma pasta as dll, mas ele continua me retornando esse erro, teria q fazer mais alguma configuração? Coloquei no System32 e SysWOW64 tambem pra ver se era isso e nada.

Boa tarde !

 

Estou com problema semelhante, não sei onde colocar as dlls do Acbr lá no servidor da AWS, tentei nas pastas do system32 e wow64, pasta files, mas recebo sempre o erro 500. Você conseguiu resolver seu problema ? Se sim, o que fêz ? Abraço.

Link to comment
Share on other sites

14 hours ago, DellaSavia said:

Boa tarde !

 

Estou com problema semelhante, não sei onde colocar as dlls do Acbr lá no servidor da AWS, tentei nas pastas do system32 e wow64, pasta files, mas recebo sempre o erro 500. Você conseguiu resolver seu problema ? Se sim, o que fêz ? Abraço.

Nao consegui resolver com a ACBR, na epoca uma pessoa me falou que usava um site e que atendia ele, testei e funcionou pra mim, e é gratis dependendo do numero de consultas, a minha é minima.

Site: https://www.receitaws.com.br/

Vou colocar o codigo que usei no botao para te ajudar.

Usar os componentes (tem no delphi)

TRestRequest, TRestClient, TRestResponse

Criar o record TCNPJ

   TCNPJ = record
     Razao: string;
     Fantasia: string;
     Endereco: string;
     Numero: string;
     Complemento: string;
     Bairro: string;
     Cidade: string;
     UF: string;
     CEP: string;
     EndEletronico: string;
     Telefone: string;
   end;

procedure TFrmEmpresaManutencao.spdCNPJClick(Sender: TObject);
var
Url, cCnpj: string;
lErro: boolean;
mCNPJ: TCNPJ;
begin
if Empty(dbCNPJ.Text) then begin
   MensagemShow('CNPJ não pode estar vazio!!');
   dbCNPJ.SetFocus;
   exit;
end;

cCnpj := SubstituirStrTodos(dbCNPJ.Text,'.','');
cCnpj := SubstituirStrTodos(cCNPJ,'/','');
cCnpj := SubstituirStrTodos(cCNPJ,'-','');

Url := 'https://www.receitaws.com.br/v1/cnpj/' + cCnpj;

restClienteCNPJ.BaseURL      := Url;
restClienteCNPJ.ContentType  := 'application/json';
restResponseCNPJ.ContentType := 'application/json';
RESTRequestCNPJ.Params.Clear;
RestResponseCNPJ.ResetToDefaults;
RestRequestCNPJ.Method := rmGet;
lErro := false;
try
   RestRequestCNPJ.Execute;
except
   lErro := true;
end;
if lErro then begin
   MensagemShow('Erro ao buscar CNPJ, tente novamente mais tarde ou confirme se o CNPJ foi digitado corretamente.');
   exit;
end
else begin
   mCNPJ := RetornoDadosCNPJ(RESTResponseCNPJ.JSONText);
   dtm.fdqEmpresaManutNOME.AsString        := mCNPJ.Fantasia;
   dtm.fdqEmpresaManutENDERECO.AsString    := mCNPJ.Endereco;
   dtm.fdqEmpresaManutNUMERO.AsString      := mCNPJ.Numero;
   dtm.fdqEmpresaManutCOMPLEMENTO.AsString := mCNPJ.Complemento;
   dtm.fdqEmpresaManutBAIRRO.AsString      := mCNPJ.Bairro;
   dtm.fdqEmpresaManutCIDADE.AsString      := mCNPJ.Cidade;
   dtm.fdqEmpresaManutUF.AsString          := mCNPJ.UF;
   dtm.fdqEmpresaManutCEP.AsString         := mCNPJ.CEP;
   dtm.fdqEmpresaManutEMAIL.AsString       := mCNPJ.EndEletronico;
   dtm.fdqEmpresaManutTELEFONE.AsString    := mCNPJ.Telefone;
end;

end;

// Função que ira retornar os dados

function RetornoDadosCNPJ(cJson: string): TCNPJ;
var
i: integer;
cAux: string;
begin

// mCNPJ é um TMemo que coloquei pra trazer as informações
FrmPrinc.mCNPJ.Lines.Clear;
FrmPrinc.mCNPJ.Lines.Text := cJson;

result.Razao         := '';
result.Fantasia      := '';
result.Endereco      := '';
result.Numero        := '';
result.Complemento   := '';
result.Bairro        := '';
result.Cidade        := '';
result.UF            := '';
result.CEP           := '';
result.EndEletronico := '';
result.Telefone      := '';

for I := 0 to FrmPrinc.mCNPJ.Lines.Count -1 do begin
   cAux := trim(FrmPrinc.mCNPJ.Lines);
   if pos('"nome"',cAux) > 0 then begin
      cAux := DadoCNPJ(cAux,'nome:');
      result.Razao := cAux;
   end
   else if pos('"fantasia"',cAux) > 0 then begin
      cAux := DadoCNPJ(cAux,'fantasia:');
      result.Fantasia := cAux;
   end
   else if pos('"logradouro"',cAux) > 0 then begin
      cAux := DadoCNPJ(cAux,'logradouro:');
      result.Endereco := cAux;
   end
   else if pos('"numero"',cAux) > 0 then begin
      cAux := DadoCNPJ(cAux,'numero:');
      result.Numero := cAux;
   end
   else if pos('"complemento"',cAux) > 0 then begin
      cAux := DadoCNPJ(cAux,'complemento:');
      result.Complemento := cAux;
   end
   else if pos('"bairro"',cAux) > 0 then begin
      cAux := DadoCNPJ(cAux,'bairro:');
      result.Bairro := cAux;
   end
   else if pos('"municipio"',cAux) > 0 then begin
      cAux := DadoCNPJ(cAux,'municipio:');
      result.Cidade := cAux;
   end
   else if pos('"uf"',cAux) > 0 then begin
      cAux := DadoCNPJ(cAux,'uf:');
      result.UF := cAux;
   end
   else if pos('"cep"',cAux) > 0 then begin
      cAux := DadoCNPJ(cAux,'cep:');
      cAux := SubstituiStr(cAux,'.','');
      cAux := SubstituiStr(cAux,'-','');
      result.CEP := cAux;
   end
   else if pos('"email"',cAux) > 0 then begin
      cAux := DadoCNPJ(cAux,'email:');
      result.EndEletronico := cAux;
   end
   else if pos('"telefone"',cAux) > 0 then begin
      cAux := DadoCNPJ(cAux,'telefone:');
      result.Telefone := cAux;
   end;
end;
end;

// função que fiz so pra facilitar a tirada das informações de todas as tags (telefone, razao, etc)

function DadoCNPJ(cTexto, cTirar: string): string;
var
cAux: string;
begin
cAux := SubstituirStrTodos(cTexto,'"','');
cAux := SubstituiStr(cAux,cTirar,'');
cAux := copy(cAux,1,length(cAux)-1);
result := TrimAll(cAux);
//    "complemento": "APT 03", // assim que vem as respostas, tiro o titulo, as aspas, e retorno so o resultado que quero
end;

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

×
×
  • Create New...