Para RafaNet o Alguien que me pueda ayudar
Publicado por ManolitoMex (4 intervenciones) el 12/03/2008 19:02:27
Rafa:
Gracias por tu ayuda, mira lo que necesito hacer es lo siguiente quiero enviar este documento Xml.
<?xml version="1.0"?>
<soap:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">
<soap:Body>
<validarTarjeta xmlns="http://www.openuri.org/" xmlns:val="http://farmacos.com/TarjetasLealtad/layout/ValidarTarjeta.xsd">
<val:ValidarTarjeta>
<val:no_tarjeta>4070100158723</val:no_tarjeta>
<val:id_suc_ejecuta>11</val:id_suc_ejecuta>
<val:id_laboratorio>1</val:id_laboratorio>
<val:id_pc>1</val:id_pc>
<val:no_transaccion>1</val:no_transaccion>
<val:fecha_transaccion>2005-06-28</val:fecha_transaccion>
<val:hora_transaccion>08:44:13</val:hora_transaccion>
</val:ValidarTarjeta>
</validarTarjeta> _
</soap:Body>
</soap:Envelope>
El webservices "ValidarTarjeta.xsd", me regresa otro documento Xml, el programa aplicando lo que me dijiste está codificado de la siguiente manera:
DEFINE VARIABLE hEnviar AS COM-HANDLE NO-UNDO.
DEFINE VARIABLE XML_ValidaTarjeta AS CHARACTER NO-UNDO.
DEFINE VARIABLE cRespuesta AS CHARACTER NO-UNDO.
CREATE "Microsoft.XMLHTTP" hEnviar.
hEnviar:OPEN("POST", "http://farmacos.com/TarjetasLealtad/layout/ValidarTarjeta.xsd", FALSE).
XML_ValidaTarjeta = '<?xml version="1.0"?>' + CHR(13) +
'<soap:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">' + CHR(13) +
'<soap:Body>' + CHR(13) +
'<validarTarjeta xmlns="http://www.openuri.org/" xmlns:val="http://farmacos.com/TarjetasLealtad/layout/ValidarTarjeta.xsd">' + CHR(13) +
'<val:ValidarTarjeta>' + CHR(13) +
'<val:no_tarjeta>4070100158723</val:no_tarjeta>' + CHR(13) +
'<val:id_suc_ejecuta>11</val:id_suc_ejecuta>' + CHR(13) +
'<val:id_laboratorio>1</val:id_laboratorio>' + CHR(13) +
'<val:id_pc>1</val:id_pc>' + CHR(13) +
'<val:no_transaccion>1</val:no_transaccion>' + CHR(13) +
'<val:fecha_transaccion>2008/03/11</val:fecha_transaccion>' + CHR(13) +
'<val:hora_transaccion>12:39:01</val:hora_transaccion>' + CHR(13) +
'</val:ValidarTarjeta>' + CHR(13) +
'</validarTarjeta> ' + CHR(13) +
'</soap:Body>' + CHR(13) +
'</soap:Envelope>'.
OUTPUT TO "c:salida.xml".
PUT UNFORMATTED
XML_ValidaTarjeta SKIP.
OUTPUT CLOSE.
hEnviar:SEND(XML_ValidaTarjeta).
cRespuesta=hEnviar:ResponseText.
OUTPUT TO "c:error.txt".
PUT UNFORMATTED
cRespuesta SKIP.
OUTPUT CLOSE.
RELEASE OBJECT hEnviar.
Utilizo un put para verificar que el archivo Xml, cumpla con estar bien formado, lo abro con el explorador de internet y abre correctamente.
El método "cRespuesta=hEnviar:ResponseText ", me arroja lo siguiente:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<HTML><HEAD><META HTTP-EQUIV="Content-Type" CONTENT="text/html; charset=iso-8859-1">
<TITLE>ERROR: El URL solicitado no se ha podido conseguir</TITLE>
<STYLE type="text/css"><!--BODY{background-color:#ffffff;font-family:verdana,sans-serif}PRE{font-family:sans-serif}--></STYLE>
</HEAD><BODY>
<H2>El URL solicitado no se ha podido conseguir</H2>
<HR noshade size="1px">
<P>
Mientras se intentaba traer el URL:
<A HREF="http://farmacos.com/TarjetasLealtad/layout/ValidarTarjeta.xsd">http://farmacos.com/TarjetasLealtad/layout/ValidarTarjeta.xsd</A>
<P>
Ha ocurrido el siguiente problema:
<BLOCKQUOTE>
Incapaz de determinar la dirección IP a partir
del nombre de la m?ina:
<I>farmacos.com</I>
</BLOCKQUOTE>
<P>
El programa dnsserver ha devuelto el siguiente mensaje:
<BLOCKQUOTE>
Server Failure: The name server was unable to process this query.
</BLOCKQUOTE>
<P>
Esto significa que:
<PRE>
La caché no ha sido capaz de resolver el nombre de máquina
presente en la URL.
Compruebe que la dirección sea correcta.
</PRE>
<BR clear="all">
<HR noshade size="1px">
<ADDRESS>
Generated Wed, 12 Mar 2008 18:32:47 GMT by localhost.localdomain (squid/2.5.STABLE1)
</ADDRESS>
</BODY></HTML>
Necesito su ayuda, gracias de antemano, por cierto hay poca información de Progress sobre este asunto, todo este rollo corre perfectamente desde Visual Basic, con un componente OCX llamada "INET", que por cierto otro tema en que me quiero documentar es en ambientar un OCX desde Progress, si saben algo de esto tambien se los agradecería mucho.
PD. Los desarrolladores de otros lenguajes me dicen que Progress ya esta obsoleto yo les quiero demostrar que no es cierto, hojala y me puedan ayudar.
Gracias por tu ayuda, mira lo que necesito hacer es lo siguiente quiero enviar este documento Xml.
<?xml version="1.0"?>
<soap:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">
<soap:Body>
<validarTarjeta xmlns="http://www.openuri.org/" xmlns:val="http://farmacos.com/TarjetasLealtad/layout/ValidarTarjeta.xsd">
<val:ValidarTarjeta>
<val:no_tarjeta>4070100158723</val:no_tarjeta>
<val:id_suc_ejecuta>11</val:id_suc_ejecuta>
<val:id_laboratorio>1</val:id_laboratorio>
<val:id_pc>1</val:id_pc>
<val:no_transaccion>1</val:no_transaccion>
<val:fecha_transaccion>2005-06-28</val:fecha_transaccion>
<val:hora_transaccion>08:44:13</val:hora_transaccion>
</val:ValidarTarjeta>
</validarTarjeta> _
</soap:Body>
</soap:Envelope>
El webservices "ValidarTarjeta.xsd", me regresa otro documento Xml, el programa aplicando lo que me dijiste está codificado de la siguiente manera:
DEFINE VARIABLE hEnviar AS COM-HANDLE NO-UNDO.
DEFINE VARIABLE XML_ValidaTarjeta AS CHARACTER NO-UNDO.
DEFINE VARIABLE cRespuesta AS CHARACTER NO-UNDO.
CREATE "Microsoft.XMLHTTP" hEnviar.
hEnviar:OPEN("POST", "http://farmacos.com/TarjetasLealtad/layout/ValidarTarjeta.xsd", FALSE).
XML_ValidaTarjeta = '<?xml version="1.0"?>' + CHR(13) +
'<soap:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">' + CHR(13) +
'<soap:Body>' + CHR(13) +
'<validarTarjeta xmlns="http://www.openuri.org/" xmlns:val="http://farmacos.com/TarjetasLealtad/layout/ValidarTarjeta.xsd">' + CHR(13) +
'<val:ValidarTarjeta>' + CHR(13) +
'<val:no_tarjeta>4070100158723</val:no_tarjeta>' + CHR(13) +
'<val:id_suc_ejecuta>11</val:id_suc_ejecuta>' + CHR(13) +
'<val:id_laboratorio>1</val:id_laboratorio>' + CHR(13) +
'<val:id_pc>1</val:id_pc>' + CHR(13) +
'<val:no_transaccion>1</val:no_transaccion>' + CHR(13) +
'<val:fecha_transaccion>2008/03/11</val:fecha_transaccion>' + CHR(13) +
'<val:hora_transaccion>12:39:01</val:hora_transaccion>' + CHR(13) +
'</val:ValidarTarjeta>' + CHR(13) +
'</validarTarjeta> ' + CHR(13) +
'</soap:Body>' + CHR(13) +
'</soap:Envelope>'.
OUTPUT TO "c:salida.xml".
PUT UNFORMATTED
XML_ValidaTarjeta SKIP.
OUTPUT CLOSE.
hEnviar:SEND(XML_ValidaTarjeta).
cRespuesta=hEnviar:ResponseText.
OUTPUT TO "c:error.txt".
PUT UNFORMATTED
cRespuesta SKIP.
OUTPUT CLOSE.
RELEASE OBJECT hEnviar.
Utilizo un put para verificar que el archivo Xml, cumpla con estar bien formado, lo abro con el explorador de internet y abre correctamente.
El método "cRespuesta=hEnviar:ResponseText ", me arroja lo siguiente:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<HTML><HEAD><META HTTP-EQUIV="Content-Type" CONTENT="text/html; charset=iso-8859-1">
<TITLE>ERROR: El URL solicitado no se ha podido conseguir</TITLE>
<STYLE type="text/css"><!--BODY{background-color:#ffffff;font-family:verdana,sans-serif}PRE{font-family:sans-serif}--></STYLE>
</HEAD><BODY>
<H2>El URL solicitado no se ha podido conseguir</H2>
<HR noshade size="1px">
<P>
Mientras se intentaba traer el URL:
<A HREF="http://farmacos.com/TarjetasLealtad/layout/ValidarTarjeta.xsd">http://farmacos.com/TarjetasLealtad/layout/ValidarTarjeta.xsd</A>
<P>
Ha ocurrido el siguiente problema:
<BLOCKQUOTE>
Incapaz de determinar la dirección IP a partir
del nombre de la m?ina:
<I>farmacos.com</I>
</BLOCKQUOTE>
<P>
El programa dnsserver ha devuelto el siguiente mensaje:
<BLOCKQUOTE>
Server Failure: The name server was unable to process this query.
</BLOCKQUOTE>
<P>
Esto significa que:
<PRE>
La caché no ha sido capaz de resolver el nombre de máquina
presente en la URL.
Compruebe que la dirección sea correcta.
</PRE>
<BR clear="all">
<HR noshade size="1px">
<ADDRESS>
Generated Wed, 12 Mar 2008 18:32:47 GMT by localhost.localdomain (squid/2.5.STABLE1)
</ADDRESS>
</BODY></HTML>
Necesito su ayuda, gracias de antemano, por cierto hay poca información de Progress sobre este asunto, todo este rollo corre perfectamente desde Visual Basic, con un componente OCX llamada "INET", que por cierto otro tema en que me quiero documentar es en ambientar un OCX desde Progress, si saben algo de esto tambien se los agradecería mucho.
PD. Los desarrolladores de otros lenguajes me dicen que Progress ya esta obsoleto yo les quiero demostrar que no es cierto, hojala y me puedan ayudar.
Valora esta pregunta


0