Visual Basic - Llamada a servicio web desde visual basic

Life is soft - evento anual de software empresarial
   
Vista:

Llamada a servicio web desde visual basic

Publicado por Javier yakodog40@hotmail.com (2 intervenciones) el 02/07/2015 16:05:03
Buenas tardes,
He montado un servicio web que funciona perfectamente desde el navegador. Sin embargo, cuando realizo la llamada desde visual basic el servicio se ejecuta dos veces, la primera recibe el parametro correctamente, pero en la segunda el parametro esta sin informar y esto hace me me devuelva un valor incorrecto.

Alguien me puede ayudar?

Gracias
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

Llamada a servicio web desde visual basic

Publicado por Juan Gilberto (277 intervenciones) el 03/07/2015 18:13:53
Muestra el codigo del WSDL y del programa donde consumes el WebService
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

Llamada a servicio web desde visual basic

Publicado por yakodog40 (2 intervenciones) el 03/07/2015 18:59:07
Ostras:
al pegar el codigo me he dado cuenta del fallo.
Muchas gracias.

Codigo visual basic:
1
2
3
4
5
6
7
8
Public Function control_proceso_activo() As Integer
        Dim id As Integer = 324551
 
        Dim controlservicioweb = New ServicioWeb.controlprocesosPortTypeClient
        Dim status As Integer =controlservicioweb.control_proceso(id)
        Return status
 
End Function


Codigo del servicio web:


1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
<?php
//nesesario para conexion a mysql
	require("./crm_lib/mysql.php");
	include("./crm_lib/CRM_lib.php");
 
	set_time_limit(0);
 
	ini_set('memory_limit', '-1'); 
 
 
 
//VP 20150430 Afegit per evitar warnings de zona no definida
if( !ini_get('date.timezone') )
{
	date_default_timezone_set('Europe/Madrid');
}
require_once('lib/nusoap.php'); 
$ns="http://localhost/-allamchz/nusoap/";
$server = new nusoap_server;
 
$server->configureWSDL('controlprocesos', $ns);
 
$server->wsdl->schemaTargetNamespace = $ns;
 
//funcion control_proceso
$server->xml_encoding = "utf-8";
$server->soap_defencoding = "utf-8";
$server->register('control_proceso',
			array('idproceso' => 'xsd:int'),  //parameter
			array('return' => 'xsd:int'), $ns
			);
 
 
function control_proceso($idproceso) {
		//por defecto el proceso esta activo
		$statusactivo=-1;
		conecta_mysql("localweb");
		$sqlprocesos="SELECT statusactivo FROM control_procesos";
		$sqlprocesos.=" WHERE idproceso=".$idproceso;
		$result=mysql_query($sqlprocesos);
		//return $statusactivo;
		seguimiento_CRM($sqlprocesos);
		if (mysql_num_rows($result)>0){
			$statusactivo=mysql_result($result, 0,'statusactivo');
		}
 
		//grabamos el acceso en el historico
		$fecha=date("Y-m-d H:i:s");
		$sqlhistorico="INSERT INTO control_procesos_historico (idproceso,fechapeticion) VALUES (".$idproceso.",now())";
		//seguimiento_CRM($sqlhistorico);
		$result=mysql_query($sqlhistorico);
        return new soapval('return','xsd:int',$statusactivo);
}
 
$HTTP_RAW_POST_DATA = isset($HTTP_RAW_POST_DATA) ? $HTTP_RAW_POST_DATA : '';
$server->service($HTTP_RAW_POST_DATA);
?>
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