Y también faltan los include

 

#include "HBCompat.ch"

#INCLUDE 'hbxml.ch'                                                             
                                                                                
                                                                                
                                  

#include "Fileio.ch"

 

 

From: [email protected] [mailto:[email protected]] On Behalf Of Walter Comito
Sent: jueves, 28 de abril de 2016 16:48
To: GUFA List Member <[email protected]>
Subject: [GUFA] Responder: Consultar CUIT

 

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]>  [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]>  [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

 


 
<https://www.avast.com/sig-email?utm_medium=email&utm_source=link&utm_campaign=sig-email&utm_content=emailclient>
 

Libre de virus.  
<https://www.avast.com/sig-email?utm_medium=email&utm_source=link&utm_campaign=sig-email&utm_content=emailclient>
 www.avast.com 

 

Responder a