Enviar dados para uma pagina web

Delphi

02/04/2010

Boa tarde moçada.

Seguinte... Quando (no meu sistema) vou cadastrar um novo cliente ou fornecedor, antes, faço um acesso no site da receita  http://www.receita.fazenda.gov.br/PessoaJuridica/CNPJ/cnpjreva/Cnpjreva_Solicitacao.asp  e pelo cnpj ou cpf consulto a situação através do site para Emissão de Comprovante de Inscrição e de Situação Cadastral da empresa caso PJ ou a situação do CPF no caso de PF... Implementei através do WebBrowser porem, é necessário digitar os dados do CNPJ no campo CNPJ do site da receita novamente.

Minha dúvida é se alguem sabe como já passar essa informação pro campo CNPJ sem a necessidade de digitá-lo novamente, existe uma maneira de fazer isso?

Outra dúvida é... se teria como após a emissão do comprovante copiar as strings da página que trazem os resultados como: endereço, CNAE, Abertura, Atividade, etc, e já trazer pros edits do sistema pra que o usuário não precise digitar essas informações?

Desde já agradeço.

Márcio M. Camilo
Brasília-DF
Marcio Camilo

Marcio Camilo

Curtidas 0

Respostas

Frost

Frost

02/04/2010

GOSTEI 0
Marcio Camilo

Marcio Camilo

02/04/2010

Frost valeu mesmo pela dica, mas deve ter alguma coisa no site da receita que não deixa colocar o cnpj no campo deles de jeito nenhum. Vamos tentando aqui até conseguir. Valeu.   Att.   Márcio M. Camilo Brasília - DF
GOSTEI 0
Wesley Batista

Wesley Batista

02/04/2010

Olá amigo, implemente esta função FillForm, na sua aplicação e depois utilize a mesma como mostro no click do botão.


function TForm1.FillForm(WebBrowser: TWebBrowser; FieldName: string; Value: string): Boolean;
var
  i, j: Integer;
  FormItem: Variant;
begin
  Result := False;
  //no form on document
  if WebBrowser.OleObject.Document.all.tags('FORM').Length = 0 then
  begin
    Exit;
  end;
  //count forms on document
  for I := 0 to WebBrowser.OleObject.Document.forms.Length - 1 do
  begin
    FormItem := WebBrowser.OleObject.Document.forms.Item(I);

    for j := 0 to FormItem.Length - 1 do
    begin
      try
        if FormItem.Item(j).Name = FieldName then
        begin
          FormItem.Item(j).Value := Value;
          Result := True;
        end;
      except
       // Exit;
      end;
    end;
  end;
end;



usando a função


procedure TForm1.BtnDetranClick(Sender: TObject);
begin
  //CNPJ, é o nome do campo analise o HTML da pagina e irá descobrir o nome.
 
  FillForm(WebBrowser1, 'cnpj', '733334679' );
end;



Espero te ajudado

Um abraço

Wesley Batista
e-mail : wesley@tdstecnologia.com.br
site : www.tdstecnologiarj.com.br

GOSTEI 0
Marcio Camilo

Marcio Camilo

02/04/2010

Olá Wesley, valeu pela tentativa mas já havia utilizado essa função anteriormente, porem, sem sucesso pelo menos no site da receita:  http://www.receita.fazenda.gov.br/PessoaJuridica/CNPJ/cnpjreva/Cnpjreva_Solicitacao.asp mas caso consiga, te agradeço.     Só pra saber, a mesma função funciona beleza aqui:      http://www.receita.fazenda.gov.br/Aplicacoes/ATSPO/Certidao/CndConjuntaInter/InformaNICertidao.asp?Tipo=1'   mas no link que realmente eu preciso (o de cima) não funciona.   Se alguem conseguir, help-me.   Desde já agradeço.   Márcio M. Camilo Brasília-DF
     
GOSTEI 0
POSTAR