Si se dispone de Internet Explorer, puedes usar InternetExplorer.Application
Puedes manejar cualquier objeto de la web, pulsar botones, etc, "simplemente" necesitas el nombre del objeto y el método o data que quieres manipular.
En concreto para la web que expones, algo así.
- Code: Select all Expand view
#include "FiveWin.ch"
FUNCTION main()
LOCAL oIe,oDoc,nPos, oForm, oObj,cName
TRY
oIE:=CreateObject("InternetExplorer.Application")
CATCH
MsgStop('Error al crear el componente InternetExplorer.Application')
RETURN NIL
END
oIE:Navigate( "http://www.sunat.gob.pe/ol-ti-itconsvalicpe/ConsValiCpe.htm" )
HB_IDLESLEEP( 1 )
nPos:=0
WHILE oIE:ReadyState <> 4 .AND. nPos<20
HB_IDLESLEEP( 1 )
nPos++
END
IF nPos>=20
MsgStop('Tiempo de descarga superado')
RETURN NIL
ENDIF
oDoc:=oIE:Document
FOR EACH oForm IN oDoc:Forms
FOR EACH oObj IN oForm:all
TRY
cName:=oObj:Name
CATCH
cName:=''
END
DO CASE
CASE cName=='num_ruc'
oObj:Value:='12345'
CASE cName=='num_docide'
oObj:Value:='98765'
ENDCASE
NEXT
NEXT
oIe:Visible:=.T.
RETURN NIL