AYUDA EN LÍNEA
 WINDEVWEBDEV Y WINDEV MOBILE

¡Nueva funcionalidad de WINDEV 2024!
Ayuda / Tutorial WINDEV / Tutorial - Consumir un servicio web
  • ¿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.
Durée de la leçon 10 min
¿Qué es un servicio web?
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.
Ejemplo práctico
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
  1. Vaya a la página de inicio de WINDEV (Ctrl + <).
  2. En la página de inicio, haga clic en "Tutorial", luego en "Tutorial - WINDEV application: Manage data", haga doble clic en "Full application - Answers".
  3. 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".
Importar un servicio web
Para importar un servicio web al proyecto:
  1. 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.
  2. 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.
    Asistente para importar un servicio web
  3. Pase a la etapa siguiente. El servicio web se ha importado correctamente.
    Importación finalizada
  4. Valide la ventana de información. El servicio web importado se encuentra en la carpeta "Servicios web importados" del panel "Explorador de proyectos".
  5. 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":
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:
Llamada a la función
Consumir un servicio web
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:
  1. Abra la ventana "WIN_Menu" en el editor (haga doble clic en la ventana en el panel "Explorador de proyectos", por ejemplo).
  2. 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 Crear un control Botón.
    • Haga clic debajo del botón "Modify".
    • El control se crea automáticamente.
  3. 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?".
      Posición del control Botón 'In stock?'
  4. Valide.
  5. Abra los eventos asociados al control (seleccione "Código" en el menú contextual).
  6. Introduzca el siguiente código WLanguage en el evento "Clic en BTN_InStock":
    // Displays the web service response
    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.
  7. Cierre el editor de código y guarde la ventana (Guardar ventana o Ctrl + S).
Vamos a probar el servicio web:
  1. Pruebe el proyecto (haga clic en Probar proyecto en los botones de acceso rápido).
  2. Haga clic en la pestaña "List of products".
  3. Seleccione un producto en el control Tabla y haga clic en el botón "In stock?".
    Prueba del servicio web
  4. Valide la ventana de información y cierre la aplicación.
En resumen
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:
Tabla de contenido
Versión mínima requerida
  • Versión 2024
Comentarios
Haga clic en [Agregar] para publicar un comentario

Última modificación: 05/12/2023

Señalar un error o enviar una sugerencia | Ayuda local