Re: [vfp] Consultar RUC - Peru Opciones

198 views
Skip to first unread message

Manuel Zevallos

unread,
Aug 13, 2013, 10:50:51 PM8/13/13
to publice...@googlegroups.com
Estimado estuvo funcionando bien...pero que desde la sunat se cayo hace días....ya no funciona. Sabes que puede estar pasando?
Saludos.
 
Manuel


2012/5/22 YuLSoft <yul...@gmail.com>
Eso mismo.
Saludoss...
*////////
SET SAFETY OFF
LOCAL XRUC AS String
XRUC = "10210138132"

#DEFINE CRLF CHR(13)+CHR(10)
LOCAL oErr as Exception
LOCAL cStr as Character
LOCAL SW AS Boolean
SW = .T.
TRY
        LOCAL loXmlHttp AS Microsoft.XMLHTTP,;
                        lcURL as String,;
                        lcHTML as String,;
                        lcTexto as String,;
                        lcFile as String

        loXmlHttp = CREATEOBJECT("Microsoft.XMLHTTP")
        lcURL = "http://www.sunat.gob.pe/w/wapS01Alias?ruc="+XRUC
        loXmlHttp.open("POST" , lcURL, .F.)
        loXmlHttp.send

        WAIT WINDOW "Espere por favor, obteniendo datos..." NOWAIT
        DO While loXmlHttp.readyState<>4 OR loXmlHttp.status <>200
        ENDDO

        lcHTML = loXmlHttp.Responsetext
        lcTexto = CHRTRAN(ALLTRIM(lcHTML),CHR(10),"")
        */Para los delimitadores
        lcTexto  = STRTRAN(lcTexto, "N&#xFA;mero Ruc. </b> " + xRUC + " -
","RazonSocial:")
        lcTexto  = STRTRAN(lcTexto, "Estado.</b>","Estado:")
        lcTexto  = STRTRAN(lcTexto, "Agente Retenci&#xF3;n IGV.</
strong>","ARIGV:")
        lcTexto  = STRTRAN(lcTexto, "Direcci&#xF3;n.</b><br/>","Direccion:")
        lcTexto  = STRTRAN(lcTexto, "Situaci&#xF3;n.<b> ","Situacion:")
        lcTexto  = STRTRAN(lcTexto, "Tel&#xE9;fono(s).</b><br/>","Telefono:")
        lcTexto  = STRTRAN(lcTexto, "Dependencia.","Dependencia:")
        lcTexto  = STRTRAN(lcTexto, "Tipo.</b><br/> ","TipoPer:")
        lcTexto  = STRTRAN(lcTexto, "DNI</b> : ","DNI:")
        lcTexto  = STRTRAN(lcTexto, "Fecha Nacimiento.</b> ","FechNac:")
        lcTexto  = STRTRAN(lcTexto, SPACE(05),SPACE(01))
        lcTexto  = STRTRAN(lcTexto, SPACE(04),SPACE(01))
        lcTexto  = STRTRAN(lcTexto, SPACE(03),SPACE(01))
        lcTexto  = STRTRAN(lcTexto, SPACE(02),SPACE(01))
        lcTexto  = STRTRAN(lcTexto, CHR(09),"")

        *** RAZON SOCIAL ***
        PosIni = AT("RazonSocial:", lcTexto)+12
        PosFin = AT("<br/></small>", lcTexto)-(AT("RazonSocial:", lcTexto)
+12)
        xRazSocial = SUBSTR(lcTexto,PosIni,PosFin)

        xRazSocial      = STRTRAN(xRazSocial,"&#209;","Ñ")
        xRazSocial  = STRTRAN(xRazSocial , "&#xD1;", "Ñ")
    xRazSocial  = STRTRAN(xRazSocial , "&#193;", "Á")
    xRazSocial  = STRTRAN(xRazSocial , "&#201;", "É")
    xRazSocial  = STRTRAN(xRazSocial , "&#205;", "Í")
    xRazSocial  = STRTRAN(xRazSocial , "&#211;", "Ó")
    xRazSocial  = STRTRAN(xRazSocial , "&#218;", "Ú")
    xRazSocial  = STRTRAN(xRazSocial , "&#xC1;", "Á")
    xRazSocial  = STRTRAN(xRazSocial , "&#xC9;", "É")
    xRazSocial  = STRTRAN(xRazSocial , "&#xCD;", "Í")
    xRazSocial  = STRTRAN(xRazSocial , "&#xD3;", "Ó")
    xRazSocial  = STRTRAN(xRazSocial , "&#xDA;", "Ú")

        lcFile= "Datos_Contribuyente.txt"
        STRTOFILE(xRazSocial+CHR(13)+CHR(10), lcFile)

        *** ESTADO ***
        PosIni = AT("Estado:", lcTexto)+7
        PosFin = (AT("ARIGV", lcTexto)-32)-(AT("Estado:", lcTexto)+7)
        xEst = SUBSTR(lcTexto,PosIni,PosFin)

        STRTOFILE(xEst+CHR(13)+CHR(10) , lcFile,1)

        *** AGENTE RETENEDOR IGV ***
        PosIni = AT("ARIGV:", lcTexto)+18
        PosFin = AT("ARIGV:", lcTexto)+20-(AT("ARIGV:", lcTexto)+18)
        xAR = SUBSTR(lcTexto,PosIni,PosFin)

        STRTOFILE(xAR+CHR(13)+CHR(10), lcFile,1)

        *** DIRECCION ***
        PosIni = AT("Direccion:", lcTexto)+10
        PosFin = AT("</b></small><br/>", lcTexto)-38-(AT("Direccion:",
lcTexto)+10)
        xDir = SUBSTR(lcTexto,PosIni,PosFin)

    xDir = STRTRAN(xDir, "&#209;", "Ñ")
    xDir = STRTRAN(xDir, "&#xD1;", "Ñ")
    xDir = STRTRAN(xDir, "&#193;", "Á")
    xDir = STRTRAN(xDir, "&#201;", "É")
    xDir = STRTRAN(xDir, "&#205;", "Í")
    xDir = STRTRAN(xDir, "&#211;", "Ó")
    xDir = STRTRAN(xDir, "&#218;", "Ú")
    xDir = STRTRAN(xDir, "&#xC1;", "Á")
    xDir = STRTRAN(xDir, "&#xC9;", "É")
    xDir = STRTRAN(xDir, "&#xCD;", "Í")
    xDir = STRTRAN(xDir, "&#xD3;", "Ó")
    xDir = STRTRAN(xDir, "&#xDA;", "Ú")
        STRTOFILE(xDir+CHR(13)+CHR(10), lcFile,1)

        *** SITUACION ***
        PosIni = AT("Situacion:", lcTexto)+10
        PosFin = AT("</b></small><br/>", lcTexto)-(AT("Situacion:", lcTexto)
+10)
        xCond = SUBSTR(lcTexto,PosIni,PosFin)
        STRTOFILE(xCond+CHR(13)+CHR(10), lcFile,1)

        *** TELEFONO ***
        PosIni = AT("Telefono:", lcTexto)+9
        PosFin = AT("Dependencia:", lcTexto)-25-(AT("Telefono:", lcTexto)+9)
        xTelef = SUBSTR(lcTexto,PosIni,PosFin)
        STRTOFILE(xTelef+CHR(13)+CHR(10), lcFile,1)

        *** TIPO DE PERSONA ***
        PosIni = AT("TipoPer:", lcTexto)+8
        PosFin = AT("DNI:", lcTexto)-29-(AT("TipoPer:", lcTexto)+8)
        xTipoPer = SUBSTR(lcTexto,PosIni,PosFin)
        STRTOFILE(xTipoPer+CHR(13)+CHR(10), lcFile,1)

        *** DNI ***
        PosIni = AT("DNI:", lcTexto)+4
        PosFin = AT("FechNac:", lcTexto)-25-(AT("DNI:", lcTexto)+4)
        xDNI = SUBSTR(lcTexto,PosIni,PosFin)
        STRTOFILE(xDNI+CHR(13)+CHR(10), lcFile,1)

        *** FECHA DE NACIMIENTO ***
        PosIni = AT("FechNac:", lcTexto)+8
        PosFin = AT("FechNac:", lcTexto)+18-(AT("FechNac:", lcTexto)+8)
        xFechNac = SUBSTR(lcTexto,PosIni,PosFin)
        STRTOFILE(xFechNac, lcFile,1)


        MODIFY FILE (lcFile)

        RELEASE loXmlHttp

CATCH TO oErr
        cStr = "Error:" + CRLF + CRLF + ;
    "[  Error: ] " + STR(oErr.ErrorNo) + CRLF + ;
        "[  Linea: ] " + STR(oErr.LineNo) + CRLF + ;
        "[  Mensaje: ] " + oErr.Message + CRLF + ;
        "[  Procedimiento: ] " + oErr.Procedure + CRLF + ;
        "[  Detalles: ] " + oErr.Details + CRLF + ;
        "[  StackLevel: ] " + STR(oErr.StackLevel) + CRLF + ;
        "[  Instrucción: ] " + oErr.LineContents
        MESSAGEBOX(cStr,4112,"Error...!!!")
        SW = .F.
ENDTRY

IF SW = .F.
        RETURN .F.
ENDIF

RETURN






--
Atentamente,
 
 
Manuel Zevallos B.
RPM #331278

9-8860-1297 Movistar

 
http://www.solucionesmz.com


Daniel Sánchez

unread,
Aug 15, 2013, 7:33:19 AM8/15/13
to Comunidad de Visual Foxpro en Español
Así es el webservice de consulta de ruc de la SUNAT (Perú) ha tenido sus caídas estos días, pero al parecer desde ayer en la tarde se normalizo la situación.

Saludos
--
Daniel Sánchez Escobar
Investigación y Desarrollo
Reset Software & Sistemas
Móvil +051-949398047
Trujillo - Perú

Manuel Zevallos

unread,
Aug 15, 2013, 10:28:44 AM8/15/13
to publice...@googlegroups.com
Si..parece que ya se restableció....muchas gracias!

Luis Mata

unread,
Aug 15, 2013, 10:40:38 AM8/15/13
to publice...@googlegroups.com
Ufff.. pensando en estas caídas puse como opcional la validación de los datos del cliente...

Manuel Zevallos

unread,
Aug 15, 2013, 12:59:18 PM8/15/13
to publice...@googlegroups.com
Eso me falto!!!!!!!!!! -----...mi proceso daba RUC INVALIDO  a cualquier ruc digitado!!!!.
Reply all
Reply to author
Forward
0 new messages