
Hola comunidad SAP Build 😊
El año pasado he creado un Guía sobre cómo integrar SAP Build Apps y SAP Build Process Automation. He decidido crear una segunda versión que es mucho más fácil e intuitiva (en mi opinión). Como algunos de ustedes recordarán, en realidad usamos AppGyver Classic y consumimos una API de flujo de trabajo que se expuso a través de la gestión de API. En este blog, le mostraré cómo puede usar BTP Destination para conectar SAP Build Apps y la automatización de SAP Build Process. No solo es más fácil, sino también más seguro y escalable.
Motivación
SAP Build Process Automation es uno de los miembros más recientes de la cartera LCNC de SAP y es la plataforma de construcción central para el desarrollo, las mejoras y la automatización de procesos. SAP Build Process Automation combina las capacidades de SAP Workflow Management y SAP Intelligent Robotic Process Automation en una experiencia basada en IA fácil de usar y sin código. La nueva solución permite a las organizaciones de todos los tamaños:
En este blog, le mostraré cómo puede combinar ambos mundos, la automatización de procesos y la composición de aplicaciones. Vamos a crear una aplicación de creación de aplicaciones sencilla para crear socios comerciales. Una instancia de flujo de trabajo creada en SAP Process Automation se ocupará de las actividades del proceso, como obtener los pasos de aprobación y publicarlos en los sistemas back-end. Esta aplicación puede ser utilizada por personas de negocios para generar una solicitud de aprobación simple para cualquier tipo de área comercial o industria.
Tenga en cuenta que la complejidad del escenario se reduce en este blog para demostrar la integración entre ambos componentes.
requisitos previos:
Empezando:
Para reconstruir este tutorial, necesita una instancia de servicio SPA y una clave de servicio correspondiente. Puede encontrar la instancia de servicio en la sección Instancias y suscripciones de su subcuenta BTP.
Puede generar manualmente una instancia de servicio o usar el refuerzo para activar SAP Build Process Automation. Si ya tiene la instancia de servicio o la acaba de crear, compruebe si también ha creado una clave de servicio.
Toda la información para llamar al disparador API está disponible en la clave de servicio. Por lo tanto, abra la clave de servicio y utilice la siguiente información:
Después de crear una instancia de servicio y una clave de servicio, puede comenzar generando su primer flujo de trabajo dentro de SPA. Lo mantuve muy simple y usé un formulario de aprobación simple que aparece en mi bandeja de entrada para aprobar la creación de un socio comercial. Si lo desea, puede ampliar su flujo de trabajo con actividades adicionales, reglas comerciales e incluso RPA-Bots. Aquí puedes ver una captura de pantalla de mi proceso:
No vamos a utilizar Form-Trigger sino la API para iniciar el flujo de trabajo. Haga clic en el lienzo en blanco y agregue los parámetros de entrada necesarios que necesitamos para nuestra lógica comercial. Aquí puede ver un ejemplo de mis entradas de proceso para socios comerciales. Usaremos esta información más adelante en el tutorial para especificar la carga útil de AppGyver:
Agregué todos los valores de entrada en mi formulario de aprobación después. Debe asegurarse de asignar los datos de salida de la API a los datos de entrada del formulario de aprobación. Si no lo hace, Process Automation le dará un error:
Si todo está configurado correctamente, puede comenzar a implementar el flujo de trabajo. Clickea en el Liberar arriba a la derecha y defina una versión del proyecto. Clickea en el Desplegar botón después y el proceso se puede utilizar productivamente. Si se hace correctamente, puede ver el flujo de trabajo implementado en su aplicación de monitoreo. Vaya al lobby del proceso y navegue hasta el Supervisión pestaña, navegue hasta Administrar y seleccione Procesos y Workflows. Busque su flujo de trabajo y copie su identificacion de procesoporque lo necesitamos más adelante para activar la API.
Para esta demostración, necesita la solicitud posterior para iniciar una instancia de flujo de trabajo en combinación con una solicitud de token de portador. Como de costumbre, las API de flujo de trabajo están protegidas por OAuth, por lo que debe pasar un Portador de autorización como encabezado. Siempre recomiendo probar las API en Cartero antes de intentar implementarlos. Aquí puede ver un ejemplo de mis servicios API, incluida la autorización necesaria, los parámetros de consulta, los encabezados de solicitud y la carga útil:
API para recuperar el token de portador para autenticación (para eu10)
Solicitud GET:
https://
Autorización: autenticación básica
Nombre de usuario
Contraseña
Parámetros de consulta: grant_type client_credentials
API para iniciar Workflow-Instance (para eu10)
Post-solicitud:
https://spa-api-gateway-bpi-eu-prod.cfapps.eu10.hana.ondemand.com/workflow/rest/v1/workflow-instances
Encabezados de solicitud:
Cuerpo de la solicitud:
{ "definitionId": " eu10.scpsubaccount.bpworkflow.businessPartnerWorkflow", "context": {
"country": "DE",
"bpcat": "2",
"city": "Walldorf",
"pcode": "69190",
"street": "Dietmar-Hopp-Allee 16",
"organization": "SAP"
}
}
Crear el Destino
Ahora podemos comenzar a usar RESTful-API para crear su propio destino dentro de la subcuenta BTP. Los destinos son bloques de construcción clave en SAP BTP y se utilizan para definir conexiones para la comunicación saliente desde su aplicación a sistemas remotos. Estos sistemas remotos pueden estar en las instalaciones o en la nube. Usaremos este concepto fundamental para integrar tanto Build Apps como Build Process Automation.
Navegue a su subcuenta y haga clic en Destino en la pestaña izquierda y crea un Nuevo destino.
Una vez que el Destino en blanco esté disponible, debe ingresar la información necesaria para invocar la Llamada API:
Nombre:
Tipo: HTTP
URL: https://spa-api-gateway-bpi-eu-prod.cfapps.eu10.hana.ondemand.com/workflow/rest/v1/workflow-instances
Autenticación: OAuth2ClientCredentials
ID de cliente:
Secreto del cliente:
URL del servicio de token: https://
Propiedades adicionales:
AppgyverEnabled: verdadero
HTML5.DynamicDestination: verdadero
sap.processautomation.enabled: verdadero
WebIDE Habilitado: verdadero
Si ha introducido todos los datos relevantes, puede hacer clic en Ahorrar. Si prueba la conexión directamente dentro de la subcuenta, puede suceder que reciba un error de autenticación, pero no se preocupe, no es un problema y el destino aparecerá más tarde en Build Apps.
Construyendo la aplicación:
Ahora es el momento de construir la aplicación. Para ello, vamos a utilizar SAP Build Apps. Build Apps es un entorno de programación visual en BTP donde los desarrolladores ciudadanos y los desarrolladores profesionales pueden crear software personalizado listo para la empresa sin escribir código. Aquí puede obtener más información sobre el servicio en sí. Una vez que haya configurado su cuenta (ya sea edición empresarial o versión de prueba), puede comenzar a trabajar en sus propios proyectos de aplicaciones. Para ello, debe hacer clic en el botón Crear nuevo Botón, dale un nombre a tu proyecto y listo. Se abre el espacio de trabajo de su aplicación y obtiene acceso a Composer Pro.
Al trabajar con Composer Pro, pasará la mayor parte de su tiempo en el creador de aplicaciones.
Te permite:
Lo primero que debe hacer es configurar la estructura de datos y la integración de back-end. Para esto tienes que hacer clic en Datos en el panel superior y haga clic en Entidades de datos clásicas de SAP AppGyver y seleccione Integración de API REST de destino BTP de SAP.
Aquí tienes la posibilidad de añadir el nombre del recurso de datos, este puede ser cualquier nombre que prefiera. Y tienes que seleccionar el Destino que has creado previamente en el menú desplegable.
Cuando haces clic en AÑADIR NUEVO en el esquema de recursos, puede agregar todos los datos de carga útil relevantes que espera el flujo de trabajo. Haga clic en este campo e ingrese el Nombre del campo para cada entidad de datos que hayamos creado en Build Process Automation y seleccione cualquier como el tipo de campo.
Una vez que lo haya hecho para las seis entidades, su fuente de datos debería verse así:
Ahora debe ir a la crear pestaña en el lado izquierdo y actívelo. Aquí debe hacer clic en el botón X de Encabezados de solicitud para añadir algo de información:
Seleccionar lista de valores:
Haga clic en agregar un valor y defina una nueva especificación de encabezado. Este encabezado sería necesario para invocar la API-Call:
Nombre del encabezado: Tipo de contenido
Valor del encabezado: aplicación/json
Después de hacer clic en seguro, debe seleccionar solicitar mapeador de cuerpo:
Haga clic en formulario y luego haga clic en Crear formulario:
En el diseñador de formularios, debe ingresar el siguiente valor
ENCODE_JSON({ "definitionId": "<your_workflow_definitionID ", "context": query.record })
y haga clic en ahorrar.
Una vez que haya terminado, su recurso de datos debería verse así y puede hacer clic en el Prueba pestaña:
Ingrese algunos datos de prueba y podrá verificar si la integración está funcionando:
Ahora, después de terminar la parte de integración de datos, puede volver a la aplicación y cambiar el diseño de Vista a Variables donde puede comenzar a agregar variables de datos a la lógica de la aplicación. Ir a la pestaña Variables de datos y agregue dos variables de su esquema de datos ya existente. Agregar Integración de flujo de trabajo1 como un recurso de datos y definirlo como un nuevo registro de datos. Guárdelo y ahora puede comenzar a trabajar en la interfaz de usuario de la aplicación:
Aquí hay un ejemplo de cómo creé mi interfaz de usuario. Es muy simple ya que solo sirve para crear socios comerciales. he seleccionado campos de entrada como un componente de interfaz de usuario del mercado y lo agregó cinco veces dentro de un contenedor. También he añadido un campo desplegable para valores preseleccionados para aumentar la experiencia del usuario.
Como último paso, debe agregar un botón de los componentes de la interfaz de usuario y agregarlo en la parte inferior de su aplicación. Nombré mi botón Enviar socio comercial y le agregué algo de lógica haciendo clic en muestra la lógica para el BOTÓN 1. En el mercado de funciones de flujo, he agregado la función Obtener registro a mi flujo. Luego hay que agregar la función Crear registro al flujo Aquí puede ser un poco complicado. Definir Integración de flujo de trabajo como el nombre del recurso.
Ahora puede agregar las propiedades de registro donde necesita hacer la asignación entre las variables de datos y los campos de entrada. Aquí es muy importante que seleccione Objeto con propiedades -> propiedades del componente -> otra propiedad del componente o valor de salida como el tipo de vinculación y conecte cada atributo al elemento de la interfaz de usuario correspondiente de la misma manera que puede ver en la captura de pantalla.
Pruebe su flujo de trabajo:
Si eso ha terminado y ha guardado su proyecto, puede comenzar a probarlo y ver si funciona. Haga clic en Lanzamiento en el panel superior y seleccione abrir el portal de vista previa de la aplicación donde puede abrir su aplicación dentro de su navegador.
La actividad de flujo de trabajo creada por AppGyver ahora debería estar disponible en su aplicación MyInbox, lista para que la apruebe. SAP Process Automation utiliza el servicio Fiori Launchpad estándar para el acceso al sistema. Dependiendo de cómo haya creado la interfaz de usuario de los formularios, todos los datos de contexto ahora están disponibles en su bandeja de entrada.
Como ya mencioné, este es un ejemplo muy básico de cómo se pueden combinar ambos mundos, la automatización de procesos y la composición de aplicaciones. Puede crear escenarios mucho más extensos y complejos con ambas herramientas LCNC de nuestra plataforma.
¡Manténganse al tanto!
Gracias Joaquín Recio Huertas ¡tu apoyo!
Calle Eloy Gonzalo, 27
Madrid, Madrid.
Código Postal 28010
Paseo de la Reforma 26
Colonia Juárez, Cuauhtémoc
Ciudad de México 06600
Real Cariari
Autopista General Cañas,
San José, SJ 40104
Av. Jorge Basadre 349
San Isidro
Lima, LIM 15073