Existe el WS de AFIP para automatizar la consulta de los comprobantes de
compra de esta dirección
http://www.afip.gob.ar/genericos/imprentas/facturas.asp
Constatación de comprobantes emitidos (C.A.I.)
Saludos
From: Juan Calcagno
Sent: Monday, October 07, 2013 10:01 AM
To: GUFA List Member
Subject: [GUFA] Consulta
Hola Cristian,
Como te decía, no es un link que te permita hacer exactamente lo que indicas (a
menos que te haya entendido mal), creo que lo mas cerca que estas es algo
parecido al código que te copio mas abajo y podes correr directamente, la idea
se pasarle al documento el cuita y el capacha, y automatizar el envío lo que te
da como respuesta la constancia que al imprimirias desde la misma pagina.
Como veras es limitado porque tiene al menos un punto flojo (la pag. original
podría cambiar de nombre los elementos)., pero cualquier duda, haceme saber.
Saludos,
Juan Calcagno
***************************
oAfip=CREATEOBJECT("form1")
oAfip.show
READ events
**************************************************
*-- Form: form1 (c:\program files (x86)\microsoft visual foxpro
9\afip.scx)
*-- ParentClass: form
*-- BaseClass: form
*-- Time Stamp: 10/07/13 08:44:05 AM
*
DEFINE CLASS form1 AS form
Top = 0
Left = 0
Height = 527
Width = 839
DoCreate = .T.
Caption = "Form1"
downloadtimeout = 15
Name = "Form1"
ADD OBJECT olecontrol1 AS olecontrol WITH ;
Top = 37, ;
Left = 1, ;
Height = 510, ;
Width = 817, ;
Visible = .F., ;
TabIndex = 5, ;
Enabled = .F., ;
Name = "Olecontrol1",;
OleClass = "Shell.Explorer.2"
ADD OBJECT command1 AS commandbutton WITH ;
Top = 1, ;
Left = 14, ;
Height = 29, ;
Width = 125, ;
Caption = "Cargar Web Page:", ;
TabIndex = 1, ;
Name = "Command1"
ADD OBJECT command2 AS commandbutton WITH ;
Top = 5, ;
Left = 592, ;
Height = 25, ;
Width = 117, ;
Caption = "Enviar Consulta", ;
TabIndex = 4, ;
Name = "Command2"
ADD OBJECT text1 AS textbox WITH ;
Height = 25, ;
Left = 206, ;
TabIndex = 2, ;
Top = 5, ;
Width = 153, ;
Name = "Text1"
ADD OBJECT label1 AS label WITH ;
Alignment = 1, ;
BackStyle = 0, ;
Caption = "CUIT:", ;
Height = 19, ;
Left = 150, ;
Top = 11, ;
Width = 52, ;
TabIndex = 6, ;
Name = "Label1"
ADD OBJECT text2 AS textbox WITH ;
Height = 25, ;
Left = 426, ;
TabIndex = 3, ;
Top = 5, ;
Width = 153, ;
Name = "Text2"
ADD OBJECT label2 AS label WITH ;
Alignment = 1, ;
BackStyle = 0, ;
Caption = "Captcha:", ;
Height = 19, ;
Left = 370, ;
Top = 11, ;
Width = 52, ;
TabIndex = 7, ;
Name = "Label2"
PROCEDURE Load
PUBLIC odoc, ocuit, ocaptcha
ENDPROC
PROCEDURE olecontrol1.NavigateComplete2
*** ActiveX Control Event ***
LPARAMETERS pdisp, url
ENDPROC
PROCEDURE command1.Click
* para que no de el error de js.
thisform.olecontrol1.silent=.t.
thisform.olecontrol1.navigate2("https://seti.afip.gob.ar/padron-puc-constancia-internet/jsp/Constancia.jsp")
lnseconds=SECONDS()
DO WHILE (Thisform.olecontrol1.OBJECT.Busy OR
Thisform.olecontrol1.OBJECT.ReadyState < 3) AND ;
((SECONDS() - lnSeconds) < Thisform.downloadtimeout )
DOEVENTS
ENDDO
WAIT WINDOW NOWAIT "Loaded..."
thisform.olecontrol1.Visible=.t.
thisform.olecontrol1.Enabled=.f.
ENDPROC
PROCEDURE command2.Click
if !thisform.olecontrol1.busy
odoc = thisform.olecontrol1.Document
IF !ISNULL(odoc)
ocuit = odoc.getElementById("cuit")
IF ISNULL(ocaptcha)
WAIT WINDOW "Element 'cuit' does not Exist"
ELSE
ocuit.value = ALLTRIM(thisform.text1.Value)
ENDIF
ocaptcha = odoc.getElementById("captchaField")
IF ISNULL(ocaptcha)
WAIT WINDOW "Element 'captchaField' does not Exist"
ELSE
ocaptcha.value = ALLTRIM(thisform.text2.Value)
ENDIF
oBtn=odoc.getElementById("btnConsultar")
oBtn.click()
lcUrl=thisform.olecontrol1.LocationURL
lnSeconds=SECONDS()
DO WHILE (Thisform.olecontrol1.OBJECT.Busy OR
Thisform.olecontrol1.OBJECT.ReadyState <> 4) AND ;
((SECONDS() - lnSeconds) < Thisform.downloadTimeOut)
DOEVENTS
ENDDO
** si paso a la proxima pagina habilito el browser
IF lcUrl#thisform.olecontrol1.LocationURL
WAIT WINDOW NOWAIT "Imprima la constancia...."
thisform.olecontrol1.Enabled=.t.
ENDIF
ENDIF
** https://seti.afip.gob.ar/padron-puc-constancia-internet/jsp/Constancia.jsp
ELSE
WAIT WINDOW NOWAIT "Form still loading..."
ENDIF
ENDPROC
ENDDEFINE
*
*-- EndDefine: form1
**************************************************
On Oct 7, 2013, at 7:45 AM, Cristian Conte <[email protected]> wrote:
Juan:
o = CREATEOBJECT("Shell.Application")
o.open(https://seti.afip.gob.ar/padron-puc-constancia-internet/ConsultaConstanciaAction.do)
Con esta sintaxis me trae la pagina del afip para que le ingresemos el nro.
de cuit y el captcha, lo que yo quiero hacer es pasarle el nro. de cuit a esta
pagina y que me pase automáticamente a la espera del get del captcha que este
tendría que ser escrito por el operador.
Espero haber expresado la idea que quiero realizar.
Gracias.
Cristian Conte
Visitanos : http://tecnologiayservicios.wordpress.com/
_____ Excelencia Informatica Cristian O. Conte E-mail:
[email protected] Telefonos Movil : 0341-155025469 - 0341-4592174 -
Rosario - Santa Fe - Argentina
De: Juan Calcagno <[email protected]>
Para: GUFA List Member <[email protected]>
Enviado: lunes, 7 de octubre de 2013 0:10
Asunto: [GUFA] Consulta
Cristian,
No entiendo exactamente lo que quedes hacer, pero para manejar
programáticamente todo (sin interfaz de usuario), deberías acceder a una web
api o web service que te permita pasar parámetros, y te devuelva los valores
que buscas, no se si eso existe pero seguro que no es el link que mandaste. Me
confunde pues la validación captcha es algo que si o si necesita una
interacción visual.
Quizás si describieras un poco mas de detalle podríamos encontrar
alternativas…
Saludos
Juan Calcagno
On Oct 3, 2013, at 9:02 PM, Cristian Conte <[email protected]>
wrote:
Pablo, la idea es que el catpcha lo complete el operador, porque seria
desde la carga de un formulario y este se conecte a la pagina del afip y pase
por parámetro el numero de cuit. es para que le quede a la empresa la
constancia de inscripción.
Gracias.
Visitanos : http://tecnologiayservicios.wordpress.com/
_____ Excelencia Informatica Cristian O. Conte E-mail:
[email protected] Telefonos Movil : 0341-155025469 - 0341-4592174 -
Rosario - Santa Fe - Argentina
De: Pablo Pioli <[email protected]>
Para: GUFA List Member <[email protected]>
Enviado: jueves, 3 de octubre de 2013 16:30
Asunto: [GUFA] Consulta
Resolviste el catpcha?
Date: Thu, 3 Oct 2013 11:37:25 -0700
From: [email protected]
Subject: [GUFA] Consulta
To: [email protected]
Necesitaria una ayuda si me pueden informar como puedo hacer, para pasar
como parámetro un nrocuit en la pagina de constancias de cuit de la afip. Desde
esta url. o donde puedo buscar porque no consigo nada útil.
o = CREATEOBJECT("Shell.Application")
o.open(https://seti.afip.gob.ar/padron-puc-constancia-internet/ConsultaConstanciaAction.do)
Gracias.
Cristian Conte
Visitanos : http://tecnologiayservicios.wordpress.com/
_____ Excelencia Informatica Cristian O. Conte E-mail:
[email protected] Telefonos Movil : 0341-155025469 - 0341-4592174 -
Rosario - Santa Fe - Argentina