NO SE QUE ESTOY HACIENDO MAL ME DA ERROR EN TODAS ESTAS LINEAS
cCuit = "20160134322" lVer = .T. cConstancia = .T. ConsultaPadronAFIP(cCuit,lVer,cConstancia) Local cCUIT_URL :='https://soa.afip.gob.ar/sr-padron/v2/persona/' Local cDNI_URL :='https://soa.afip.gob.ar/sr-padron/v2/personas/' Local cConstancia_URL :='https://soa.afip.gob.ar/sr-padron/v1/constancia/' Local oPadron, cTip:='', cResp:='', nLen:=0, hRes, cMsg:='', hData, hDir, aDNIs:={} Local nCuit:='99999999999', cDoc:='Sin identificar', cEstado:='', cNombre:='', cTipDoc:='', nDoc:='' Local cDirec:='', cLocal:='', cCP:='', nProv:='00', cTipo:='' Gracias. Walter Cómito Analista de Sistemas MP 0397 C.P.C.I.P.C. › <mailto:[email protected]> [email protected] <mailto:[email protected]> [email protected] ' +54 9 351 494.4667 +54 9 3513.292.707 þ <http://www.softram.com.ar/> www.softram.com.ar Q Si no es necesario, no imprima este correo. Todos somos responsables por el cuidado del medio ambiente. NOTA DE CONFIDENCIALIDAD Este mensaje (y sus anexos) es confidencial y puede contener información de propiedad exclusiva de Walter Cómito (SRS Sistemas). Si usted ha recibido este mensaje por error, por favor comuníquelo inmediatamente a <mailto:[email protected]> walter.comito@ <http://gmail.com/> gmail.com y tenga la amabilidad de eliminarlo; no deberá copiar el mensaje ni divulgar su contenido a ninguna persona. Muchas Gracias. De: [email protected] [mailto:[email protected]] En nombre de Ramon Giubi Enviado el: jueves, 28 de abril de 2016 12:41 Para: GUFA List Member Asunto: [GUFA] Responder: Consultar CUIT Buenisimo…esa info no la tenia y es mejor que la otra opción que estaba usando. Gracias. Saludos. Ramon Giubi De: [email protected] [mailto:[email protected]] En nombre de Sergio D.Castellari Enviado el: miércoles, 27 de abril de 2016 12:53 Para: GUFA List Member Asunto: [GUFA] Responder: Consultar CUIT Hola Gente, Aqui va como lo hago: *------------------------------------------------------------------------------* * ConsultaPadronAFIP() * * Recibe: cCuit --------> String con el CUIT/DNI a consultar * * lVer == .t. --> Visulualiza datos en pantalla * * .f. --> Solo obtener la data (por Default) * * cConstancia == .t. --> Solicita Constancia (PDF) del CUIT indicado * * .f. --> NO solicita Constancia (por Default) * * Nota: Si cCUIT es un CUIT y lVer == .f. , la función carga un array privado * * llamado: aPadronAFIP[] * *---------------------------------------------------------------- 23-09-2015 --* Function ConsultaPadronAFIP(cCuit,lVer,cConstancia) Local cCUIT_URL :='https://soa.afip.gob.ar/sr-padron/v2/persona/' Local cDNI_URL :='https://soa.afip.gob.ar/sr-padron/v2/personas/' Local cConstancia_URL :='https://soa.afip.gob.ar/sr-padron/v1/constancia/' Local oPadron, cTip:='', cResp:='', nLen:=0, hRes, cMsg:='', hData, hDir, aDNIs:={} Local nCuit:='99999999999', cDoc:='Sin identificar', cEstado:='', cNombre:='', cTipDoc:='', nDoc:='' Local cDirec:='', cLocal:='', cCP:='', nProv:='00', cTipo:='' Default lVer to .f. Default cConstancia to .f. #include "HBCompat.ch" #INCLUDE 'hbxml.ch' #include "Fileio.ch" *** Filtro el String de CUIT/DNI *** cCuit:=AllTrim(StrTran(cCuit,'-','')) If Len(cCuit)<6 .or. Len(cCuit)>11 MsgStop('CUIT/CUIL/DNI: '+cCuit+chr(13)+'erroneo !!!','Verifique...') ; Return .f. EndIf If Len(cCuit)<11 cTip:='D' Else cTip:='C' EndIf *** Si solicita Constancia de Inscripción *** If cTip == 'C' .and. cConstancia == .t. URLInternet(cConstancia_URL + cCuit) ; Return .t. EndIf *** Creo y Válido el objeto de conexión *** oPadron:=Win_OleCreateObject('MSXML2.XMLHTTP') If Empty(oPadron) oPadron:=Nil ; MsgExclamation('NO se pudo acceder al Servidor de la AFIP','Verificaciones de conexión...') ; Return .f. EndIf *** Consulto al Servidor de la AFIP *** TRY If cTip == 'C' //CUIT... If cConstancia == .f. oPadron:Open('GET', cCUIT_URL + cCuit, .F.) ; oPadron:Send() Else *MsgStop(cConstancia_URL + cCuit) *oPadron:Open('GET', cConstancia_URL + cCuit, .F.) *oPadron:setRequestHeader( 'Accept', 'text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8' ) *oPadron:setRequestHeader( 'Accept-Language', 'es-AR,es;q=0.8,en-US;q=0.5,en;q=0.3' ) *oPadron:setRequestHeader( 'Accept-Encoding', 'gzip, deflate' ) *oPadron:setRequestHeader( 'Content-Type', 'application/octet-stream' ) *oPadron:setRequestHeader( 'Connection', 'Keep-Alive' ) *oPadron:Send() EndIf ElseIf cTip == 'D' //DNI... oPadron:Open('GET', cDNI_URL + cCuit, .F. ) ; oPadron:Send() Else oPadron:=Nil ; MsgStop('¡¡ CUIT/DNI no válido !! ','Verifique...') ; Break EndIf CATCH oPadron:=Nil ; MsgStop('¡¡ ERROR !! '+Chr(13)+'Controle conexión a Internet y Reintente...','Verifique conexión...') ; Return .f. END cResp:=oPadron:ResponseText *** Si el status es diferente a 200, ocurrió algún error de conectividad con el WS *** If oPadron:Status <> 200 MsgStop('¡¡ ERROR !! '+Chr(13)+'Status:'+AllTrim(Str(oPadron:Status))+' '+oPadron:StatusText,'Error Enlace AFIP...') oPadron:=Nil ; Return .f. EndIf *** Solicito una Constancia de AFIP *** *If cTip == 'C' .and. cConstancia == .t. * fh:=fcreate('ok-constancia-20227327406-2015-09-23.pdf') * if fh<0 * Ferase(GetCurrentFolder()+'\ok-constancia-20227327406-2015-09-23.pdf') * msgexclamation("Handle create?",'1') * return .f. * endif * fwrite(fh, cResp) * fclose(fh) * MsgStop('ok-constancia-20227327406-2015-09-23.pdf fue creado') * oPadron:=Nil ; Return .t. *EndIf *** Grabo la Respuesta *** MemoWrit('ConsultaPadron.txt',cResp) *** Visualizo en pantalla la Respuesta *** *MsgStop(cResp,'Respuesta AFIP...') //ACTIVAR para hacer DEBUGGER!!!! *** Decodifico jSon (java) *** nLen:=HB_JsonDecode(cResp , @hRes) //AFIP devuelve un archivo en formato Java jSON If !HB_HGET(hRes,'success') oPadron:=Nil ; MsgStop('¡¡ ERROR !!. NO existe persona Fisica/Juridica con ese N°...','Verifique CUIT/CUIL/DNI...') ; Return .f. EndIf If cTip == 'C' //Ingreso CUIT... *** Leo el Hash DATA *** hData:=HB_HGETDEF(hRes,'data',.f.) If Valtype(hData) == 'H' nCuit :=AllTrim(Str(HB_HGETDEF(hData,'idPersona',99999999999))) //N° de CUIT cDoc :=HB_HGETDEF(hData,'tipoClave','Sin identificar') //CUIT/DNI/CUIL cTipo :=HB_HGETDEF(hData,'tipoPersona','') //ACTIVO o INACTIVO cEstado:=HB_HGETDEF(hData,'estadoClave','') //FISICA o JURIDICA cNombre:=HB_HGETDEF(hData,'nombre','') //Apellido y Razon Social cTipDoc:=HB_HGETDEF(hData,'tipoDocumento','') //DNI, LC, etc nDoc :=HB_HGETDEF(hData,'numeroDocumento','') //N° de documento *** Leo el Hash DOMICILIOFISCAL *** hDir:=HB_HGETDEF(hData,'domicilioFiscal',.f.) If Valtype(hDir) == 'H' cDirec:=HB_HGETDEF(hDir,'direccion','') //Calle, Nro. Piso, etc cLocal:=HB_HGETDEF(hDir,'localidad','') //Localidad (no se nombra cuando es Capital) cCP :=HB_HGETDEF(hDir,'codPostal','') //Codigo postal (8 caracteres) nProv :=AllTRim(Strzero(HB_HGETDEF(hDir,'idProvincia',0),2)) //N2 Obtener descripciones a través del recurso /parametros/v1/provincias Endif EndIf If lVer *** Elijo SOLO ver los datos de consulta *** cMsg:='Razon Social: '+cNombre+' ['+cEstado+']'+chr(13) cMsg+=cDoc+' '+nCuit+' ['+cTipo+']'+chr(13) cMsg+='Doc: '+cTipDoc+' '+nDoc+chr(13) cMsg+='Domicilio: '+cDirec+chr(13) cMsg+=cLocal+' CP:'+cCP MsgStop(cMsg,'Respuesta servidor AFIP...') Else *** Cargo array privado aPadronAFIP *** aPadronAFIP[1] :=nCuit aPadronAFIP[2] :=cDoc aPadronAFIP[3] :=cTipo aPadronAFIP[4] :=cEstado aPadronAFIP[5] :=cNombre aPadronAFIP[6] :=cTipDoc aPadronAFIP[7] :=nDoc aPadronAFIP[8] :=cDirec aPadronAFIP[9] :=cLocal aPadronAFIP[10]:=cCP aPadronAFIP[11]:=nProv EndIf Else //Ingreso DNI *** Leo el Hash DATA *** hData:=HB_HGETDEF(hRes,'data',.f.) If Valtype(hData) == 'A' cMsg:='CUIT/CUIL:'+chr(13) For n=1 to Len(hData) cMsg+=AllTrim(Str(hData[n]))+chr(13) Next MsgStop('El DNI ingresado generó:'+chr(13)+chr(13)+cMsg+chr(13)+; 'Puede utilizar este CUIT/CUIL para consultar datos fiscales','Respuesta servidor AFIP...') ELse MsgStop('El DNI ingresado generó un ERROR !!!','Respuesta servidor AFIP...') EndIf EndIf *HB_HGET( <hsTable>, <Key> ) -> <Value> *hb_hGetDef( aHash, Key, DefaultVal ) Return .t. Saludos, Sergio Castellari From: Ing César Luque <mailto:[email protected]> Sent: Tuesday, April 26, 2016 11:27 PM To: GUFA List Member <mailto:[email protected]> Subject: [GUFA] Responder: Consultar CUIT Sergio Aguardamos tu colaboraciòn. Saludos.- Cèsar Luque From: Sergio Castellari -mvl- <mailto:[email protected]> Sent: Tuesday, April 26, 2016 6:38 PM To: GUFA List Member <mailto:[email protected]> Subject: [GUFA] Responder: Consultar CUIT Siiii se puede. AFIP tiene un ws para consultar el estado. Incluso podes obtener el pdf de constancia de inscripción. Ahora no estoy con la compu, pero si me acuerdo cuando llegue, te paso como lo hago. Además, también podes enviar un dni y obtener el cuit desde la afip Saludos, Sergio Castellari Enviado desde mi teléfono inteligente Sony Xperia™ ---- Sergio . escribió ---- Amigos, hay forma de consultar ONLINE si un CUIT de un cliente está en regla con AFIP ? Saludos --- El software de antivirus Avast ha analizado este correo electrónico en busca de virus. https://www.avast.com/antivirus
