Buenas
¿ Puedes mostrar los datos que te devuelve php ?
Si lo datos de login son correctos y dices que funciona, miraré de hacerlo funcionar con soapUI.
Pero no entiendo como te puede funcionar el ejemplo que pusistes en PHP, cuando el <login> no está correctamente cerrado.
Asesoria Web Servises
Re: Asesoria Web Servises
Saludos
Rafa Carmona ( rafa.thefullARROBAgmail.com___quitalineas__)
Rafa Carmona ( rafa.thefullARROBAgmail.com___quitalineas__)
- wilsongamboa
- Posts: 439
- Joined: Wed Oct 19, 2005 6:41 pm
- Location: Quito - Ecuador
Re: Asesoria Web Servises
Rafa primero gracias por tu interes
aca esta el codigo php que he podido hacer funcionar, con prueba error y ellos los desarrolladores me ayudaron
Este programa se lo invoca asi
"C:\Program Files\VertrigoServ\Php\php.exe " -- 2015-01-01 2016-31-01 100
los parametros de entrada son las dos fechas y el numero de registro
saludos
Wilson
aca esta el codigo php que he podido hacer funcionar, con prueba error y ellos los desarrolladores me ayudaron
Code: Select all
<?php
require_once('lib/nusoap.php');
$wsdlurl = "http://69.20.52.167/eforce/wsInterfacesEc/InterfacesEc3.php?wsdl";
$client = new nusoap_client($wsdlurl, 'wsdl');
$fecha_desde = $argv[1];
$fecha_hasta = $argv[2];
$nRegistros = $argv[3];
$client->soap_defencoding = 'UTF-8';
$client->decode_utf8 = true;
$function = 'getDetallePedido';
$cad = "<login>
<servidorBaseDatos>www.ecom.com.co</servidorBaseDatos>
<nombreBaseDatos>natsilepru</nombreBaseDatos>
<usuarioBaseDatos>pedidos@natsilepru</usuarioBaseDatos>
<claveBaseDatos>Ecom2015</claveBaseDatos>
<fechaInicial>".$fecha_desde."</fechaInicial>
<fechaFinal>".$fecha_hasta."</fechaFinal>
<limiteRegistros>".$nRegistros."</limiteRegistros>
<offset>0</offset>
<login>";
$params = array('parametros' => $cad);
$result = $client->call($function,$params);
$err = $client->getError();
if ($err != "")
{
echo $err;
}
$array = json_decode($result);
$file = fopen("his_pedi.txt","w");
for ($i=0;$i<count($array);$i++)
{
//$codigocliente=$array[$i]->codigocliente;
//$nombrecliente=$array[$i]->nombrecliente;
echo $fecha_desde."->".$fecha_hasta.PHP_EOL;
fwrite($file, $array[$i]->codigopedido.";".
$array[$i]->codigoproducto.";".
$array[$i]->cantidad.";".
$array[$i]->valorunitario.";".
$array[$i]->tipoproducto.";".
$array[$i]->porcentajeiva.";".
$array[$i]->porcentajedescuento.";".
PHP_EOL );
}
fclose($file);
?>
"C:\Program Files\VertrigoServ\Php\php.exe " -- 2015-01-01 2016-31-01 100
los parametros de entrada son las dos fechas y el numero de registro
saludos
Wilson
Wilson 'W' Gamboa A
Wilson.josenet@gmail.com
Wilson.josenet@gmail.com
- wilsongamboa
- Posts: 439
- Joined: Wed Oct 19, 2005 6:41 pm
- Location: Quito - Ecuador
Re: Asesoria Web Servises
Me olvide debes instalar la libreria nusoap bajandola desde sorceforge
saludos
Wilson
saludos
Wilson
Wilson 'W' Gamboa A
Wilson.josenet@gmail.com
Wilson.josenet@gmail.com
- wilsongamboa
- Posts: 439
- Joined: Wed Oct 19, 2005 6:41 pm
- Location: Quito - Ecuador
Re: Asesoria Web Servises
perdon la linea de comandos es
"C:\Program Files\VertrigoServ\Php\php.exe " -f prueba.php -- 2015-01-01 2016-31-01 100
saludos
Wilson
"C:\Program Files\VertrigoServ\Php\php.exe " -f prueba.php -- 2015-01-01 2016-31-01 100
saludos
Wilson
Wilson 'W' Gamboa A
Wilson.josenet@gmail.com
Wilson.josenet@gmail.com
Re: Asesoria Web Servises
Buenos dias
Sorry , pero si con soapUI no funciona, no puedo ver exactamente que ocurre..
Te pego la llamada que se hace desde soapUI, a ver si puedes comentarles DONDE esta error.
Según las especificaciones , que monta automaticamente sopaUI.
Sorry , pero si con soapUI no funciona, no puedo ver exactamente que ocurre..
Te pego la llamada que se hace desde soapUI, a ver si puedes comentarles DONDE esta error.
Según las especificaciones , que monta automaticamente sopaUI.
Code: Select all
<soapenv:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:urn="urn:InterfazEc">
<soapenv:Header/>
<soapenv:Body>
<urn:getDetallePedido soapenv:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/">
<parametros xsi:type="xsd:string"><login>
<servidorBaseDatos>www.ecom.com.co</servidorBaseDatos>
<nombreBaseDatos>natsilepru</nombreBaseDatos>
<usuarioBaseDatos>pedidos@natsilepru</usuarioBaseDatos>
<claveBaseDatos>Ecom2015</claveBaseDatos>
<fechaInicial>2015-01-01</fechaInicial>
<fechaFinal>2016-31-01</fechaFinal>
<limiteRegistros>10</limiteRegistros>
<offset>0</offset>
</login></parametros>
</urn:getDetallePedido>
</soapenv:Body>
</soapenv:Envelope>
Saludos
Rafa Carmona ( rafa.thefullARROBAgmail.com___quitalineas__)
Rafa Carmona ( rafa.thefullARROBAgmail.com___quitalineas__)
Re: Asesoria Web Servises
Buenas
Esto no soluciona la cuestión anterior, ver exactamente que es lo que envia PHP, pero esta solución, otra más, lo que hace es no
depender de terceros, haciendo portable el codigo a otras plataformas, GNU/Linux, Android, etc..
usando simplemente las clases que nos provee Harbour.
Esto no soluciona la cuestión anterior, ver exactamente que es lo que envia PHP, pero esta solución, otra más, lo que hace es no
depender de terceros, haciendo portable el codigo a otras plataformas, GNU/Linux, Android, etc..
usando simplemente las clases que nos provee Harbour.
Code: Select all
#require "hbtip"
Funtion SendSoap()
LOCAL oHttp, cResponse := ""
Local cXml := [<?xml version="1.0" encoding="UTF-8"?> ]+;
[<soapenv:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:urn="urn:InterfazEc">]+;
[ <soapenv:Header/>]+;
[ <soapenv:Body>]+;
[ <urn:getMarca soapenv:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/">]+;
[ <parametros xsi:type="xsd:string"><login>]+;
[ <servidorBaseDatos>www.ecom.com.co</servidorBaseDatos>]+;
[ <nombreBaseDatos>natsilepru</nombreBaseDatos>]+;
[ <usuarioBaseDatos>pedidos@natsilepru</usuarioBaseDatos>]+;
[ <claveBaseDatos>Ecom2015</claveBaseDatos>]+;
[ <fechaInicial>2016-01-01</fechaInicial> ]+;
[ <fechaFinal>2016-01-30</fechaFinal>]+;
[ <limiteRegistros>10</limiteRegistros>]+;
[ <offset>0</offset>]+;
[ </login></parametros>]+;
[ </urn:getMarca>]+;
[ </soapenv:Body>]+;
[ </soapenv:Envelope>]
oHttp := TIPClientHTTP():new( "http://69.20.52.167/eforce/wsInterfacesEc/InterfacesEc3.php" )
oHttp:nConnTimeout := 20000
/* Connect to the HTTP server */
IF ! oHttp:open( )
Alert( "Connection error:", oHttp:lastErrorMessage() )
RETURN ""
ENDIF
oHttp:hFields["Content-Type"] := "text/xml;charset=UTF-8"
oHttp:hFields["Connection:"] := "Keep-Alive"
oHttp:hFields["SOAPAction:"] := "urn:InterfazEc#getMarca"
if oHttp:post( cXML )
cResponse := oHttp:readAll()
endif
oHttp:close()
RETURN cResponse
Saludos
Rafa Carmona ( rafa.thefullARROBAgmail.com___quitalineas__)
Rafa Carmona ( rafa.thefullARROBAgmail.com___quitalineas__)
- wilsongamboa
- Posts: 439
- Joined: Wed Oct 19, 2005 6:41 pm
- Location: Quito - Ecuador
Re: Asesoria Web Servises
Rafa muchas gracias por tus esfuerzos
Pues ami solo me ha funcionado con php
nunca he trabajado con php solo he armado algo simple que llama desde lineas de comandos y genera un .txt que leeré desde harbour con eso por el momento me es suficiente, me preocupa en adelante cuando tenga yo que grabar en el WS
saludos y gracias
Wilson
pd: He probado el ejemplo y siempre me devuelve el error servidorBaseDatos Incorrecto
Pues ami solo me ha funcionado con php
nunca he trabajado con php solo he armado algo simple que llama desde lineas de comandos y genera un .txt que leeré desde harbour con eso por el momento me es suficiente, me preocupa en adelante cuando tenga yo que grabar en el WS
saludos y gracias
Wilson
pd: He probado el ejemplo y siempre me devuelve el error servidorBaseDatos Incorrecto
Wilson 'W' Gamboa A
Wilson.josenet@gmail.com
Wilson.josenet@gmail.com