Progress - Para RafaNet o Alguien que me pueda ayudar

   
Vista:

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.
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

RE:Para RafaNet o Alguien que me pueda ayudar

Publicado por RafaNet (6 intervenciones) el 14/03/2008 10:25:43
Hola,

Parece que es un problema de que no sabe resolver el nombre de la URL, has probado a ejecutar el mismo codigo desde Visual Basis a ver si funciona??

Saludos
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Para RafaNet o Alguien que me pueda ayudar

Publicado por ManolitoMex (4 intervenciones) el 14/03/2008 22:20:38
Rafa:

Mil gracias, efectivamente fue un error de dedazzzzzzzo.. jejejejej
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Para RafaNet o Alguien que me pueda ayudar

Publicado por Xavi (3 intervenciones) el 12/05/2009 18:11:06
Buenas ManolitoMex.

Estaba intentando encontrar tu correo o alguna forma de ponerme en contacto contigo pero no consigo ver como.

Mi duda o interes era sobre tu post sobre webservices ya que tengo que implementar una aplicacion en progress que los utilice.

Visto tu ejemplo parace bastante sencillo el tema, pero mi duda es en que version estas trabajando, la 10? yo actualmente con la 9.1D.
Tengo entendido que para trabajar con webservices se necesita de la 10 para arriba verdad?
O en caso de que con la 91D se pudiera se necesita configurar algun servicio? ya que por ejemplo tu codigo no me da error de "check syntax" pero al ejecutarlo la sentencia :SEND si da error.

Bueno un saludo.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar