|
|
|
|
- ¿Qué es un servicio web?
- Ejemplo práctico
- Importar un servicio web
- Consumir un servicio web
- En resumen
Abordaremos los siguientes temas: - ¿Qué es un servicio web?
- Ejemplo práctico:
- Importar un servicio web.
- Consumir un servicio web.
10 min En primer lugar, abordemos el concepto de servicio web. Veamos una definición simple. Un servicio web es un conjunto de puntos de entrada puestos a disposición de los usuarios para completar diversos procesos. Por ejemplo, un servicio de acceso remoto proporciona los procesos para acceder a los datos. El intercambio de datos con un servicio web se realiza en formato XML, a través de los protocolos SOAP (Simple Object Access Protocol) y HTTP. A partir de la descripción WSDL (Web Services Description Language) de este servicio, WINDEV generará automáticamente los tipos y funciones WLanguage que corresponden a la interfaz de programación del servicio web. Para utilizar el servicio web, simplemente utilice las funciones generadas durante la importación. Un servicio web específico de este tutorial le permitirá probar las diferentes operaciones que se pueden realizar en un servicio web. En el proyecto "WD Full Application", el servicio web permite consultar la base de datos de un proveedor para comprobar las existencias de un producto utilizando la referencia. En primer lugar, importaremos el servicio web en el proyecto "WD Full Application" y, a continuación, lo utilizaremos en la aplicación para comprobar la disponibilidad del producto desde una ventana de detalles del producto. Abrir el proyecto de ejemplo - Vaya a la página de inicio de WINDEV (Ctrl + <).
- En la página de inicio, haga clic en "Tutorial", luego en "Tutorial - WINDEV application: Manage data", haga doble clic en "Full application - Answers".
- Si es necesario, seleccione la configuración de proyecto "Ejecutable Windows de 64 bits": en el panel "Explorador de proyectos", en la carpeta "Configuraciones", haga doble clic en "Ejecutable Windows de 64 bits".
Para importar un servicio web al proyecto: - En la pestaña "Proyecto", en el grupo "Proyecto", despliegue "Importar" y seleccione "Un servicio web". El asistente de importación se abre automáticamente. Pase a la etapa siguiente.
- Especifique la dirección a la que debe importarse la descripción WSDL del servicio web:
https://examples.webdev.info/WSTUTORIALV2_WEB/awws/WSTutorialV2.awws?wsdl Recordatorio: El servicio web permite consultar la base de datos de un proveedor para comprobar las existencias de un producto utilizando la referencia.
- Pase a la etapa siguiente. El servicio web se ha importado correctamente.
- Valide la ventana de información. El servicio web importado se encuentra en la carpeta "Servicios web importados" del panel "Explorador de proyectos".
- En el panel "Explorador de proyectos", despliegue la carpeta "Servicios web importados".
Veamos más de cerca los elementos que se muestran en el panel "Explorador de proyectos": La estructura del servicio web está constituida por: - el nombre del servicio web (WSTutorialV2, en este ejemplo),
- el nombre de cada función (ProductInStock, en este ejemplo).
Para ver la sintaxis de llamada del servicio web, haga doble clic en el nombre de la función en el panel "Explorador de proyectos". El editor de código muestra la descripción de la función, con el prototipo para llamar a la función:
En el ejemplo "WD Full Application", la llamada al servicio web se incluirá en la pestaña en la que se muestra la lista de productos. Crearemos un botón "In stock?" para comprobar la disponibilidad del producto a través del servicio web. Para utilizar el servicio web en el proyecto: - Abra la ventana "WIN_Menu" en el editor (haga doble clic en la ventana en el panel "Explorador de proyectos", por ejemplo).
- En la pestaña "List of products", agregue un control Botón:
- En la pestaña "Creación", en el grupo "Controles frecuentes", haga clic en .
- Haga clic debajo del botón "Modify".
- El control se crea automáticamente.
- Cambie las características del control Botón (seleccione "Descripción" en el menú contextual):
- Introduzca el nombre "BTN_InStock" para este control.
- Introduzca el título "In stock?".
- Valide.
- Abra los eventos asociados al control (seleccione "Código" en el menú contextual).
- Introduzca el siguiente código WLanguage en el evento "Clic en BTN_InStock":
InfoBuild("Number of ""%1"" products in stock: %2", COL_Reference, ProductInStock(COL_Reference))
Analicemos este código:- Se llama a la función ProductInStock del servicio web. Este código utiliza el prototipo de la función que se mostró anteriormente en el editor de código.
- La respuesta se muestra en un mensaje.
- Cierre el editor de código y guarde la ventana ( o Ctrl + S).
Vamos a probar el servicio web: - Pruebe el proyecto (haga clic en en los botones de acceso rápido).
- Haga clic en la pestaña "List of products".
- Seleccione un producto en el control Tabla y haga clic en el botón "In stock?".
- Valide la ventana de información y cierre la aplicación.
En este tutorial, vimos cómo importar y utilizar o consumir un servicio web en nuestra aplicación. Para saber más, consulte las siguientes páginas:
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|