MUNDOSAP

MUNDOSAP (foro/index.php)
-   Programación ABAP IV (foro/forumdisplay.php?f=4)
-   -   Consumir WebService PHP desde ABAP (foro/showthread.php?t=62249)

mant86 16/04/12 19:35:56

Consumir WebService PHP desde ABAP
 
Buenas tardes, amigos les comento el siguiente problema que tengo al consumir dicho webservice:

Webservice: lenguaje PHP
Consumidor: lenguaje ABAP (SAP)

De antemano ya tengo creado el proxy, el cual se creó correctamente, de hecho al probarlo desde la se80 pude verificar que tanto la petición (request) como la respuesta (response) llegan correctamentes estructuradas en el XML definido.

El problema lo tengo al momento de usar la clase que se genera a partir de la creación del proxy. El webservice retornará un arreglo el es mi equivalente a una tabla interna en ABAP.

Luego de crear mi instancia de la clase y ejecutar el método que me retornará el arreglo, primero dicha data viene como tipo de dato XSTRING y la misma me viene(creo que en formato hexadecimal) Ej.3C6715A4537C138476A7263459C data la cual no puede todavía ser interpretada para lo cual use el módulo de función CALL FUNCTION 'ECATT_CONV_XSTRING_TO_STRING', pero el resultado arrojado por el módulo de función es por ej. <wsdl:definitions targetNamespace="urn:http://130.11.2.15/ServerWebService"><wsdl:types><xsd:schema targetNamespace="urn:http://130.11.2.15/ServerWebService">
</xsd:schema>, osea como podrán ver no me esta trayendo la data correcta si no que me esta trayendo parte del xml respuesta.

Por otro lado si el resultado de el método es un string el consumo si se hace correctamente por lo que concluyo:

El problema que tengo es que no se encuentra la forma de realizar un consumo correcto de una función que retorne un arreglo, cabe destacar que en el WSDL el tipo de dato indicado del retorno de la función se le colocó AnyType ya que el proxy daba error si el mismo era de tipo Array.

En espera de una respuesta, muchas gracias de antemano...

jorgef34 04/04/13 23:20:15

hola pudiste consumir tu web service externo?

jmenendez 10/04/13 17:57:50

Clase: CL_XML_DOCUMENT.
Si tenés un Xstring: PARSE_XSTRING.
Si tenés un string: PARSE_STRING.

Instancias el objeto ref cl_xml*
Hacés el parse.
Recorrés el XML con conocimiento de su estructura usando los métodos disponibles.

A brazo


Husos Horarios son GMT. La hora en este momento es 15:42:40.

www.mundosap.com 2006 - Spain
software crm, crm on demand, software call center, crm act, crm solutions, crm gratis, crm web