Dica: Atribuir valores a input do WebBrowser
Posted by Daniel Buona on April 7th, 2009Pessoal, boa noite!
Na dica de hoje iremos aprender como jogar valores para “inputs” dentro de um WebBrowser.
Imagine a seguinte situação (real): seu cliente solicita que seja efetuada a consulta de um determinado CNPJ no SINTEGRA de São Paulo, para um CNPJ conhecido pelo sistema? A principio você criaria uma novo form com o componente WebBrowser acessando a página solicitada:
WebBrowser.Navigate(’http://pfeserv1.fazenda.sp.gov.br/sintegrapfe/sintegra.html’)
Agora, como atribuir o CNPJ e Insc.Estadual nos devidos campos?
Com esse código você fará isso facilmente.
No evento onDocumentComplete do WebBrowser você implemente:
var
FormItem: Variant;
Field: Variant;
FieldName: String;
I,J: Integer;
begin
if WebBrowser.OleObject.Document.all.tags(’FORM’).Length = 0 then
Exit;
for I := 0 to WebBrowser.OleObject.Document.forms.Length - 1 do
begin
FormItem := WebBrowser.OleObject.Document.forms.Item(I);
try
for j := 0 to FormItem.Length - 1 do
begin
//Identifica o campo e seu nome no formulário
Field := FormItem.Item(j);
FieldName := Field.Name;
if FieldName = ‘cnpj’ then // nome do input para o campo CNPJ
Field.Value := edtCNPJ.Text;
if FieldName = ‘ie’ then // nome do input para o campo Inscr.Estadual
Field.Value := edtIE.Text;
end
except
ShowMessage(’Não foi possível identificar os campos para atribuir os valores de CNPJ e IE’);
end;
end;
end
Uma observação, para a atribuição no campo, você precisará identificar o ID do input na página.
Abraços e até a próxima


Recent Comments