versión 8.1.0 ibm openpages with...

74
IBM OpenPages with Watson Versión 8.1.0 Guía del creador de procesos de negocio de OpenPages IBM

Upload: others

Post on 12-Jul-2020

2 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Versión 8.1.0 IBM OpenPages with Watsonpublic.dhe.ibm.com/software/data/cognos/documentation/openpage… · La IBM OpenPages with Watson - Guía del creador de procesos de negocio

IBM OpenPages with WatsonVersión 8.1.0

Guía del creador de procesos de negociode OpenPages

IBM

Page 2: Versión 8.1.0 IBM OpenPages with Watsonpublic.dhe.ibm.com/software/data/cognos/documentation/openpage… · La IBM OpenPages with Watson - Guía del creador de procesos de negocio
Page 3: Versión 8.1.0 IBM OpenPages with Watsonpublic.dhe.ibm.com/software/data/cognos/documentation/openpage… · La IBM OpenPages with Watson - Guía del creador de procesos de negocio

Contenido

Introducción..........................................................................................................v

Capítulo 1. Descripción general ............................................................................. 1

Capítulo 2. Kit de herramientas de la plataforma OpenPages.................................. 3Recursos del kit de herramientas de la plataforma OpenPages................................................................ 3

Capítulo 3. Kit de herramientas de soluciones de OpenPages..................................5Recursos del kit de herramientas de soluciones de OpenPages................................................................5

Capítulo 4. Servicios de integración de OpenPages................................................. 7OPAssociateChildren................................................................................................................................... 7OPAssociateParents.....................................................................................................................................7OPCopyObjects ........................................................................................................................................... 7OPCreateObject........................................................................................................................................... 8OPDeleteObject............................................................................................................................................8OPDissociateChildren.................................................................................................................................. 8OPDissociateParents................................................................................................................................... 9OPExecuteReportFragment......................................................................................................................... 9OPGenericObjectQuery................................................................................................................................9OPGetBaseURL.......................................................................................................................................... 10OPGetChildAssociations............................................................................................................................10OPGetEnumeratedValues ......................................................................................................................... 10OPGetObject.............................................................................................................................................. 11OPGetParentAssociations......................................................................................................................... 11OPHierarchicalAssigneeQuery.................................................................................................................. 11OPHierarchicalQuery................................................................................................................................. 12OPLaunchChildProcesses..........................................................................................................................13OPLockObject.............................................................................................................................................14OPMakeAddNewLink ................................................................................................................................ 14OPMakeDetailLink......................................................................................................................................14OPMakeDocumentLink.............................................................................................................................. 15OPMoveObjects..........................................................................................................................................15OPPerformRESTGet................................................................................................................................... 15OPUnlockObject.........................................................................................................................................16OPUpdateObject ....................................................................................................................................... 16Filtro de equipo por campo de objeto....................................................................................................... 16

Capítulo 5. Ejemplos de creación de procesos.......................................................19Utilización del servicio humano del lado de cliente OPObjectSelection .................................................19Asignación de una tarea de procesos en función de un valor de campo ................................................ 20Adición de campos de texto enriquecido a una página de coach............................................................ 21Adición de uno o varios campos enumerados a una página de coach .................................................... 22Adición de campos enumerados con una lista de selección dependiente a una página de coach.........23Adición de campos calculados a una página de coach ............................................................................25Adición de campos Propietario a una página de coach............................................................................ 25Adición de un enlace a una página Detalles de OpenPages en una página de coach ............................ 28Adición de un enlace a un informe Cognos en una página de coach .......................................................30Adición de adjuntos a archivo a una página de coach.............................................................................. 31Descarga de adjuntos a archivo en páginas de coach.............................................................................. 32

iii

Page 4: Versión 8.1.0 IBM OpenPages with Watsonpublic.dhe.ibm.com/software/data/cognos/documentation/openpage… · La IBM OpenPages with Watson - Guía del creador de procesos de negocio

Creación de objetos de OpenPages con un servicio de integración.........................................................34Actualización de objetos de OpenPages con un servicio humano del lado de cliente ........................... 36Utilización de recursos de localización..................................................................................................... 38Definición de procesos jerárquicos básicos..............................................................................................39

Definición de un proceso hijo...............................................................................................................39Definición de un proceso padre........................................................................................................... 40

Definición de procesos jerárquicos avanzados ........................................................................................43Definición de un proceso padre para que utilice OPLaunchChildProcesses...................................... 44Ampliación de un proceso padre de modo que espere a que se completen los procesos hijo.........45

Recuperación de una lista de objetos hijo................................................................................................ 50Bloqueo y desbloqueo de objetos.............................................................................................................51Envío de notificaciones por correo electrónico ........................................................................................52Finalización de un proceso en ejecución.................................................................................................. 55

Capítulo 6. Mensajes de error y manejo................................................................ 57Mensajes de error emitidos por servicios de integración.........................................................................57Adición del manejo de errores a un servicio humano del lado de cliente................................................58

Avisos................................................................................................................. 61

Índice................................................................................................................. 65

iv

Page 5: Versión 8.1.0 IBM OpenPages with Watsonpublic.dhe.ibm.com/software/data/cognos/documentation/openpage… · La IBM OpenPages with Watson - Guía del creador de procesos de negocio

Introducción

Puede utilizar IBM® Business Process Manager para desarrollar e implementar soluciones de procesos denegocio automatizados que satisfagan las necesidades y los requisitos de IBM OpenPages with Watson.

Público

La IBM OpenPages with Watson - Guía del creador de procesos de negocio está orientada a creadores deprocesos de negocio. Estos usuarios desarrollan soluciones de flujo de trabajo y comprenden laintegración entre IBM OpenPages with Watson e IBM Business Process Manager.

Lea la información importante en relación con la documentación de IBM OpenPages with Watson quefigura a continuación.

IBM mantiene un conjunto de documentación que da servicio a los despliegues de IBM OpenPages withWatson en local y en la nube. La documentación de IBM OpenPages with Watson describe determinadascaracterísticas y funciones que no están disponibles en la nube. Por ejemplo, IBM OpenPages withWatson on Cloud no incluye la integración con IBM Business Process Manager y determinadas funcionesadministrativas.

Si tiene alguna pregunta sobre las funciones disponibles en la versión del producto que utiliza, póngaseen contacto con el servicio de soporte de IBM OpenPages a través de IBM Support Community.

Búsqueda de información

Para encontrar documentación del producto en la web, incluida la documentación traducida, acceda alIBM Knowledge Center (http://www.ibm.com/support/knowledgecenter).

Funciones de accesibilidad

Las funciones de accesibilidad ayudan a los usuarios que tienen alguna discapacidad física, por ejemplomovilidad restringida o visión limitada, a utilizar productos de tecnología de la información. Ladocumentación de IBM OpenPages with Watson tiene funciones de accesibilidad. Los documentos enformato PDF son suplementarios y no incluyen funciones de accesibilidad adicionales.

Proyecciones futuras

Esta documentación describe la funcionalidad actual del producto. Puede que se incluyan referencias aelementos que actualmente no están disponibles. Pero no debe entenderse que estos vayan a estardisponibles en un futuro. Estas referencias no constituyen un compromiso, promesa ni obligación legalque implique la entrega de ningún tipo de material, código o funcionalidad. El desarrollo, entrega ycomercialización de las características o funcionalidad son aspectos que quedan a la entera discreción deIBM.

Page 6: Versión 8.1.0 IBM OpenPages with Watsonpublic.dhe.ibm.com/software/data/cognos/documentation/openpage… · La IBM OpenPages with Watson - Guía del creador de procesos de negocio

vi IBM OpenPages with Watson Versión 8.1.0 : Guía del creador de procesos de negocio de OpenPages

Page 7: Versión 8.1.0 IBM OpenPages with Watsonpublic.dhe.ibm.com/software/data/cognos/documentation/openpage… · La IBM OpenPages with Watson - Guía del creador de procesos de negocio

Capítulo 1. Descripción generalMediante la integración de IBM OpenPages with Watson e IBM Business Process Manager, puede accedera un nivel mejorado de automatización de procesos de GRC. IBM Business Process Manager es unsistema de automatización de procesos líder en el sector, escalable y con muchas opciones deconfiguración.

Puede desarrollar soluciones de flujo de trabajo que se alineen con sus requisitos. También puedeconfigurar páginas de coach personalizadas que muestren la información del objeto con un formato quesatisfaga de manera exclusiva las necesidades de la tarea del usuario. Si un proceso de negocio llama auna página de coach, el usuario tiene que introducir información para continuar con el proceso denegocio. También puede utilizar un conjunto de kits de herramientas de integración, que se alinea con lasAPI de IBM OpenPages with Watson y utiliza la configuración y los datos existentes.

Los usuarios pueden iniciar procesos GRC, y manejarlos, trabajando con el Portal de procesos incluido deIBM BPM en la página de inicio. Cuando los usuarios pulsan la pestaña Portal de procesos, el sistemaabre el Portal de procesos nativo de BPM.

Es necesario conocer muy bien IBM Business Process Manager para poder empezar la integración conIBM OpenPages with Watson.

Para obtener información sobre IBM Business Process Manager, acceda a http://www.ibm.com/support/knowledgecenter/SSFPJS_8.5.7/com.ibm.wbpm.main.doc/kc-homepage-bpm.html (http://www.ibm.com/support/knowledgecenter/SSFPJS_8.5.7/com.ibm.wbpm.main.doc/kc-homepage-bpm.html).

Page 8: Versión 8.1.0 IBM OpenPages with Watsonpublic.dhe.ibm.com/software/data/cognos/documentation/openpage… · La IBM OpenPages with Watson - Guía del creador de procesos de negocio

2 IBM OpenPages with Watson Versión 8.1.0 : Guía del creador de procesos de negocio de OpenPages

Page 9: Versión 8.1.0 IBM OpenPages with Watsonpublic.dhe.ibm.com/software/data/cognos/documentation/openpage… · La IBM OpenPages with Watson - Guía del creador de procesos de negocio

Capítulo 2. Kit de herramientas de la plataformaOpenPages

El kit de herramientas de la plataforma OpenPages se utiliza para integrar componentes de IBMOpenPages with Watson e IBM Business Process Manager.

Recursos del kit de herramientas de la plataforma OpenPagesEl kit de herramientas de la plataforma OpenPages contiene recursos que se utilizan para definir procesosde negocio y crear interacciones entre procesos de negocio y OpenPages. Mediante una dependencia,puede enlazar una aplicación de proceso con el kit de herramientas de la plataforma OpenPages.

El kit de herramientas de la plataforma OpenPages es un kit de herramientas estándar que se actualizapor medio de fixpacks y releases de OpenPages. No debería editar directamente los artefactos del kit deherramientas.

Los recursos disponibles en el kit de herramientas de la plataforma OpenPages se muestran en el gráficosiguiente.

Figura 1. Kit de herramientas de la plataforma OpenPages

Servicio Ajax

Los servicios Ajax interactúan con OpenPages desde las vistas de coach. Un servicio Ajax en una vista decoach puede efectuar una llamada de API de REST a OpenPages. Por ejemplo, puede utilizar el servicioAjax si quiere que un usuario rellene un control desplegable con valores de OpenPages. Para obtener másinformación, consulte http://www.ibm.com/support/knowledgecenter/SSFPJS_8.5.0/com.ibm.wbpm.wle.editor.doc/develop/topics/tajaxservice.html (http://www.ibm.com/support/knowledgecenter/SSFPJS_8.5.0/com.ibm.wbpm.wle.editor.doc/develop/topics/tajaxservice.html).

Servicio de despliegue

El servicio de despliegue añade llamadas y scripts que completan funciones específicas. Lo hace cuandose despliega una aplicación de proceso en un servidor de otro entorno.

Objetos de negocio

Los servicios de integración utilizan los siguientes objetos de negocio como entrada y salida: OPCurrency,OPCurrencyField, OPEnumValue, OPFieldDefinition y OPObject. Un objeto de negocio es un tipopersonalizado que se puede utilizar como variable para los datos empresariales. Estos datos deben estara disposición del proceso y sus servicios. Las variables capturan los datos empresariales que utilizan las

Page 10: Versión 8.1.0 IBM OpenPages with Watsonpublic.dhe.ibm.com/software/data/cognos/documentation/openpage… · La IBM OpenPages with Watson - Guía del creador de procesos de negocio

actividades en una definición de proceso de negocio o los pasos en servicios como, por ejemplo, serviciosde integración o servicios humanos.

Servicios humanos del lado de clienteUn servicio humano es un componente que crea una tarea en la que trabajará un usuario. Los servicioshumanos proporcionan la inclusión de componentes de coach, descripciones de los datos de pantalla quese presentarán a los usuarios y los datos que se recuperarán de los usuarios. Los servicios humanos dellado de cliente incluyen OPObjectSelection, que se utilizan cuando los usuarios seleccionan un objetoOpenPages para trabajar con su proceso de negocio. Para obtener un ejemplo de cómo utilizarOPObjectSelection, consulte el apartado “Utilización del servicio humano del lado de clienteOPObjectSelection ” en la página 19. La pestaña Portal de procesos de la página de inicio deOpenPages también es un servicio humano del lado de cliente. Los usuarios acceden a él para lanzarprocesos de negocio, reclamar tareas y trabajar en tareas.

Servicios de integración

Los servicios de integración interactúan con datos de OpenPages. Los servicios se han diseñado ycompilado para dar soporte a OpenPages. Para obtener más información, consulte el Capítulo 4,“Servicios de integración de OpenPages”, en la página 7.

Grupos del paquete de recursos

Entre los grupos de paquetes de recursos, se incluyen los siguientes:

• OPObjectSelection utiliza OPPlatformTexts para los elementos de la interfaz de usuario asociados aobjetos de OpenPages. No utilice OPPlatformTexts en sus procesos de negocio.

• OPObjectSelection utiliza OPSystemFieldLabels para las etiquetas de campo asociadas a objetos deOpenPages. No utilice OPSystemFieldLabels en sus procesos de negocio.

Archivo de servidor y archivo web

El archivo de servidor y el archivo web se generan automáticamente. El archivo de servidor contienecódigo Java™ desplegado en el kit de herramientas. El archivo web contiene iconos de imagen y hojas deestilo que se utilizan en el diseño de páginas de coach.

4 IBM OpenPages with Watson Versión 8.1.0 : Guía del creador de procesos de negocio de OpenPages

Page 11: Versión 8.1.0 IBM OpenPages with Watsonpublic.dhe.ibm.com/software/data/cognos/documentation/openpage… · La IBM OpenPages with Watson - Guía del creador de procesos de negocio

Capítulo 3. Kit de herramientas de soluciones deOpenPages

El kit de herramientas de soluciones de OpenPages se utiliza para integrar componentes de IBMOpenPages with Watson e IBM Business Process Manager.

Recursos del kit de herramientas de soluciones de OpenPagesEl kit de herramientas de soluciones de OpenPages contiene recursos que le permiten acceder a objetosde negocio en función de su esquema de objeto exclusivo. Puede acceder a todos los objetos de negocio,sus campos y las relaciones entre campos. También puede acceder a etiquetas de campo,configuraciones regionales y textos de aplicaciones en varios idiomas. Los recursos se utilizan para crearpantallas de coach y actividades de flujo de trabajo que le permiten acceder a los datos de objeto de IBMOpenPages with Watson. Mediante una dependencia, puede enlazar una aplicación de proceso con el kitde herramientas de soluciones de OpenPages.

El kit de herramientas de soluciones de OpenPages se genera en función del esquema de objeto. Así, esexclusivo de cada cliente de OpenPages. Debe volver a generarlo si cambia de modelo de datos. Al igualque el kit de herramientas de la plataforma OpenPages, el kit de herramientas de la solución OpenPagesse puede actualizar con releases y fixpacks de OpenPages. No debería editar directamente los artefactosdel kit de herramientas.

Los recursos disponibles en el kit de herramientas de soluciones de OpenPages se muestran en el gráficosiguiente.

Figura 2. Kit de herramientas de soluciones de OpenPages

Objetos de negocio personalizados basados en el esquema del cliente

Los objetos de negocio de OpenPages específicos de cada cliente comienzan por OP. Por ejemplo, el tipode objeto SOXRisk de OpenPages se denomina OPSOXRisk en IBM BPM. Las variables capturan los datosempresariales que utilizan las actividades en una definición de proceso de negocio o los pasos enservicios como, por ejemplo, servicios de integración o servicios humanos.

Etiquetas de objeto y campo

Los grupos del paquete de recursos le dan acceso a copias de textos de objetos y textos de aplicacionesen OpenPages. Puede acceder a los recursos de las definiciones de proceso para controlar el idioma delas vistas de coach para las etiquetas de campo y objeto.

• Utilice OPObjectLabels para acceder a etiquetas localizadas de tipos de objeto. Hay etiquetassingulares y plurales disponibles.

• Utilice OPFieldLabels para acceder a etiquetas localizadas de campos de objeto.

Los datos de OpenPages son específicos de cada cliente.

Texto de aplicación

El texto de la aplicación es específico de cada cliente. Puede acceder a este recurso de las definiciones deproceso para controlar el idioma de las vistas de coach para el texto de aplicaciones.

Page 12: Versión 8.1.0 IBM OpenPages with Watsonpublic.dhe.ibm.com/software/data/cognos/documentation/openpage… · La IBM OpenPages with Watson - Guía del creador de procesos de negocio

Utilice los recursos OPAppText* para acceder a texto de aplicación localizado por categoría. De formapredeterminada, el kit de herramientas contiene OPAppTextLabels, OPAppTextTitles,OPAppTextValidationMessages y OPAppTextCustom. Puede copiar más categorías, si lo desea. Utilice laopción -appTextCategories con la herramienta de línea de mandatos op-bpm-tool.jar.

Para obtener un ejemplo de uso de estos recursos, consulte el apartado “Utilización de recursos delocalización” en la página 38.

6 IBM OpenPages with Watson Versión 8.1.0 : Guía del creador de procesos de negocio de OpenPages

Page 13: Versión 8.1.0 IBM OpenPages with Watsonpublic.dhe.ibm.com/software/data/cognos/documentation/openpage… · La IBM OpenPages with Watson - Guía del creador de procesos de negocio

Capítulo 4. Servicios de integración de OpenPagesEl kit de herramientas de la plataforma OpenPages contiene servicios de integración que se puedenutilizar en los procesos de negocio para acceder a los datos de OpenPages.

Se necesitan los parámetros de entrada y salida, a menos que se indique lo contrario.

OPAssociateChildrenOPAssociateChildren se utiliza para asociar hijos a un objeto especificado.

Parámetros de entradasystemTask: distintivo utilizado para ejecutar esta operación como usuario actual o cuenta delsistema. Booleano.objectId: ID de objeto o vía de acceso completa del objeto padre. Serie.children: lista de ID de objeto o vías de acceso completas que se van a asociar. Lista de serie.

Parámetros de salidaninguno

OPAssociateParentsOPAssociateParents se utiliza para asociar padres a un objeto especificado.

Parámetros de entradasystemTask: distintivo utilizado para ejecutar esta operación como usuario actual o cuenta delsistema. Booleano.objectId: ID de objeto o vía de acceso completa al objeto hijo. Serie.parents: lista de ID de objeto o vías de acceso completas que se van a asociar. Lista de serie.

Parámetros de salidaninguno

OPCopyObjects

OPCopyObjects se utiliza para copiar uno o varios objetos en un padre de destino específico.

Puede copiar un número ilimitado de objetos con OPCopyObject. Sin embargo, si copia una gran cantidadde objetos, es posible que la operación genere un error de tiempo de espera de lectura HTTP(S). Paraevitar este problema, utilice un script para dividir la solicitud en varias llamadas a la API de REST.

Parámetros de entradasystemTask: distintivo utilizado para ejecutar esta operación como usuario actual o cuenta delsistema. Booleano.targetParentId : ID de objeto o vía de acceso completa al objeto padre de destino. Serie.sourceObjectIds: lista de ID de objeto de origen o vías de acceso completas. Lista de serie.includesChildren: distintivo utilizado para incluir hijos de objetos de origen o copiar objetos deorigen. Booleano.conflictBehavior: parámetro que determina el comportamiento en caso de conflicto. Opcional.Serie. Puede ser uno de los valores siguientes:

Page 14: Versión 8.1.0 IBM OpenPages with Watsonpublic.dhe.ibm.com/software/data/cognos/documentation/openpage… · La IBM OpenPages with Watson - Guía del creador de procesos de negocio

• CREATECOPYOF: crea una copia y añade un prefijo al nombre de la copia en la ubicación de destino.El prefijo es Copia de para la primera instancia de un conflicto o Copia (n) de para la instanciaX.

• OVERWRITE: sobrescribe el objeto GRC del destino con el objeto GRC del origen.• USEEXISTING: mantiene el objeto GRC del destino y lo asocia a los objetos de origen que se van a

mover.• ERROR: emite una OpenPagesException si existe un conflicto.

childrenTypesToCopy : ID o nombres de tipo de objeto que se van a copiar. Opcional. Lista deserie.

Parámetros de salidacopiedObjects: lista de objetos copiados.

OPCreateObject

OPCreateObject se utiliza para crear un objeto basado en valores de campos especificados.

Para obtener un ejemplo de uso de OPCreateObject, consulte el apartado “Utilización del serviciohumano del lado de cliente OPObjectSelection ” en la página 19.

Parámetros de entradasystemTask: distintivo utilizado para ejecutar esta operación como usuario actual o cuenta delsistema. Booleano.inObject: objeto que se va a crear. El tipo de objeto debe ser uno de los objetos de negocio del kitde herramientas de la solución OpenPages. Cualquiera.

Parámetros de salidaoutObject: objeto creado con un identificador. El tipo de objeto es el mismo que el inObject.

OPDeleteObjectOPDeleteObject se utiliza para suprimir un objeto especificado por objectId.

Parámetros de entradasystemTask: distintivo utilizado para ejecutar esta operación como usuario actual o cuenta delsistema. Booleano.objectId : ID de objeto o vía de acceso completa al objeto que se va a suprimir. Serie.

Parámetros de salidaninguno

OPDissociateChildrenOPDissociateChildren se utiliza para disociar los hijos de un objeto especificado.

Parámetros de entradasystemTask: distintivo utilizado para ejecutar esta operación como usuario actual o cuenta delsistema. Booleano.objectId: ID de objeto o vía de acceso completa al objeto padre. Serie.children: lista de ID de objetos o vías de acceso completas que se van a disociar. Lista de serie.

Parámetros de salidaninguno

8 IBM OpenPages with Watson Versión 8.1.0 : Guía del creador de procesos de negocio de OpenPages

Page 15: Versión 8.1.0 IBM OpenPages with Watsonpublic.dhe.ibm.com/software/data/cognos/documentation/openpage… · La IBM OpenPages with Watson - Guía del creador de procesos de negocio

OPDissociateParentsOPDissociateParents se utiliza para disociar los padres de un objeto especificado.

Parámetros de entradasystemTask: distintivo utilizado para ejecutar esta operación como usuario actual o cuenta delsistema. Booleano.objectId: ID de objeto o vía de acceso completa al objeto hijo. Serie.parents: lista de ID de objetos o vías de acceso completas que se van a disociar. Lista de serie.

Parámetros de salidaninguno

OPExecuteReportFragment

OPExecuteReportFragment se utiliza para ejecutar un fragmento de informe determinado y devolver unvalor que es un fragmento HTML.

Asegúrese de que el fragmento HTML no contenga enlaces a iconos o archivos de imagen. No serepresentan en páginas de coach porque los enlaces se resuelven en IBM Business Process Manager, noen Cognos o IBM OpenPages with Watson.

Parámetros de entradasystemTask: distintivo utilizado para ejecutar esta operación como usuario actual o cuenta delsistema. Booleano.objectId : ID de objeto o vía de acceso completa al objeto. Serie.field: nombre de campo en formato nombre-paquete:nombre-campo. Serie.

Parámetros de salidafragment: valor de fragmento de informe ejecutado (fragmento HTML).

OPGenericObjectQueryOPGenericObjectQuery se utiliza para emitir una consulta de objeto GRC genérico para la API de REST deIBM OpenPages with Watson GRC. Este servicio ofrece muchas opciones de configuración ypersonalización. Para obtener más información sobre la sintaxis de sentencia de consulta, consulte lapublicación IBM OpenPages with Watson GRC REST API Guide.

Parámetros de entradasystemTask: distintivo utilizado para ejecutar esta operación como usuario actual o cuenta delsistema. Booleano.queryStatement : sentencia SELECT de consulta que utiliza la sintaxis de consultas de la API deOpenPages, por ejemplo, SELECT [Resource ID], [Name] FROM [SOXIssue]. Serie.isPrimary: si se van a unir varios tipos en una consulta, establezca true para respetar lasasociaciones principales entre padres e hijos, o bien false para devolver todas las asociaciones.Booleano.isCaseInsensitive: si va a comparar los valores de serie en una consulta, establezca true paraomitir las diferencias entre mayúsculas y minúsculas. El valor predeterminado es false. Booleano.start: índice inicial para los resultados, 0 para el primer resultado. Se usa para recuperar undeterminado número de resultados en lugar de una lista completa. Por ejemplo, si start es 0 ypageSize es 500, el servicio devuelve hasta los primeros 500 resultados (0-499) que encuentra laconsulta. Si start es 500 y pageSize todavía es 500, se devuelven los siguientes 500 resultados(500-999). El uso de start puede mejorar el rendimiento en caso de conjuntos de datos de grantamaño. Entero.

Capítulo 4. Servicios de integración de OpenPages 9

Page 16: Versión 8.1.0 IBM OpenPages with Watsonpublic.dhe.ibm.com/software/data/cognos/documentation/openpage… · La IBM OpenPages with Watson - Guía del creador de procesos de negocio

pageSize: número máximo de resultados de la consulta que puede devolver la solicitud a la API deREST. Establezca pageSize en 0 para devolver todos los resultados de la consulta que coincidan conlos filtros de esta. Entero.returnType: si se especifica, returnType será el tipo de objeto de negocio que devolverá laconsulta. Si no se especifica, se devuelve un objeto de negocio OPObject. Si la consultaproporcionada no devuelve columnas para el objeto de negocio, el comportamiento no será elesperado. Opcional. Serie.

Parámetros de salidareturnObjects: lista de objetos GRC que se devuelven para la consulta en caso de returnTypeespecificado, u OPObject si no se especifica. El queryStatement debe seleccionar campos del objetoGRC que coincidan con los campos del returnType especificado. Cualquier campo del objeto GRCreturnType que no forme parte de la cláusula SELECT de queryStatement se considerará nulo.

OPGetBaseURL

OPGetBaseURL se utiliza para recuperar el URL base del servidor de OpenPages, como http://opserver:port/. Puede utilizar este servicio, por ejemplo, para crear un URL a una página de vista dedetalles.

Para obtener un ejemplo de cómo utilizar OpGetBaseURL, consulte “Envío de notificaciones por correoelectrónico ” en la página 52.

Parámetros de entradaNinguno

Parámetros de salidabaseURL: URL base del servidor de OpenPages.

OPGetChildAssociationsOPGetChildAssociations se utiliza para recuperar una lista de asociaciones hijo.

Parámetros de entradasystemTask: distintivo utilizado para ejecutar esta operación como usuario actual o cuenta delsistema. Booleano.ObjectId: ID de objeto o vía de acceso completa al objeto padre. Serie.

Parámetros de salidachildren: lista de tipos de OPObject. Completa tres campos de OPObject: id, path ytypeDefinitionId. Otros parámetros del tipo OPObject son nulos.

OPGetEnumeratedValues

OPGetEnumeratedValues se utiliza para recuperar una lista de los valores enumerados (valoresdesplegables) para un campo enumerado. Si se configura la lista de selección de dependencias, elinterlocutor del servicio pasará el argumento controllingValue para recuperar los valoresenumerados disponibles.

Para obtener un ejemplo de cómo utilizar OPGetEnumeratedValues, consulte “Adición de camposenumerados con una lista de selección dependiente a una página de coach” en la página 23.

Parámetros de entradasystemTask: distintivo utilizado para ejecutar esta operación como usuario actual o cuenta delsistema. Booleano.ObjectTypeName: nombre del tipo de objeto, por ejemplo, SOXBusEntity. Serie.

10 IBM OpenPages with Watson Versión 8.1.0 : Guía del creador de procesos de negocio de OpenPages

Page 17: Versión 8.1.0 IBM OpenPages with Watsonpublic.dhe.ibm.com/software/data/cognos/documentation/openpage… · La IBM OpenPages with Watson - Guía del creador de procesos de negocio

fieldName: nombre del campo en formato nombre-paquete:nombre-campo, por ejemplo, OPSS-BusEnt:Entity Type. Serie.ControllingValue: valor del campo de control utilizado cuando se configura la lista de selecciónde dependencias. Opcional. Serie.

Parámetros de salidaoutObject: lista de valores enumerados. El tipo es una lista de valores OPEnumValue.

OPGetObjectOPGetObject se utiliza para devolver la información del objeto de negocio de un objeto GRC.

Parámetros de entradasystemTask: distintivo utilizado para ejecutar esta operación como usuario actual o cuenta delsistema. Booleano.ObjectId: ID de objeto o vía de acceso completa al objeto. Serie.computeReportFields: distintivo utilizado para recuperar valores de campo calculado o definirloscomo nulos. Booleano.Fields: lista de nombres de campo que se van a recuperar en el formato nombre-paquete:nombre-campo. Opcional. Lista de serie.

Parámetros de salidaoutObject: objeto recuperado de OpenPages. El tipo se determina en función del tipo de objeto querecuperar. Es uno de los objetos de negocio definidos en el kit de herramientas de la soluciónOpenPages.

OPGetParentAssociationsOPGetParentAssociations se utiliza para obtener una lista de asociaciones de elementos padre.

Parámetros de entradasystemTask: distintivo utilizado para ejecutar esta operación como usuario actual o cuenta delsistema. Booleano.objectId: ID de objeto o vía de acceso completa al objeto hijo. Serie.

Parámetros de salidaparents: lista de tipos de OPObject. Se rellenan tres campos en OPObject: id, path ytypeDefinitionId. Otros parámetros del tipo OPObject son nulos.

OPHierarchicalAssigneeQuery

OPHierarchicalAssigneeQuery se utiliza en casos especiales para crear una consulta jerárquica paraobjetos hijo bajo una instancia padre específica. Este método permite que se devuelva un único campojunto con los campos del sistema para el tipo de objeto hijo. El campo se lo especifica el parámetroassigneeField para emitir una consulta de objeto GRC genérica a la API de REST de IBM OpenPageswith Watson GRC.

Para obtener un ejemplo de cómo utilizar OPHierarchicalAssigneeQuery, consulte “Definición de procesosjerárquicos básicos” en la página 39.

Parámetros de entradasystemTask: distintivo utilizado para ejecutar esta operación como usuario actual o cuenta delsistema. Booleano.parentType: nombre de tipo de objeto padre que se va a consultar. Serie.parentId: ID de la instancia padre. Serie.

Capítulo 4. Servicios de integración de OpenPages 11

Page 18: Versión 8.1.0 IBM OpenPages with Watsonpublic.dhe.ibm.com/software/data/cognos/documentation/openpage… · La IBM OpenPages with Watson - Guía del creador de procesos de negocio

childType: nombre de tipo de objeto hijo que se va a consultar y devolver. Serie.assigneeField: nombre de campo que identifica un campo del tipo de objeto hijo que se devolveráen los resultados. Puede capacitar el campo utilizando el convenio de denominaciónGrupo_campos:Campo. Serie.isPrimary: si se van a unir varios tipos en una consulta, establezca true para respetar lasasociaciones principales entre padres e hijos, o bien false para devolver todas las asociaciones.Booleano.isCaseInsensitive: si va a comparar los valores de serie en una consulta, establezca true paraomitir las diferencias entre mayúsculas y minúsculas. El valor predeterminado es false. Booleano.filters: se utiliza para aplicar condiciones de filtro adicionales a la consulta. Debe especificarse enuna sintaxis de la API de consulta válida: [Tipo Objeto].[Grupo campos:Nombre campo]. Losfiltros deben aplicarse a campos del tipo padre o el tipo hijo de la consulta. Se recibe un valor null(nulo) si no se necesitan más filtros. Serie.start: índice inicial para los resultados, 0 para el primer resultado. Se usa para recuperar undeterminado número de resultados en lugar de una lista completa. Por ejemplo, si start es 0 ypageSize es 500, el servicio devuelve hasta los primeros 500 resultados (0-499) que encuentra laconsulta. Si start es 500 y pageSize todavía es 500, se devuelven los siguientes 500 resultados(500-999). El uso de start puede mejorar el rendimiento en caso de conjuntos de datos de grantamaño. Entero.pageSize: número máximo de resultados de la consulta que puede devolver la solicitud a la API deREST. Establezca pageSize en 0 para devolver todos los resultados de la consulta que coincidan conlos filtros de esta. Entero.isDirect: se utiliza para especificar si la consulta comprueba la jerarquía completa del tipo hijo o loshijos inmediatos. Booleano.

Parámetros de salidareturnObjects: lista de objetos GRC que se devuelven como hijos del padre, incluido el campoespecificado por assigneeField.

OPHierarchicalQuery

OPHierarchicalQuery se utiliza para crear una consulta jerárquica para objetos hijo bajo una instanciapadre específica.

Para obtener un ejemplo de cómo utilizar OPHierarchicalQuery, consulte “Recuperación de una lista deobjetos hijo” en la página 50.

Parámetros de entradasystemTask: distintivo utilizado para ejecutar esta operación como usuario actual o cuenta delsistema. Booleano.parentType: nombre de tipo de objeto padre que se va a consultar. Serie.parentId: ID de la instancia padre. Serie.childType: nombre de tipo de objeto hijo que se va a consultar y devolver. Serie.isPrimary: si se van a unir varios tipos en una consulta, establezca true para respetar lasasociaciones principales entre padres e hijos, o bien false para devolver todas las asociaciones.Booleano.isCaseInsensitive: si va a comparar los valores de serie en una consulta, establezca true paraomitir las diferencias entre mayúsculas y minúsculas. El valor predeterminado es false. Booleano.filters: se utiliza para aplicar condiciones de filtro adicionales a la consulta. Debe especificarse enuna sintaxis de la API de consulta válida: [Tipo Objeto].[Grupo campos:Nombre campo]. Losfiltros deben aplicarse a campos del tipo padre o el tipo hijo de la consulta. Se recibe un valor null(nulo) si no se necesitan más filtros. Serie.

12 IBM OpenPages with Watson Versión 8.1.0 : Guía del creador de procesos de negocio de OpenPages

Page 19: Versión 8.1.0 IBM OpenPages with Watsonpublic.dhe.ibm.com/software/data/cognos/documentation/openpage… · La IBM OpenPages with Watson - Guía del creador de procesos de negocio

fields: si se especifica, es una lista explícita de campos que devolverá la consulta. Los camposdeben estar delimitados por comas y especificarse en formato Grupo_campos:Campo. Se debeespecificar en una sintaxis de la API de consulta válida y se utilizará como cláusula SELECT de lasentencia de consulta en lugar de los valores predeterminados. Está permitido especificarúnicamente campos de tipo hijo. Si no se especifica, solo los campos del sistema del tipo hijo sedevuelven de manera predeterminada. Opcional. Serie.fields: si se especifica, es una lista explícita de campos que devolverá la consulta. Los camposdeben estar delimitados por comas y o bien especificarse con el formato [Tipo_devolución].[Grupo_campos:Campo] o bien con una de las palabras clave especiales siguientes: Id para el IDde recurso únicamente o System Fields para todos los campos del sistema del tipo del hijo. Sedebe especificar en una sintaxis de la API de consulta válida y se utilizará como cláusula SELECT de lasentencia de consulta en lugar de los valores predeterminados. Está permitido especificarúnicamente campos de tipo hijo. Si no se especifica, solo se devuelve de manera predeterminada elcampo del sistema de ID de recurso desde el tipo de hijo. Opcional. Serie.start: índice inicial para los resultados, 0 para el primer resultado. Se usa para recuperar undeterminado número de resultados en lugar de una lista completa. Por ejemplo, si start es 0 ypageSize es 500, el servicio devuelve hasta los primeros 500 resultados (0-499) que encuentra laconsulta. Si start es 500 y pageSize todavía es 500, se devuelven los siguientes 500 resultados(500-999). El uso de start puede mejorar el rendimiento en caso de conjuntos de datos de grantamaño. Entero.pageSize: número máximo de resultados de la consulta que puede devolver la solicitud a la API deREST. Establezca pageSize en 0 para devolver todos los resultados de la consulta que coincidan conlos filtros de esta. Entero.isDirect: se utiliza para especificar si la consulta comprueba la jerarquía completa del tipo hijo o loshijos inmediatos. Booleano.

Parámetros de salidareturnObjects: lista de objetos GRC que se devuelven como hijos del padre.

OPLaunchChildProcesses

OPLaunchChildProcesses se utiliza para iniciar procesos hijo en un proceso jerárquico.

Para obtener un ejemplo de cómo utilizar OPLaunchChildProcesses, consulte “Definición de procesosjerárquicos avanzados ” en la página 43.

Parámetros de entradaProcessName: nombre de la definición de proceso de negocio que se va a iniciar. Serie.InputValues: cada entrada de la lista se pasa como un valor de entrada a un nuevo proceso que seva a iniciar. El tamaño de la lista determina cuántos procesos están en marcha. La correlaciónInputValues coincide con las variables de tipo Input del proceso que se va a iniciar. La clave en lacorrelación es el nombre de la variable Input y el valor en la correlación es el valor pasado a lavariable. Lista de correlaciones.Delay: tiempo en milisegundos que el servicio se detiene después de iniciar un proceso. Utilice unretardo más largo para evitar problemas de rendimiento. Entero.AddDependency: añade una dependencia del proceso hijo iniciado al proceso padre. Hacer que elpadre dependa de los procesos hijo iniciados indica a IBM Business Process Manager que hay unarelación entre los dos procesos. El proceso padre no se puede completar hasta que se hayancompletado todos los procesos hijo. Booleano.

Terminar el proceso padre también termina todos los procesos hijo.

Parámetros de salidaChildPIDs: lista de los ID de las instancias del proceso hijo. Lista de serie.

Capítulo 4. Servicios de integración de OpenPages 13

Page 20: Versión 8.1.0 IBM OpenPages with Watsonpublic.dhe.ibm.com/software/data/cognos/documentation/openpage… · La IBM OpenPages with Watson - Guía del creador de procesos de negocio

OPLockObject

OPLockObject se utiliza para bloquear un objeto especificado por objectId.

Para obtener un ejemplo de uso de OPLockObject, consulte el apartado “Bloqueo y desbloqueo deobjetos” en la página 51.

Parámetros de entradasystemTask: distintivo utilizado para ejecutar esta operación como usuario actual o cuenta delsistema. Booleano.ObjectId: ID de objeto o vía de acceso completa al objeto. Serie.

Parámetros de salidaninguno

OPMakeAddNewLink

OPMakeAddNewLink se utiliza para crear una etiqueta de hiperenlace HTML para abrir el asistente Añadirnuevo en OpenPages. Puede añadir un tipo de objeto nuevo específico y parámetros opcionales para elpadre, el tipo padre y el nombre de vista. El enlace se abre en una nueva ventana.

Para obtener un ejemplo de cómo utilizar OPMakeAddNewLink, consulte “Adición de adjuntos a archivo auna página de coach” en la página 31.

Parámetros de entradanewObjectType: nombre del tipo de objeto que se va a añadir. Serie.parentId: ID de recurso del padre seleccionado predeterminado en el asistente Añadir nuevo.Opcional. Serie.parentType: tipo de objeto del padre predeterminado. Opcional. Serie.viewName: vista específica del nuevo tipo de objeto. Opcional. Serie.linkText: texto que se va a visualizar para el enlace. Serie.

Parámetros de salidaaddNewLink: código HTML utilizado para crear un enlace para abrir el asistente Añadir nuevo para elobjeto. Serie.

OPMakeDetailLink

OPMakeDetailLink se utiliza para crear una etiqueta de hiperenlace HTML que abre una vista de detallesdel objeto en OpenPages. Puede utilizar un parámetro opcional para proporcionar un nombre de vista deperfil.

Para obtener un ejemplo de cómo utilizar OPMakeDetailLink, consulte “Adición de un enlace a una páginaDetalles de OpenPages en una página de coach ” en la página 28.

Parámetros de entradafileId: ID de recurso del objeto enlazado en OpenPages. Serie.viewName: vista específica del tipo de objeto. Si no se especifica, el valor predeterminado es la vistade detalles. Opcional. Serie.rootOPAppContext: vía de acceso de contexto raíz de OpenPages, por ejemplo, openpageslinkText: texto que se va a visualizar para el enlace. Serie.

Parámetros de salidadetailViewLink: código HTML utilizado para abrir la vista de detalles del objeto. Serie.

14 IBM OpenPages with Watson Versión 8.1.0 : Guía del creador de procesos de negocio de OpenPages

Page 21: Versión 8.1.0 IBM OpenPages with Watsonpublic.dhe.ibm.com/software/data/cognos/documentation/openpage… · La IBM OpenPages with Watson - Guía del creador de procesos de negocio

OPMakeDocumentLink

OPMakeDocumentLink se utiliza para crear una etiqueta de hiperenlace HTML para descargar un archivodirectamente de OpenPages.

Para obtener más información sobre hiperenlaces orientados a la tarea, consulte https://www.ibm.com/support/knowledgecenter/SSFUEU_8.0.0/op_grc_admin/c_adm_task_oriented_hyperlinking.html.

Para obtener un ejemplo de cómo utilizar OPMakeDocumentLink, consulte “Descarga de adjuntos aarchivo en páginas de coach” en la página 32.

Parámetros de entradafileId: resourceId del archivo de documento. Tiene que ser del tipo de objeto SOXDocument. Serie.rootOPAppContext: vía de acceso de contexto raíz de OpenPages, por ejemplo, openpageslinkText: texto que se va a visualizar para el enlace. Serie.

Parámetros de salidadocumentLink: código HTML utilizado para crear un enlace para descargar un archivo. Serie.

OPMoveObjects

OPMoveObjects se utiliza para mover uno o varios objetos a un padre de destino específico.

Puede mover un número ilimitado de objetos con OPMoveObject. Sin embargo, si mueve muchos objetos,es posible que la operación genere un error de tiempo de espera de lectura HTTP(S). Para evitar esteproblema, utilice un script para dividir la solicitud en varias llamadas a la API de REST.

Parámetros de entradasystemTask: distintivo utilizado para ejecutar esta operación como usuario actual o cuenta delsistema. Booleano.targetParentId: ID de objeto o vía de acceso completa al objeto padre de destino. Serie.sourceObjectIds: lista de ID de objeto de origen o vías de acceso completas. Lista de serie.conflictBehavior: parámetro que determina el comportamiento en caso de conflicto. Opcional.Serie. Puede ser uno de los valores siguientes:

• OVERWRITE: sobrescribe el objeto GRC del destino con el objeto GRC del origen.• USEEXISTING: mantiene el objeto GRC del destino y lo asocia a los objetos de origen que se van a

mover.• ERROR: emite una OpenPagesException si existe un conflicto.

childrenTypesToMove: identificadores o nombres del tipo de objeto que se va a mover. Opcional.Lista de serie.

Parámetros de salidaNinguno

OPPerformRESTGetes un servicio de integración genérico que puede utilizar para acceder a las API de REST de IBMOpenPages with Watson GRC. Puede utilizarlo si ningún servicio de integración se ajusta a sus requisitos,y sí se ajusta una API de REST.

Parámetros de entradasystemTask: distintivo utilizado para ejecutar esta operación como usuario actual o cuenta delsistema. Booleano.

Capítulo 4. Servicios de integración de OpenPages 15

Page 22: Versión 8.1.0 IBM OpenPages with Watsonpublic.dhe.ibm.com/software/data/cognos/documentation/openpage… · La IBM OpenPages with Watson - Guía del creador de procesos de negocio

requestPath – vía de acceso de la API de REST de IBM OpenPages with Watson GRC relativa al<URL de aplicación de OpenPages>/grc/api.

Puede añadir parámetros al final del URL. Por ejemplo, si requestPath es:

/contents/12345/permissions/effective?user=orm

El control de acceso efectivo se recupera para el usuario orm en el objeto cuyo ID es 12345.

Parámetros de salidaresponse: serie sin formato, normalmente en formato JSON de API de REST, desde la invocación dela API de REST. Puede utilizar scripts de IBM Business Process Manager para extraer datos de la seriesin formato. Ejemplo:

var jsonResult = JSON.parse(tw.local.response); log.info("Effective permission for a user:" + jsonResult.securityPrincipal); log.info("\tcanRead:" + jsonResult.canRead); log.info("\tcanWrite:" + jsonResult.canWrite);

OPUnlockObject

OPUnlockObject se utiliza para desbloquear un objeto especificado por objectId.

Para obtener un ejemplo de uso de OPUnlockObject, consulte el apartado “Bloqueo y desbloqueo deobjetos” en la página 51.

Parámetros de entradasystemTask: distintivo utilizado para ejecutar esta operación como usuario actual o cuenta delsistema. Booleano.ObjectId: ID de objeto o vía de acceso completa al objeto. Serie.

Parámetros de salidaninguno

OPUpdateObjectOPUpdateObject se utiliza para actualizar un objeto basado en valores de campos especificados.

Parámetros de entradasystemTask: distintivo utilizado para ejecutar esta operación como usuario actual o cuenta delsistema. Booleano.inObject: objeto que se va a actualizar. El tipo de objeto debe ser un objeto de negocio del kit deherramientas de la solución OpenPages. Cualquiera.

Parámetros de salidaoutObject: objeto actualizado. El tipo de objeto es el mismo que el de inObject.

Filtro de equipo por campo de objetoFiltro de equipo por campo de objeto es un Servicio de filtro de equipo que se utiliza para asignar tareas aun usuario cuyo nombre se encuentra en un campo de objeto, como Propietario del control o Titular delriesgo. Puede utilizarlo para grupos de usuarios y para grupos y usuarios de selección múltiple.

Parámetros de entradaoriginalTeam: parámetro reservado para un servicio de filtro de equipos. Equipo.systemTask: distintivo utilizado para ejecutar esta operación como usuario actual o cuenta delsistema. Booleano.objectId: ID de objeto o vía de acceso completa al objeto. Serie.

16 IBM OpenPages with Watson Versión 8.1.0 : Guía del creador de procesos de negocio de OpenPages

Page 23: Versión 8.1.0 IBM OpenPages with Watsonpublic.dhe.ibm.com/software/data/cognos/documentation/openpage… · La IBM OpenPages with Watson - Guía del creador de procesos de negocio

field: nombre de campo en formato nombre-paquete:nombre-campo. Serie.expandGroups: distintivo para resolver miembros de grupo de manera recurrente y para incluir solousuarios en el equipo filtrado. Esto puede afectar al rendimiento del sistema si el grupo contienemuchos usuarios o subgrupos. Dado que es posible que los grupos de OpenPages no esténdisponibles en IBM Business Process Manager, defina true en el entorno configurado de LDAP.Booleano.

Parámetros de salidafilteredTeam: parámetro reservado para un servicio de filtro de equipos. Equipo.

Capítulo 4. Servicios de integración de OpenPages 17

Page 24: Versión 8.1.0 IBM OpenPages with Watsonpublic.dhe.ibm.com/software/data/cognos/documentation/openpage… · La IBM OpenPages with Watson - Guía del creador de procesos de negocio

18 IBM OpenPages with Watson Versión 8.1.0 : Guía del creador de procesos de negocio de OpenPages

Page 25: Versión 8.1.0 IBM OpenPages with Watsonpublic.dhe.ibm.com/software/data/cognos/documentation/openpage… · La IBM OpenPages with Watson - Guía del creador de procesos de negocio

Capítulo 5. Ejemplos de creación de procesosLos autores de proceso pueden utilizar los ejemplos de este documento para encontrar soluciones a losproblemas comunes que se generan al implementar IBM Business Process Manager con IBM OpenPageswith Watson.

Utilización del servicio humano del lado de cliente OPObjectSelection

Puede utilizar el servicio humano del lado de cliente OPObjectSelection para permitir a los usuariosseleccionar un objeto de OpenPages en un proceso de negocio.

El servicio humano del lado de cliente OPObjectSelection muestra la siguiente interfaz de usuarios a losusuarios:

El título de la interfaz es el tipo de objeto. No obstante, la interfaz es la misma independientemente deltipo de objeto utilizado.

Un usuario introduce un valor y hace clic en el icono de búsqueda. La búsqueda devuelve una lista deobjetos con coincidencias en el nombre o descripción. Los usuarios puedes seleccionar un objeto ocancelar. El objeto que se selecciona se devuelve al proceso de negocio y el proceso continúa.

En el ejemplo siguiente, OPObjectSelection se inserta como primer paso en un servicio humano del ladode cliente:

El tipo de objeto utilizado en OPObjectSelection se define en una variable o tarea anterior, en función delmodo de definir el proceso de negocio.

Además, puede utilizar OPObjectSelection como modelo para diseñar sus propios servicios humanos dellado del cliente de selección de objetos.

Page 26: Versión 8.1.0 IBM OpenPages with Watsonpublic.dhe.ibm.com/software/data/cognos/documentation/openpage… · La IBM OpenPages with Watson - Guía del creador de procesos de negocio

Procedimiento

1. Abra el editor web del Diseñador de procesos.2. Cree una aplicación de proceso.3. Abra la aplicación de proceso en el Diseñador de procesos.4. Añada dependencias a los kits de herramientas de OpenPages.

a) Pulse + situado junto a Kits de herramientas y seleccione Plataforma OpenPages.b) Pulse + situado junto a Kits de herramientas y seleccione Soluciones de OpenPages.

5. Pulse Nuevo junto a Interfaz de usuario > Servicio humano del lado de cliente y especifique unnombre para la interfaz de usuario.

6. Arrastre un servicio humano del lado de cliente anidado de la paleta al lienzo.7. En el panel Propiedades, seleccione la pestaña Implementación.8. En Servicio humano del lado de cliente anidado, seleccione OPObjectSelection.

9. Seleccione la pestaña Correlación de datos y defina la correlación de entrada y de salida.

10. Ahora, puede definir el servicio humano del lado de cliente global.

Asignación de una tarea de procesos en función de un valor de campoPuede asignar una tarea de proceso a un usuario en función del valor de un campo especificado. En esteejemplo, cree una nueva actividad en un proceso y asigne dicha actividad al propietario principal delobjeto.

Procedimiento

1. Abra el editor web del Diseñador de procesos.2. Cree una aplicación de proceso.3. Abra la aplicación de proceso en el Diseñador de procesos.4. Añada dependencias a los kits de herramientas de OpenPages.

a) Pulse + situado junto a Kits de herramientas y seleccione Plataforma OpenPages.b) Pulse + situado junto a Kits de herramientas y seleccione Soluciones de OpenPages.

5. Cree un proceso.6. Arrastre una Actividad de la paleta al lienzo.7. En el panel Propiedades, seleccione la pestaña Asignaciones.

20 IBM OpenPages with Watson Versión 8.1.0 : Guía del creador de procesos de negocio de OpenPages

Page 27: Versión 8.1.0 IBM OpenPages with Watsonpublic.dhe.ibm.com/software/data/cognos/documentation/openpage… · La IBM OpenPages with Watson - Guía del creador de procesos de negocio

a) En Asignar a, seleccione Equipo.b) En Equipo, seleccione Todos los usuarios.c) En Servicio de filtro de equipos, seleccione Filtro de equipo por campo de objeto.d) Especifique Correlación de entrada de servicio de filtro de equipo como:

• En systemTask, defina si la tarea puede acceder a OpenPages como cuenta de sistema o cuentaactual.

• En objectId, especifique el ID del objeto. Puede ser una variable local.• En field, escriba una serie de definición de campo. Puede ser una variable local.

8. Guarde el proceso.

Adición de campos de texto enriquecido a una página de coach

Si define páginas de coach con campos de texto enriquecido, se dan distintos comportamientos deformateo en el editor de texto enriquecido de OpenPages (CKEditor), en comparación con el editor detexto enriquecido de IBM BPM. En este ejemplo, añadiremos un campo de texto enriquecido a una páginade coach.

En el caso de los campos de texto enriquecido que se definen en una página de coach con el editor deBPM, no se mantienen todas las opciones de formato en el CKEditor. Después de que un usuarioespecifique texto en un campo de texto enriquecido de una página de coach, el campo aparece enmodalidad de sólo lectura en una página Detalles de OpenPages. El campo se muestra con el formateoque el usuario ha especificado en la página de coach. Sin embargo, si el usuario edita el objeto utilizandoCKEditor, se elimina el formateo siguiente:

• tamaño de fuente• tipo de fuente• alineación de párrafos (izquierda, derecha, centrado)• atributos de estilo en etiquetas de sangría que utilizan <blockquote>

De forma similar, en el caso de los campos de texto enriquecido definidos en OpenPages con CKEditor, nose mantienen todas las opciones de formateo en el editor de BPM. Después de que un usuarioespecifique texto en un campo de texto enriquecido en OpenPages, el campo se puede visualizar en unapágina de coach. La mayoría de las opciones de formateo se mantienen si el texto se visualiza en unapágina de coach, con las excepciones siguientes:

• emoticonos• alineación de párrafos (justificada)• marcadores de documentos• tablas de inserción• colores de fuente

Capítulo 5. Ejemplos de creación de procesos 21

Page 28: Versión 8.1.0 IBM OpenPages with Watsonpublic.dhe.ibm.com/software/data/cognos/documentation/openpage… · La IBM OpenPages with Watson - Guía del creador de procesos de negocio

• estilos para clases CSS específicas de CKEditor

Procedimiento

1. Abra el editor web del Diseñador de procesos.2. Cree una aplicación de proceso.3. Abra la aplicación de proceso en el Diseñador de procesos.4. Añada dependencias a los kits de herramientas de OpenPages.

a) Pulse + situado junto a Kits de herramientas y seleccione Plataforma OpenPages.b) Pulse + situado junto a Kits de herramientas y seleccione Soluciones de OpenPages.

5. Pulse Nuevo junto a Interfaz de usuario > Servicio humano del lado de cliente y especifique unnombre para la interfaz de usuario.

6. Pulse en la pestaña Coaches y seleccione una plantilla.7. Arrastre la vista Área de texto de la paleta al lienzo.8. En el panel Propiedades, pulse en la pestaña Configuración.9. Defina Tipo de área de texto como Texto enriquecido.

10. Guarde la página de coach.

Adición de uno o varios campos enumerados a una página de coachPuede añadir uno o varios campos enumerados a una página de coach. En este ejemplo, crea un nuevoservicio humano del lado del cliente y define un campo enumerado único para una página de coach.

Procedimiento

1. Abra el editor web del Diseñador de procesos.2. Cree una aplicación de proceso.3. Abra la aplicación de proceso en el Diseñador de procesos.4. Añada dependencias a los kits de herramientas de OpenPages.

a) Pulse + situado junto a Kits de herramientas y seleccione Plataforma OpenPages.b) Pulse + situado junto a Kits de herramientas y seleccione Soluciones de OpenPages.

5. Pulse Nuevo junto a Interfaz de usuario > Servicio humano del lado de cliente y especifique unnombre para la interfaz de usuario.

6. Pulse en la pestaña Coaches y seleccione una plantilla.7. Arrastre la vista Selección única o la vista Selección múltiple de la paleta al lienzo.8. En el panel Propiedades, especifique una etiqueta y enlace el control a una variable. En este

ejemplo, la variable está enlazada con el grupo de campos OPSS-Inc de un objeto Incidente, campoCriticality (Nivel de importancia). Asegúrese de que el tipo de variable enlazada seaOPEnumValue.

9. Pulse en la pestaña Configuración y defina los campos siguientes:

22 IBM OpenPages with Watson Versión 8.1.0 : Guía del creador de procesos de negocio de OpenPages

Page 29: Versión 8.1.0 IBM OpenPages with Watsonpublic.dhe.ibm.com/software/data/cognos/documentation/openpage… · La IBM OpenPages with Watson - Guía del creador de procesos de negocio

a) En Servicio de selección, seleccione el servicio de integración OPAjaxGetEnumValues del kit deherramientas de la plataforma OpenPages.

b) En Texto de entrada del servicio de selección, especifique un tipo de objeto, grupo de campos ycampo en el formato siguiente: <tipo de objeto>:<grupo de campos>:<campo>.

c) En Visualizar propiedad de nombre, seleccione localizationLabel.d) Seleccione Inhabilitar ordenación para mantener el orden configurado en OpenPages.

10. Guarde la página de coach.

Adición de campos enumerados con una lista de selección dependiente auna página de coach

Puede añadir campos enumerados con una lista de selección dependiente a una página de coach. En esteejemplo, crea un nuevo servicio humano del lado del cliente y define un campo enumerado con una listade selección dependiente para una página de coach.

Procedimiento

1. Abra el editor de escritorio del Diseñador de procesos.2. Abra el Diseñador de procesos.3. Añada dependencias a los kits de herramientas de OpenPages.

a) Pulse Kits de herramientas y seleccione Plataforma OpenPages.b) Pulse Kits de herramientas y seleccione Soluciones de OpenPages.

4. Pulse Nuevo junto a Interfaz de usuario > Servicio Ajax y especifique un nombre para el servicio.5. En el panel Propiedades, añada la variable de entrada text y la variable de salida results. El

nombre y tipo de la variable deben coincidir.

6. Pulse la pestaña Diagrama y arrastre un Servicio anidado de la paleta al lienzo.

Capítulo 5. Ejemplos de creación de procesos 23

Page 30: Versión 8.1.0 IBM OpenPages with Watsonpublic.dhe.ibm.com/software/data/cognos/documentation/openpage… · La IBM OpenPages with Watson - Guía del creador de procesos de negocio

7. En el panel Propiedades, pulse la pestaña Implementación y seleccione el servicioOPGetEnumeratedValues del kit de herramientas de la plataforma OpenPages.

8. Pulse en el panel Correlación de datos. Especifique los parámetros siguientes:a) En objectTypeName, introduzca el tipo de objeto del campo enumerado que se va a seleccionar.b) En fieldName, introduzca el grupo de campo del objeto y campo del campo enumerado que se va

a seleccionar.c) En controllingValue, introduzca tw.local.text.d) En outObject, introduzca tw.local.results.

9. Guarde el servicio Ajax.10. Abra el editor web del Diseñador de procesos.11. Pulse Nuevo junto a Interfaz de usuario > Servicio humano del lado de cliente y especifique un

nombre para la interfaz de usuario.12. Pulse en la pestaña Coaches y seleccione una plantilla.13. Arrastre la vista Selección única de la paleta al lienzo.14. En el panel Propiedades, especifique una etiqueta y enlace el control a una variable OPEnumValue.15. Pulse en la pestaña Configuración y defina los campos siguientes:

a) En Servicio de selección, seleccione el servicio que ha creado.b) En Texto de entrada del servicio de selección, introduzca el campo de nombre del campo

enumerado de control.c) En Visualizar propiedad de nombre, seleccione localizedLabel.d) Seleccione la casilla de verificación Inhabilitar ordenación para mantener el orden configurado

en el lado de OpenPages.

Figura 3. Definición de los campos en la pestaña Configuración16. Guarde el servicio de coach.

24 IBM OpenPages with Watson Versión 8.1.0 : Guía del creador de procesos de negocio de OpenPages

Page 31: Versión 8.1.0 IBM OpenPages with Watsonpublic.dhe.ibm.com/software/data/cognos/documentation/openpage… · La IBM OpenPages with Watson - Guía del creador de procesos de negocio

Adición de campos calculados a una página de coach

Puede añadir campos calculados a una página de coach. En este ejemplo, crea un nuevo servicio humanodel lado del cliente y define un campo calculado para una página de coach.

El tipo de objeto de negocio de los campos calculados es Serie. Normalmente, el valor contiene etiquetasHTML sin procesar.

Procedimiento

1. Abra el editor web del Diseñador de procesos.2. Cree una aplicación de proceso.3. Abra la aplicación de proceso en el Diseñador de procesos.4. Añada dependencias a los kits de herramientas de OpenPages.

a) Pulse + situado junto a Kits de herramientas y seleccione Plataforma OpenPages.b) Pulse + situado junto a Kits de herramientas y seleccione Soluciones de OpenPages.

5. Pulse Nuevo junto a Interfaz de usuario > Servicio humano del lado de cliente y especifique unnombre para la interfaz de usuario.

6. Pulse en la pestaña Coaches y seleccione una plantilla.7. Pulse Vistas > Avanzado y arrastre HTML personalizado de la paleta al lienzo.

8. En el panel Propiedades, seleccione la pestaña HTML.9. Seleccione Variable.

10. Especifique una etiqueta y enlace el control con una variable. En este ejemplo, la variable estáenlazada con el grupo de campos OPSS-ScenAn de Análisis de escenario, campo BucketsOverview (Visión general de grupos).

11. Guarde la página de coach.

Adición de campos Propietario a una página de coach

Capítulo 5. Ejemplos de creación de procesos 25

Page 32: Versión 8.1.0 IBM OpenPages with Watsonpublic.dhe.ibm.com/software/data/cognos/documentation/openpage… · La IBM OpenPages with Watson - Guía del creador de procesos de negocio

Puede añadir campos Propietario a una página de coach. En este ejemplo, crea un nuevo servicio humanodel lado del cliente, define una página de coach y añade un campo Propietario a la misma.

Los campos Propietario que utilizan el tipo de visualización de selector de varios usuarios se muestran enlas páginas de coach como $;<valor>$;. Por ejemplo, el valor John Smith de un Propietario primariose muestra en una página de coach como $;John Smith$;. Tiene que eliminar $; medianteprogramación. Los campos Propietario que utilizan el tipo de visualización de selector de usuario único nomuestran $;.

En este ejemplo, imagine que un servicio humano del lado de cliente tiene un valor de campo Propietarioen una variable denominada OwnerField. Contiene un valor de $;OpenPagesAdministrator$;itg$;fcm$;. Antes de mostrar el valor en una página de coach, debe convertirlo a un formato más legiblepara el usuario. Una vez que el valor se haya modificado en una página de coach, se debe convertir denuevo al formato de OpenPages.

Procedimiento

1. Abra el editor web del Diseñador de procesos.2. Cree una aplicación de proceso.3. Abra la aplicación de proceso en el Diseñador de procesos.4. Añada dependencias a los kits de herramientas de OpenPages.

a) Pulse + situado junto a Kits de herramientas y seleccione Plataforma OpenPages.b) Pulse + situado junto a Kits de herramientas y seleccione Soluciones de OpenPages.

5. Pulse Nuevo junto a Interfaz de usuario > Servicio humano del lado de cliente y especifique unnombre para la interfaz de usuario.

6. Pulse en la pestaña Variables y añada una variable privada OutputOwnerField de tipo serie.7. Pulse en la pestaña Diagrama.8. Arrastre un Script de lado del cliente de la paleta al lienzo. Colóquelo tras Inicio. Conecte el enlace

de flechas desde el nodo Inicio al nuevo nodo Script de lado del cliente, y conecte el nodo Serviciodel lado del cliente a Coach.

9. Arrastre un segundo nodo Script de lado del cliente de la paleta al lienzo. Colóquelo tras Coach yconecte las flechas. Utilice nombres descriptivos para los nodos.

10. Pulse en el nodo Script de lado del cliente.a) En el panel Propiedades, haga clic en Script.b) Introduzca el código de script. El siguiente código convierte el valor de la variable OwnerField

del formato de OpenPages al formato de visualización y lo devuelve en OutputOwnerField.

if( tw.local.OwnerField !== null){//dividir según el delimitador OP para selectores de varios usuarios var names = tw.local.OwnerField.split("$;");

26 IBM OpenPages with Watson Versión 8.1.0 : Guía del creador de procesos de negocio de OpenPages

Page 33: Versión 8.1.0 IBM OpenPages with Watsonpublic.dhe.ibm.com/software/data/cognos/documentation/openpage… · La IBM OpenPages with Watson - Guía del creador de procesos de negocio

//la matriz tiene una serie inicial y final vacía //debido a los delimitadores adicionales en el valor OP names.pop(); names.shift();

//utilizar JS arrays.join() para concatenar la matriz de nombres //en formato de lista delimitada por comas tw.local.OutputOwnerField = names.join(",");}

11. Pulse en el segundo nodo Script de lado del cliente.a) En el panel Propiedades, haga clic en Script.b) Introduzca el código de script. El siguiente código revierte el valor de la variableOutputOwnerField al formato de OpenPages. Lo devuelve en la variable OutputOwner, que sepuede guardar de nuevo en el objeto OpenPages original.

if( tw.local.OutputOwnerField !== null){

var names = tw.local.OutputOwnerField.split(",");

//la matriz necesita una serie inicial y final vacía //debido a los delimitadores adicionales en el valor OP

names.push("");

names.unshift("");

//utilizar JS arrays.join() para concatenar la matriz de nombres //en formato de lista de varios usuarios OP

tw.local.OwnerField = names.join("$;");

}

12. Pulse en la pestaña Coaches y seleccione una plantilla.a) Arrastre una Vista, como la vista Texto, de la paleta al lienzo.b) En el panel Propiedades, junto a Etiqueta, escriba Campo Propietario.c) Junto a Enlace, pulse Seleccionar y seleccione la variable tw.local.OutputOwnerField.

13. Guarde la página de coach.14. Ejecute el servicio humano del lado de cliente. La página de coach muestra un campo de texto que

contiene nombres de usuario en formato delimitado por comas.

15. Si hace clic en Aceptar, se devolverá el valor en el campo de texto. El segundo script convierte elvalor en formato de OpenPages. A continuación, su proceso podrá, por ejemplo, actualizar el campoPropietario del objeto con el nuevo valor.

Nota: El código de este ejemplo no valida nombres introducidos por los usuarios. Los usuarios debeintroducir varios nombres como valores delimitados por comas.

Capítulo 5. Ejemplos de creación de procesos 27

Page 34: Versión 8.1.0 IBM OpenPages with Watsonpublic.dhe.ibm.com/software/data/cognos/documentation/openpage… · La IBM OpenPages with Watson - Guía del creador de procesos de negocio

Adición de un enlace a una página Detalles de OpenPages en una página decoach

Puede añadir un enlace a una página Detalles de OpenPages en una página de coach. En este ejemplo,crea un nuevo servicio humano del lado del cliente y define un enlace en una página de coach que abreuna página Detalles de OpenPages. Para fines de comprobación, indique el valor de un ID de recurso deobjeto existente en OpenPages. En una implementación real, especifique el ID del objeto con el quequiera crear el enlace mediante una variable de entrada en el servicio humano del lado de cliente.

Procedimiento

1. Abra el editor web del Diseñador de procesos.2. Cree una aplicación de proceso.3. Abra la aplicación de proceso en el Diseñador de procesos.4. Añada dependencias a los kits de herramientas de OpenPages.

a) Pulse + situado junto a Kits de herramientas y seleccione Plataforma OpenPages.b) Pulse + situado junto a Kits de herramientas y seleccione Soluciones de OpenPages.

5. Pulse Nuevo junto a Interfaz de usuario > Servicio humano del lado de cliente e indique el nombrede la interfaz de usuario, como Enlace a Detalles de riesgo.

6. Pulse en la pestaña Variables y añada la variable privada DetailLink de tipo serie.7. En Entrada, añada la variable de entrada RiskId de tipo serie. Seleccione Con valor

predeterminado. Para fines de comprobación, introduzca el valor de un ID de recurso existente delobjeto Riesgo en OpenPages.

8. Pulse en la pestaña Diagrama.9. Arrastre un Servicio de la paleta al lienzo. Colóquelo tras Inicio. Conecte el enlace de flechas del

nodo Inicio al nuevo nodo Servicio y conecte el nodo Servicio al Coach. Utilice nombres descriptivospara los nodos.

10. Pulse el nodo de servicio y seleccione el panel Implementación.11. En la sección Comportamiento, seleccione Llamar a un servicio y seleccione el servicio de

integración OPMakeDetailLink del kit de herramientas de la plataforma OpenPages.12. Seleccione el panel Correlación de datos y especifique los parámetros siguientes:

a) En fileId, seleccione la variable de entrada RiskId de nombre tw.local.RiskId.b) En linkText, introduzca Ver detalles en OpenPages.c) Si lo desea, en viewName, puede especificar el nombre de una vista de perfil para el tipo de

objeto. Si se deja en blanco, se utiliza la vista predeterminada del perfil del usuario.d) En Correlación de salida, introduzca tw.local.DetailLink para documentLink.

28 IBM OpenPages with Watson Versión 8.1.0 : Guía del creador de procesos de negocio de OpenPages

Page 35: Versión 8.1.0 IBM OpenPages with Watsonpublic.dhe.ibm.com/software/data/cognos/documentation/openpage… · La IBM OpenPages with Watson - Guía del creador de procesos de negocio

13. Guarde los cambios en el servicio14. Pulse en la pestaña Coaches y seleccione una plantilla.15. Pulse Vistas > Avanzado y arrastre un HTML personalizado de la paleta al lienzo.

16. En el panel Propiedades, seleccione la pestaña HTML. Pulse Variable y seleccione la variableprivada DetailLink.

De manera alternativa, puede utilizar la vista Texto de salida en vez de la vista HTML personalizadoen la página de coach. Seleccione el texto de salida, en Enlace seleccione la variable privadaDownloadLink|DetailLink. Pulse en el panel Propiedades y seleccione la pestañaConfiguración. Cambie el valor de Deshabilitar codificación HTML de no seleccionado aseleccionado.

17. Guarde la página de coach.

Nota: Si un usuario que no ha iniciado la sesión pulsa el enlace en la página de coach, se le solicitaráque inicie la sesión en OpenPages.

Capítulo 5. Ejemplos de creación de procesos 29

Page 36: Versión 8.1.0 IBM OpenPages with Watsonpublic.dhe.ibm.com/software/data/cognos/documentation/openpage… · La IBM OpenPages with Watson - Guía del creador de procesos de negocio

Adición de un enlace a un informe Cognos en una página de coachPuede añadir un enlace a un informe Cognos en una página de coach. En este ejemplo, crea un nuevoservicio humano del lado del cliente y define un enlace en una página de coach que abre un informeCognos.

Procedimiento

1. Abra el editor web del Diseñador de procesos.2. Cree una aplicación de proceso.3. Abra la aplicación de proceso en el Diseñador de procesos.4. Añada dependencias a los kits de herramientas de OpenPages.

a) Pulse + situado junto a Kits de herramientas y seleccione Plataforma OpenPages.b) Pulse + situado junto a Kits de herramientas y seleccione Soluciones de OpenPages.

5. Pulse Nuevo junto a Interfaz de usuario > Servicio humano del lado de cliente y especifique unnombre para la interfaz de usuario.

6. Pulse en la pestaña Variables y añada una variable privada baseURL de tipo serie.7. Pulse en la pestaña Coaches y seleccione una plantilla.8. Pulse Vistas > Avanzado y arrastre HTML personalizado de la paleta al lienzo.

9. En el panel Propiedades, seleccione la pestaña HTML y añada un fragmento HTML.

El fragmento puede ser:

<a href='#' onclick='window.open("{{tw.local.baseURL}}/my.report.list.post.do?submitAction=preview&amp;label=Current Reporting Period&amp;reportId=899","Title","toolbars=no,status=yes,menubars=no")'>Audit Plan Report</a>

BPM sustituye el texto entre paréntesis dobles {{}} por el valor de la variable.10. Puede sustituir el ID del informe, 899 en este ejemplo, por el informe que desea ejecutar. El ID de

informe se puede encontrar en el URL al ejecutar el informe desde el sistema OpenPages. La variablebaseURL es el URL de aplicación de OpenPages y se redirige al informe Cognos.

11. Guarde la página de coach.

30 IBM OpenPages with Watson Versión 8.1.0 : Guía del creador de procesos de negocio de OpenPages

Page 37: Versión 8.1.0 IBM OpenPages with Watsonpublic.dhe.ibm.com/software/data/cognos/documentation/openpage… · La IBM OpenPages with Watson - Guía del creador de procesos de negocio

Adición de adjuntos a archivo a una página de coachPuede añadir un enlace para abrir un adjunto a archivo en una página de coach. En este ejemplo, crea unnuevo servicio humano del lado del cliente y define un enlace único para abrir el asistente Añadir nuevo ycargar un nuevo archivo en OpenPages. Los adjuntos a archivos se almacenan en el servidor deOpenPages.

Procedimiento

1. Abra el editor web del Diseñador de procesos.2. Cree una aplicación de proceso.3. Abra la aplicación de proceso en el Diseñador de procesos.4. Añada dependencias a los kits de herramientas de OpenPages.

a) Pulse + situado junto a Kits de herramientas y seleccione Plataforma OpenPages.b) Pulse + situado junto a Kits de herramientas y seleccione Soluciones de OpenPages.

5. Pulse Nuevo, junto a Interfaz de usuario > Servicio humano del lado de cliente e indique unnombre para su interfaz de usuario, como Añadir documento nuevo.

6. Pulse en la pestaña Variables y añada una variable privada AddNewLink del tipo serie.7. Pulse en la pestaña Diagrama.8. Arrastre un Servicio de la paleta al lienzo. Colóquelo tras el nodo Inicio. Conecte el enlace de flechas

del nodo Inicio al nuevo nodo Servicio y conecte el nodo Servicio al Coach. Utilice nombresdescriptivos para los nodos.

9. Pulse el nodo de servicio y seleccione el panel Implementación.10. En la sección Comportamiento, seleccione Llamar a un servicio y, a continuación, seleccione el

servicio de integración OPMakeAddNewLink del kit de herramientas de la plataforma OpenPages.11. Seleccione el panel Correlación de datos y especifique los parámetros siguientes:

a) En newObjectType, introduzcaSOXDocument, que es el tipo de objeto para los adjuntos aarchivos.

b) En linkText, introduzca Añadir documento nuevo.c) También puede especificar el comportamiento del asistente Añadir nuevo:

• En parentId, indique el ID de recurso del padre predeterminado que será preseleccionadocomo padre primario en el asistente Añadir nuevo.

• En parentType, seleccione el tipo de objeto del padre predeterminado, como SOXRisk.• En viewName, proporcione una vista de creación del nuevo tipo de objeto.

d) En Correlación de salida, introduzca tw.local.AddNewLink para addNewLink.12. Guarde los cambios en el servicio.

Capítulo 5. Ejemplos de creación de procesos 31

Page 38: Versión 8.1.0 IBM OpenPages with Watsonpublic.dhe.ibm.com/software/data/cognos/documentation/openpage… · La IBM OpenPages with Watson - Guía del creador de procesos de negocio

13. Pulse la pestaña Coaches y seleccione una plantilla.14. Pulse Vistas > Avanzado y arrastre un HTML personalizado de la paleta al lienzo.

15. En el panel Propiedades, seleccione la pestaña HTML, pulse Variable y seleccione la variableprivada AddNewLink.

16. Guarde la página de coach.

Nota: Si un usuario que no ha iniciado la sesión pulsa el enlace en la página de coach, se le solicitaráque inicie la sesión en OpenPages. Cuando el usuario haya guardado un nuevo adjunto a archivo (uotro tipo de objeto) con el asistente Añadir nuevo, el asistente volverá a la página inicial Añadirnuevo. El usuario puede añadir otro objeto del mismo tipo, de modo que podrá añadir con facilidaddistintas entradas.

Descarga de adjuntos a archivo en páginas de coachPuede añadir un enlace para descargar un adjunto a archivo en una página de coach. En este ejemplo,crea un nuevo servicio humano del lado del cliente y define un enlace único para descargar un adjunto aarchivo existente desde OpenPages. Para fines de comprobación, indique el valor de un ID de recurso deadjunto a archivo existente en OpenPages. En una implementación real, se especifica el ID del objetoDocumento con el que se quiere crear el enlace utilizando una variable de entrada en el servicio humanodel lado de cliente.

32 IBM OpenPages with Watson Versión 8.1.0 : Guía del creador de procesos de negocio de OpenPages

Page 39: Versión 8.1.0 IBM OpenPages with Watsonpublic.dhe.ibm.com/software/data/cognos/documentation/openpage… · La IBM OpenPages with Watson - Guía del creador de procesos de negocio

Procedimiento

1. Abra el editor web del Diseñador de procesos.2. Cree una aplicación de proceso.3. Abra la aplicación de proceso en el Diseñador de procesos.4. Añada dependencias a los kits de herramientas de OpenPages.

a) Pulse + situado junto a Kits de herramientas y seleccione Plataforma OpenPages.b) Pulse + situado junto a Kits de herramientas y seleccione Soluciones de OpenPages.

5. Pulse Nuevo junto a Interfaz de usuario > Servicio humano del lado de cliente e introduzca unnombre para la interfaz de usuario, por ejemplo, Descargar documento.

6. Pulse en la pestaña Variables y añada una variable privada DownloadLink de tipo serie.7. En Entrada, añada la variable de entrada DocId de tipo serie. Seleccione Con valor

predeterminado. Para fines de comprobación, introduzca el valor de un ID de recurso existente deldocumento adjunto a archivo en OpenPages.

8. Pulse en la pestaña Diagrama.9. Arrastre un Servicio de la paleta al lienzo. Colóquelo tras Inicio. Conecte el enlace de flechas del

nodo Inicio al nuevo nodo Servicio y conecte el nodo Servicio al Coach. Utilice nombres descriptivospara los nodos.

10. Pulse el nodo de servicio y seleccione el panel Implementación.11. En la sección Comportamiento, seleccione Llamar a un servicio y seleccione el servicio de

integración OPMakeDocumentLink del kit de herramientas de la plataforma OpenPages.12. Seleccione el panel Correlación de datos y especifique los parámetros siguientes:

a) En fileId, seleccione la variable de entrada DocId de nombre tw.local.DocId.b) En linkText, introduzca Descargar archivo.c) En Correlación de salida, introduzca tw.local.DownloadLink para documentLink.

13. Guarde los cambios en el servicio14. Pulse en la pestaña Coaches y seleccione una plantilla.15. Pulse Vistas > Avanzado y arrastre un HTML personalizado de la paleta al lienzo.

Capítulo 5. Ejemplos de creación de procesos 33

Page 40: Versión 8.1.0 IBM OpenPages with Watsonpublic.dhe.ibm.com/software/data/cognos/documentation/openpage… · La IBM OpenPages with Watson - Guía del creador de procesos de negocio

16. En el panel Propiedades, seleccione la pestaña HTML, pulse en Variable y seleccione la variableprivada DownloadLink.

De manera alternativa, puede utilizar la vista Texto de salida en vez de la vista HTML personalizadoen la página de coach. Seleccione el texto de salida, en Enlace seleccione la variable privadaDownloadLink|DetailLink. Pulse en el panel Propiedades y seleccione la pestañaConfiguración. Cambie el valor de Deshabilitar codificación HTML de no seleccionado aseleccionado.

17. Guarde la página de coach.

Nota: Si un usuario que no ha iniciado la sesión pulsa el enlace en la página de coach, se le solicitaráque inicie la sesión en OpenPages. En este ejemplo, cuando un usuario hace clic en la página decoach, el navegador del usuario guarda el archivo. No navega a la página de detalles del adjunto aarchivo. Para enlazar con la página de detalles, debe utilizar el servicio de integraciónOPMakeDetailLink. Para obtener más información, consulte el “OPMakeDetailLink” en la página 14.

Creación de objetos de OpenPages con un servicio de integraciónPuede utilizar un servicio de integración para crear objetos de OpenPages sin entrada de usuario. En esteejemplo, se define un proceso de negocio que crea un objeto Incidente y define el campo Gravedad en unvalor de campo enumerado.

34 IBM OpenPages with Watson Versión 8.1.0 : Guía del creador de procesos de negocio de OpenPages

Page 41: Versión 8.1.0 IBM OpenPages with Watsonpublic.dhe.ibm.com/software/data/cognos/documentation/openpage… · La IBM OpenPages with Watson - Guía del creador de procesos de negocio

Procedimiento

1. Abra el editor web del Diseñador de procesos.2. Cree una aplicación de proceso.3. Abra la aplicación de proceso en el Diseñador de procesos.4. Añada dependencias a los kits de herramientas de OpenPages.

a) Pulse + situado junto a Kits de herramientas y seleccione Plataforma OpenPages.b) Pulse + situado junto a Kits de herramientas y seleccione Soluciones de OpenPages.

5. Pulse Nuevo junto a Procesos > Proceso y póngale el nombre Crear proceso de incidente.6. Pulse la pestaña Variables y añada dos variables privadas:

• incident de tipo OPIncident• criticalityEnums de tipo OPEnumValue. Seleccione el atributo Lista.

7. Pulse la pestaña Definición.8. Arrastre los nodos de evento Inicio y Finalización de la paleta al carril Sistema. Puede suprimir el

carril Equipo. No se utiliza en este ejemplo.9. Arrastre un nodo Actividad de la paleta al lienzo.

a) En el panel Propiedades, pulse la pestaña General y póngale el nombre Obtener valoresenum de gravedad.

b) En el panel Propiedades, pulse la pestaña Implementación y cambie el valor Tipo a Tarea delsistema. Seleccione el servicio OPGetEnumeratedValues en el kit de herramientas de laplataforma OpenPages.

10. Arrastre un nodo Actividad de la paleta al lienzo.a) En el panel Propiedades, pulse la pestaña General y póngale el nombre Configurar nuevavariable de incidente.

b) En el panel Propiedades, pulse la pestaña Implementación y cambie el valor Tipo a Script.11. Arrastre un nodo Actividad de la paleta al lienzo.

a) En el panel Propiedades, pulse la pestaña General y póngale el nombre Crear incidente.b) En el panel Propiedades, pulse la pestaña Implementación y cambie el valor Tipo a Tarea del

sistema. Seleccione el servicio OPCreateObject en el kit de herramientas de la plataformaOpenPages.

12. Enlace los nodos de izquierda a derecha, siguiendo el orden mostrado.

Ya está preparado para configurar la correlación de datos de las actividades.13. Pulse el nodo Obtener valores enum de gravedad y seleccione el panel Correlación de datos.

En Correlación de entrada, defina los siguientes campos:

• En systemTask, indique true.

Capítulo 5. Ejemplos de creación de procesos 35

Page 42: Versión 8.1.0 IBM OpenPages with Watsonpublic.dhe.ibm.com/software/data/cognos/documentation/openpage… · La IBM OpenPages with Watson - Guía del creador de procesos de negocio

• En objectTypeName, indique "Incidente".• En fieldName, indique "OPSS-Inc:Criticality".

En Correlación de salida, defina el campo siguiente:

• En outObject, seleccione la variable tw.local.criticalityEnums.14. Pulse el nodo Crear incidente y seleccione el panel Correlación de datos. En Correlación de

entrada, defina los siguientes campos:

En Correlación de entrada, defina los siguientes campos:

• En systemTask, indique true.• En inObject, seleccione la variable tw.local.incident.

En Correlación de salida, defina el campo siguiente:

• En outObject, seleccione la variable tw.local.incident.

Ya está listo para especificar el script.15. Pulse el nodo Configurar nueva variable de incidente. En el panel Propiedades, pulse la

pestaña Script. Introduzca el siguiente código de ejemplo:

tw.local.incident = new tw.object.OPIncident();tw.local.incident.base = new tw.object.OPObject();tw.local.incident.base.name = "BPM Test Object creation " + new java.util.Date();tw.local.incident.OPLC_Owners__PrimaryOwner = "OpenPagesAdministrator";tw.local.incident.OPSS_Inc__Criticality = tw.local.criticalityEnums[0];

El script inicializa la variable tw.local.incident con un objeto OPIncident vacío. A continuación,define distintos campos, según sea necesario en el caso práctico. Utilizando las propiedades de lavariable incident y sus propiedades anidadas, como tw.local.incident.base, puede definircualquier campo en el objeto Incidente. En este ejemplo, se definen los campos siguientes:

• El nombre se define como un valor creado de manera dinámica.• PrimaryOwner se define en OpenPagesAdministrator.• El campo enumerado Nivel de importancia se define en uno de los valores de la variablecriticalityEnum rellenados en la primera actividad.

Si sabe el nombre o el ID de un valor enumerado para un campo, puede definirlo directamente sinutilizar el servicio OPGetEnumeratedValues. Por ejemplo, introduzca el código siguiente para definirel campo Gravedad en Alta:

tw.local.incident.OPSS_Inc__Criticality = new tw.object.OPEnumValue();tw.local.incident.OPSS_Inc__Criticality.name = "High";

16. Guarde los cambios aplicados al proceso.

Actualización de objetos de OpenPages con un servicio humano del lado decliente

Puede utilizar un servicio de integración para actualizar objetos de OpenPages en un servicio humano dellado de cliente. Los usuarios acceden a una página de coach, actualizan los campos en un objetoespecífico y los cambios se reflejan en OpenPages. Se utiliza el servicio de integración OPUpdateObjectde OpenPages. Sin embargo, no puede llamar directamente a OPUpdateObject desde el servicio humanodel lado de cliente porque utiliza un parámetro de entrada con tipo de objeto de negocio ANY. Parasolucionar esto, puede crear un servicio de integración que llame a un tipo de objeto que los usuariospuedan actualizar. En este ejemplo, se define un servicio de integración que puede actualizar un tipo deobjeto. A continuación, se llama a dicho servicio en un servicio humano del lado de cliente que utilizaOPUpdateObject.

36 IBM OpenPages with Watson Versión 8.1.0 : Guía del creador de procesos de negocio de OpenPages

Page 43: Versión 8.1.0 IBM OpenPages with Watsonpublic.dhe.ibm.com/software/data/cognos/documentation/openpage… · La IBM OpenPages with Watson - Guía del creador de procesos de negocio

Procedimiento

1. Abra el editor de escritorio del Diseñador de procesos.2. Abra el Diseñador de procesos.

En primer lugar, cree un servicio de integración que llame a un tipo de objeto, OPIncident en esteejemplo.

3. Añada dependencias a los kits de herramientas de OpenPages.a) Pulse Kits de herramientas y seleccione Plataforma OpenPages.b) Pulse Kits de herramientas y seleccione Soluciones de OpenPages.

4. Pulse Nuevo junto a Implementación > Servicio de integración y póngale el nombreOPUpdateIncident.

5. Pulse en la pestaña Variables y añada dos variables:

• En inObject, seleccione OPIncident como entrada.• En outObject, seleccione OPIncident como salida.

Defina el tipo inObject como OPIncident, en lugar de ANY, para poder llamar a la variable desde unservicio humano de cliente.

6. Pulse la pestaña Diagrama y arrastre un nodo Servicio anidado de la paleta al lienzo.a) Póngale el nombre Actualizar incidente.b) En el panel Propiedades, pulse en la pestaña Implementación. Seleccione el servicio de

integración OPUpdateObject de OpenPages.c) Pulse en la pestaña Correlación de datos. En Correlación de entrada, indique false en

systemTask y tw.local.inObject en inObject. En Correlación de salida, indiquetw.local.outObject en outObject(ANY).

7. Conecte los nodos Inicio y Finalización antes y después del nodo OPUpdateIncident.8. Guarde el servicio de integración de OPUpdateIncident. Ya está listo para definir el servicio

humano del lado de cliente.9. Pulse el icono del signo más situado junto a Interfaz de usuario > Servicio humano del lado de

cliente y póngale un nombre, como Ver y editar incidente.10. Pulse en la pestaña Variables y añada dos variables:

• objectId como variable de entrada de tipo Serie.• Incident como variable privada de tipo OPIncident.

11. Pulse Diagrama.12. Arrastre un nodo Servicio de la paleta al lienzo. Este nodo recupera un objeto Incidente.

a) En el panel Propiedades, pulse la pestaña General y póngale el nombre Recuperarincidente.

b) En el panel Propiedades, pulse la pestaña Implementación y seleccione el servicio OPGetObjecten el kit de herramientas de la plataforma OpenPages.

c) Pulse en la pestaña Correlación de datos. En Correlación de entrada, indique false ensystemTask y tw.local.objectId en objectId. En Correlación de salida, indiquetw.local.incident en outObject(ANY).

13. Edite el nodo de coach predeterminado. Póngale el nombre Ver y editar incidente. Pulse lapestaña Coach y arrastre los controles a la página de coach, de manera que los usuarios puedan ver yeditar un objeto Incidente.

14. Arrastre un nodo Servicio de la paleta al lienzo. Este nodo actualiza el objeto Incidente con lasediciones indicadas por el usuario.a) En el panel Propiedades, pulse la pestaña General y póngale el nombre Actualizarincidente.

b) En el panel Propiedades, pulse la pestaña Implementación y seleccione el servicioOPUpdateIncident que haya creado previamente.

Capítulo 5. Ejemplos de creación de procesos 37

Page 44: Versión 8.1.0 IBM OpenPages with Watsonpublic.dhe.ibm.com/software/data/cognos/documentation/openpage… · La IBM OpenPages with Watson - Guía del creador de procesos de negocio

15. Conecte los nodos de izquierda a derecha, siguiendo el orden de los pasos.16. Guarde el servicio humano del lado de cliente.

Utilización de recursos de localizaciónPuede visualizar etiquetas de campo de visualización y texto en una página de coach en idiomaslocalizados. En este ejemplo, creará un nuevo servicio humano del lado del cliente y definirá una variableque permita mostrar campos en idiomas localizados.

Procedimiento

1. Abra el editor web del Diseñador de procesos.2. Cree una aplicación de proceso.3. Abra la aplicación de proceso en el Diseñador de procesos.4. Añada dependencias a los kits de herramientas de OpenPages.

a) Pulse + situado junto a Kits de herramientas y seleccione Plataforma OpenPages.b) Pulse + situado junto a Kits de herramientas y seleccione Soluciones de OpenPages.

5. Pulse Nuevo junto a Interfaz de usuario > Servicio humano del lado de cliente y especifique unnombre para la interfaz de usuario.

6. Pulse en la pestaña Variables.a) Expanda Recursos de localización.b) Defina variables para los elementos que quiera poder mostrar en idiomas localizados. Por ejemplo,

seleccione OPFieldLabels o OPPlatformTexts. Una vez que haya definido las variables, puedeempezar a diseñar la página de coach.

38 IBM OpenPages with Watson Versión 8.1.0 : Guía del creador de procesos de negocio de OpenPages

Page 45: Versión 8.1.0 IBM OpenPages with Watsonpublic.dhe.ibm.com/software/data/cognos/documentation/openpage… · La IBM OpenPages with Watson - Guía del creador de procesos de negocio

7. Pulse en la pestaña Coaches y seleccione una plantilla.a) Arrastre una Vista, como la vista Selección única, de la paleta al lienzo.b) En el panel Propiedades, pulse el icono situado junto a Etiqueta.c) Pulse en Seleccionar y elija un campo.

Figura 4. Definición de una página de coach8. Enlace el control a una variable y continúe definiendo la vista.9. Guarde la página de coach.

Definición de procesos jerárquicos básicos

En un proceso jerárquico, un objeto padre de un proceso puede iniciar procesos hijo para aquellos objetosasociados al objeto padre.

En este ejemplo, los objetos Emitir se recuperan de OpenPages. Pueden tener uno o varios elementos deacción. Una vez solucionados los elementos de acción, el problema se puede cerrar.

En este ejemplo, un pequeño número (entre 10 y 20) de objetos hijo están en marcha. El proceso padreutiliza el servicio de integración OPHierarchyAssigneeQuery y un tipo de bucle de varias instancias. Si seinicia un número mayor de objetos hijo, puede crear los procesos para optimizar el rendimiento delservidor. Si desea más información, consulte “Definición de procesos jerárquicos avanzados ” en lapágina 43.

Definición de un proceso hijoDefina un proceso hijo que se denomine Completar elemento de acción. Este proceso contiene una tareade usuario que puede lanzarse en paralelo.

Capítulo 5. Ejemplos de creación de procesos 39

Page 46: Versión 8.1.0 IBM OpenPages with Watsonpublic.dhe.ibm.com/software/data/cognos/documentation/openpage… · La IBM OpenPages with Watson - Guía del creador de procesos de negocio

Procedimiento

1. Abra el editor web del Diseñador de procesos.2. Cree una aplicación de proceso.3. Abra la aplicación de proceso en el Diseñador de procesos.

4. Añada dependencias a los kits de herramientas de OpenPages.a) Pulse + situado junto a Kits de herramientas y seleccione Plataforma OpenPages.b) Pulse + situado junto a Kits de herramientas y seleccione Soluciones de OpenPages.

5. Cree un proceso denominado Completar elemento de acción.6. Pulse en la pestaña Variables. Añada una variable de entrada y denomínela actionitemId.7. Cree un nuevo carril o cambie el nombre de uno ya existente a Responsable.8. Añada un único nodo Actividad al carril Responsable y conéctelo con los nodos Inicio y Finalización.

Pulse el panel Propiedades y defina lo siguiente:a) Pulse Implementación y defina una Tarea de usuario para que utilice el Servicio humano

predeterminado. Más tarde podrá sustituirla con un UI de coach diferente.b) Pulse en Correlación de datos y defina las entradas para la definición del UI de coach. Pase la

variable tw.local.actionItemId y correlaciónela con una variable Entrada para el ID utilizadopor el coach para conseguir el objeto de OpenPages.

c) Pulse Asignaciones y especifique que el usuario nombrado en el elemento de acción será elresponsable. En Asignaciones, defina los campos siguientes:

• En Asignar a, seleccione Equipo.• En Equipo, seleccione Todos los usuarios.• En Servicio de filtro de equipos, seleccione Filtro de equipo por campo de objeto.

En Correlación de entrada, defina los siguientes campos:

• En systemTask, escriba true.• En objectId, escriba tw.local.actionId.• En field, escriba OPSS-AI:Assignee.• En expandGroups, escriba false.

9. Guarde el proceso.10. Defina una página de coach. Lo ideal sería que Completar elemento de acción fuese un servicio

humano personalizado (coach) que mostrase información del elemento de acción, que se recuperaráutilizando el servicio de integración OPGetObject del kit de herramientas de la plataformaOpenPages. Esto permitirá al responsable del elemento de acción obtener una tarea que le pediráque ejecute un trabajo en el elemento de acción que le ha sido asignado para el problema.

Definición de un proceso padreDefina un proceso padre denominado Solución de problemas. Determina qué elementos de acciónexisten. Utiliza el servicio de integración OPHierarchyAssigneeQuery. Se enlaza con el proceso Completar

40 IBM OpenPages with Watson Versión 8.1.0 : Guía del creador de procesos de negocio de OpenPages

Page 47: Versión 8.1.0 IBM OpenPages with Watsonpublic.dhe.ibm.com/software/data/cognos/documentation/openpage… · La IBM OpenPages with Watson - Guía del creador de procesos de negocio

elemento de acción y se inicia un proceso para cada Elemento de acción hijo bajo el Problema. Utiliza losbucles para completar los procesos.

Procedimiento

1. Cree un proceso denominado Corrección de problemas.

2. Pulse en la pestaña Variables.a) Cree una variable cuyo tipo sea OPSOXIssue. Denomínela problema.b) Cree una variable de lista cuyo tipo sea OPSOXTask. Denomínela acciones.

3. Pulse en la pestaña Definición y cree tres carriles:

• Responsable del problema• Propietarios del elemento de acción• Sistema

4. En el carril Responsable del problema, cree un nodo de actividad Tarea de usuario:a) Denomínela Crear elementos de acción.b) Pulse en Asignaciones.

En Asignaciones, defina los campos siguientes:

• En Asignar a, seleccione Equipo.• En Equipo, seleccione Todos los usuarios.• En Servicio de filtro de equipos, seleccione Filtro de equipo por campo de objeto.

En Correlación de entrada, defina los campos siguientes:

• En systemTask, escriba true.• En objectId, escriba tw.local.issue.base.id.• En field, escriba OPSS-Iss:Assignee.• En expandGroups, escriba false.

5. En el carril Responsable del problema, cree otro nodo de actividad Tarea de usuario:a) Denomínelo Realizar revisión final.b) Pulse en Asignaciones.

En Asignaciones, defina los campos siguientes:

Capítulo 5. Ejemplos de creación de procesos 41

Page 48: Versión 8.1.0 IBM OpenPages with Watsonpublic.dhe.ibm.com/software/data/cognos/documentation/openpage… · La IBM OpenPages with Watson - Guía del creador de procesos de negocio

• En Asignar a, seleccione Equipo.• En Equipo, seleccione Todos los usuarios.• En Servicio de filtro de equipos, seleccione Filtro de equipo por campo de objeto.

En Correlación de entrada, defina los campos siguientes:

• En systemTask, escriba true.• En objectId, escriba tw.local.issue.base.id.• En field, escriba OPSS-Iss:Assignee.• En expandGroups, escriba false.

6. En el carril Sistema, cree un nodo de actividad Tarea del sistema:a) Denomínelo Obtener problema.b) Pulse en Implementación.c) En Implementación, seleccione el servicio de integración OPGetObject. Utilícelo para realizar

pruebas. En una implementación real, podría iniciar una IU de coach de proceso que permitiese alusuario seleccionar un Problema.

7. En el carril Sistema, cree otro nodo de actividad Tarea del sistema:a) Denomínelo Elementos de acción de cálculo.b) Pulse en Implementación. En Implementación, seleccione el servicio de integración

OPHierarchicalAssigneeQuery. Así, se ejecutará una consulta en los hijos de los Elementos deacción bajo Problema.

c) Pulse en Correlación de datos. En Correlación de entrada, defina los campos siguientes:

• En systemTask, escriba true.• En parentType, escriba SOXIssue.• En parentID, escriba tw.local.issue.base.id.• En childType, escriba SOXTask.• En assigneeField, escriba OPSS-AI:Assignee.• En isPrimary, escriba true.• En isCaseInsensitive, escriba true.• Deje filters en blanco.• Deje pageSize en blanco.• En isDirect, escriba true.

8. En el carril Propietarios del elemento de acción, cree un nodo Proceso enlazado.a) Póngale el nombre Completar elemento de acción.b) Pulse en General. En Comportamiento, seleccione Bucle de varias instancias en Tipo de bucle.c) En Bucle de varias instancias, defina los campos siguientes:

• En Cantidad de inicio, escriba tw.local.actions.listLength.• En Ordenación, seleccione Ejecutar en paralelo.

Si seleccione Ejecutar en paralelo, cada proceso hijo se inicia inmediatamente y de formasimultánea. Esto podría dar lugar a problemas de escalabilidad puesto que IBM BPM no limita laejecución de los hijos. Si el proceso hijo solo realiza las tareas del sistema, por ejemplo, crearobjetos nuevos en OpenPages, es recomendable seleccionar Ordenación con Ejecutar ensecuencia para minimizar la carga. Si el proceso hijo tiene tareas que se deben ejecutar enparalelo y se prevé que haya un número elevado de procesos hijo (más de 10-20), consulte“Definición de procesos jerárquicos avanzados ” en la página 43 para realizar un diseñoalternativo.

• En Condición de flujo, seleccione Esperar a que todos finalicen (Todos).

42 IBM OpenPages with Watson Versión 8.1.0 : Guía del creador de procesos de negocio de OpenPages

Page 49: Versión 8.1.0 IBM OpenPages with Watsonpublic.dhe.ibm.com/software/data/cognos/documentation/openpage… · La IBM OpenPages with Watson - Guía del creador de procesos de negocio

d) Pulse en Implementación. En Implementación, seleccione Proceso enlazado en Tipo.e) Pulse en Correlación de datos. En Correlación de entrada, defina el campo siguiente:

• En actionItemId, escriba tw.local.actions[tw.system.step.counter].base.id.9. Conecte las líneas.

10. Guarde el proceso.

Definición de procesos jerárquicos avanzados

Puede utilizar el servicio de integración OPLaunchChildProcesses en un proceso jerárquico en el que unobjeto padre de un proceso puede iniciar los procesos hijos de objetos asociados con el objeto padre.Este ejemplo ilustra cómo manejar un gran número, incluso cientos, de elementos de acción hijo sincomprometer el rendimiento del servidor.

Antes de empezarRealice las tareas descritas en “Definición de procesos jerárquicos básicos” en la página 39. Aproveche lainformación y los datos de este ejemplo.

Acerca de esta tarea

El ejemplo de procesos jerárquicos básicos no puede regular la ejecución de los procesos para procesosenlazados y funciona mejor con volúmenes pequeños de datos. El ejemplo de procesos jerárquicosavanzados se ha diseñado para grandes volúmenes de datos. Utilice la API de BPM para iniciar unproceso hijo para cada valor de la variable de la lista ChildInputs, una variable privada creada por elusuario. Las API pueden controlar la rapidez con la que se inician los procesos, e incluye un retardo entreprocesos para regular la ejecución en caso necesario. Por último, puede optar por ampliar el procesopadre de modo que espere a que se completen los procesos hijo antes de pasar a la siguiente actividad.

Capítulo 5. Ejemplos de creación de procesos 43

Page 50: Versión 8.1.0 IBM OpenPages with Watsonpublic.dhe.ibm.com/software/data/cognos/documentation/openpage… · La IBM OpenPages with Watson - Guía del creador de procesos de negocio

Definición de un proceso padre para que utilice OPLaunchChildProcessesModifique el proceso padre en el proceso jerárquico básico de modo que utilice el servicio de integraciónOPLaunchChildProcesses.

Procedimiento

1. Duplique el proceso padre, Corrección de problemas, que ha creado en el ejemplo de procesosjerárquicos básicos. Cambie el nombre a Corrección de problemas av..

2. Duplique el proceso hijo, Completar elemento de acción, que ha creado en el ejemplo deprocesos jerárquicos básicos. Cambie el nombre a Completar elemento de acción - Av..

3. Pulse en la pestaña Variables.a) Cree una variable privada cuyo tipo sea Correlación (Datos del sistema). DenomínelachildInputs.

b) Seleccione Lista para convertir childInputs en una Lista de correlaciones.c) Seleccione Con valor predeterminado para el valor predeterminado.

4. Pulse la pestaña Definición. El proceso tiene tres carriles:

• Responsable del problema• Propietarios del elemento de acción• Sistema

5. En el carril Propietarios del elemento de acción, seleccione el nodo Completar elemento deacción.a) Cambie el nombre del nodo a Iniciar procesos hijo.b) Cambiélo desde un proceso enlazado a una tarea de sistema.c) Pulse en General. En Comportamiento, seleccione Ninguno, en Tipo de bucle.d) Pulse en Implementación. En Tipo, seleccione Tarea del sistema.e) En Implementación, seleccione el servicio de integración OPLaunchChildProcesses.f) Pulse en Correlación de datos. En Correlación de entrada, defina los campos siguientes:

• En Nombre de proceso, escriba el nombre del proceso hijo, Completar elemento deacción - Av..

• En Valores de entrada, escriba tw.local.childInputs .• En Retardo, escriba 1000.• En Añadir dependencia, escriba true.

6. En el carril Sistema, cree un nodo de actividad Script después de Elementos de acción de cálculo:a) Denomínelo Correlacionar valores de entrada.b) Pulse en Script.c) Escriba un script como el ejemplo siguiente. Si utiliza los nombres de variable para los procesos

padre e hijo como en este ejemplo, no tiene que modificar el script.

//inicializar lista childInputs de correlacionestw.local.childInputs = new tw.object.listOf.toolkit.TWSYS.Map();//crear bucle para cada elemento de acciónfor (var i=0; i<tw.local.actions.listLength; i++) { //obtener el elemento de acción var action = tw.local.actions[i]; //inicializar una correlación para este elemento de acción var map = new tw.object.toolkit.TWSYS.Map(); //correlacionar valores desde la acción hasta los nombres de variable de entrada del proceso hijo map.put("actionItemId", action.base.id); //insertar correlación con la lista childInputs tw.local.childInputs.insertIntoList(i, map);

44 IBM OpenPages with Watson Versión 8.1.0 : Guía del creador de procesos de negocio de OpenPages

Page 51: Versión 8.1.0 IBM OpenPages with Watsonpublic.dhe.ibm.com/software/data/cognos/documentation/openpage… · La IBM OpenPages with Watson - Guía del creador de procesos de negocio

d) Vuelva a conectar las flechas desde Elementos de acción de cálculo a Correlacionar valores deentrada. Conecte una flecha de salida desde Correlacionar valores de entrada hasta Iniciarprocesos hijo.

7. Guarde el proceso.

ResultadosEl servicio de integración OPLaunchChildProcesses inicia el proceso hijo, pero no espera a que el hijohaya finalizado para pasar a la siguiente actividad. Una vez iniciado cada proceso hijo de la lista, elservicio de integración OPLaunchChildProcesses finaliza y el proceso padre se reanuda y pasa al siguientenodo de actividad. Esto significa que en el ejemplo de Corrección de problemas después de Iniciarprocesos hijo, el Responsable del problema recibe la tarea para Realizar revisión final,independientemente de si los procesos hijos se han completado o no. Además, si la entradaOPLaunchChildProcesses AddDependency es true, establece una relación entre el proceso padre y elproceso hijo. Sin esta relación, los dos procesos no tendrían ninguna conexión una vez iniciado el procesohijo. Con la relación de dependencia, el proceso padre no puede finalizar hasta que hayan finalizado todoslos procesos hijo. Además, si termina el proceso padre, también se terminan los procesos hijo. Según suscasos de uso, esto podría ser suficiente para sus necesidades.

Para obtener información sobre las relaciones en IBM Business Process Manager, consulte https://www.ibm.com/support/knowledgecenter/SSFTN5_8.5.7/com.ibm.wbpm.wle.editor.doc/topics/tcrtrelation.html.

Qué hacer a continuación

El ejemplo de jerarquía avanzada ha finalizado. Puede optar por ampliar el proceso padre de modo queespere a que se completen los procesos hijo antes de pasar a la siguiente actividad.

Ampliación de un proceso padre de modo que espere a que se completen los procesoshijo

Puede optar por ampliar el proceso padre de modo que espere a que se completen los procesos hijoantes de pasar a la siguiente actividad. Para ello debe definir un agente encubierto que permita que unproceso hijo envíe un mensaje al proceso padre cuando haya finalizado.

En la figura siguiente se muestra la ampliación, que se explica en esta parte del ejemplo.

Capítulo 5. Ejemplos de creación de procesos 45

Page 52: Versión 8.1.0 IBM OpenPages with Watsonpublic.dhe.ibm.com/software/data/cognos/documentation/openpage… · La IBM OpenPages with Watson - Guía del creador de procesos de negocio

Definición del agente encubierto

Defina el agente encubierto. Un agente encubierto define una cola en la que los procesos pueden enviarmensajes y escuchar mensajes. Un agente encubierto está conectado a un evento de mensaje o a unevento de contenido en un proceso o definición de proceso de negocio y llama a un servicio para manejarel evento.

Para obtener más información sobre los agentes encubiertos, consulte https://www.ibm.com/support/knowledgecenter/SSFTN5_8.5.7/com.ibm.wbpm.wle.editor.doc/topics/using_undercover_agents.html.

Procedimiento

1. Abra el editor de escritorio del Diseñador de procesos.2. Abra la aplicación de proceso.3. En Implementación, pulse en Agente encubierto.

a) En Nombre, escriba AI_Complete.b) En Tipo de programación, seleccione A partir de evento.c) En Detalles, seleccione Serie en Tipo de variable.

46 IBM OpenPages with Watson Versión 8.1.0 : Guía del creador de procesos de negocio de OpenPages

Page 53: Versión 8.1.0 IBM OpenPages with Watsonpublic.dhe.ibm.com/software/data/cognos/documentation/openpage… · La IBM OpenPages with Watson - Guía del creador de procesos de negocio

4. Guarde el agente encubierto.

Cambiar el proceso hijo para que envíe el mensaje de agente encubiertoActualice el proceso hijo de modo que incluya una referencia de variable al ID de proceso padre y cree unmensaje que se envíe al agente encubierto.

Procedimiento

1. Abra el editor web del Diseñador de procesos.2. Abra el proceso hijo denominado Completar elemento de acción - Av..3. Pulse en la pestaña Variables y añada una variable privada de tipo serie (Datos del sistema).

Denomínela ParentPID.4. Pulse la pestaña Definición.5. Pulse en el nodo Finalización.6. En el panel Propiedades, pulse en la pestaña Implementación.

a) En Finalizar tipo de suceso, seleccione Mensaje.b) En Propiedades de suceso, seleccione el agente encubierto AI Complete en UCA de mensaje

adjunto.7. Pulse en Correlación de datos. En Correlación de entrada, defina el campo siguiente:

• En InputValues, escriba tw.local.ParentPID.

Capítulo 5. Ejemplos de creación de procesos 47

Page 54: Versión 8.1.0 IBM OpenPages with Watsonpublic.dhe.ibm.com/software/data/cognos/documentation/openpage… · La IBM OpenPages with Watson - Guía del creador de procesos de negocio

8. Guarde el proceso.

Ampliación de un proceso padre de modo que espere recibir mensajes de agente encubierto

Amplíe el proceso padre existente de modo que espere a que los procesos hijo se completen antes decontinuar. Se utiliza un contador que realiza un seguimiento para saber cuándo se completan losprocesos hijo. Se utiliza un IME (Intermediate Message Event o suceso de mensaje intermedio) pararecibir los mensajes de agente encubierto que se envían cuando finaliza cada proceso hijo.

El uso de un agente encubierto permite la comunicación asíncrona entre las distintas instancias delproceso. En este caso, puede controlar el proceso padre mediante la espera del envío de suficientesmensajes por parte de los procesos hijo cuando estos finalizan.

Procedimiento

1. Abra el editor web del Diseñador de procesos.2. Abra el proceso padre denominado Issue Remediation Adv (Corrección de problemas av.).3. Pulse en la pestaña Variables.

a) Cree una variable privada cuyo tipo sea Entero (Datos del sistema). Asígnele el nombreChildrenFinished. Seleccione Con valor predeterminado y establézcala en 0.

b) Cree una variable privada cuyo tipo sea Serie (Datos del sistema). Asígnele el nombrecurrentProcessId.

4. Pulse la pestaña Definición. Este proceso tiene tres carriles:

• Responsable del problema• Propietarios del elemento de acción• Sistema

5. En el carril Propietarios del elemento de acción, añada dos nodos después de la tarea del sistemaIniciar procesos hijo.

6. Primero añada un suceso intermedio.

48 IBM OpenPages with Watson Versión 8.1.0 : Guía del creador de procesos de negocio de OpenPages

Page 55: Versión 8.1.0 IBM OpenPages with Watsonpublic.dhe.ibm.com/software/data/cognos/documentation/openpage… · La IBM OpenPages with Watson - Guía del creador de procesos de negocio

a) Asígnele el nombre Wait For Child (Esperar a hijo).b) Pulse en Implementación.c) En Implementación, seleccione AI_Complete en UCA de mensaje adjunto.d) Seleccione Consumir mensaje.e) Seleccione Suscripción duradera.f) Pulse en Correlación de datos, seleccione Salida (Serie) en Variable de correlación. En la

correlación de salida Output =, escriba tw.local.currentProcessId.g) Pulse en Pre&Post y añada la asignación siguiente en Asignaciones posteriores:

tw.local.ChildrenFinished = tw.local.ChildrenFinished + 1

7. A continuación, añada una pasarela exclusiva.a) Asígnela el nombre Con hijos que han finalizado.b) Cree una flecha de salida desde el nodo de pasarela exclusiva hasta el suceso intermedio.c) Cree una segunda flecha desde la pasarela hasta el paso siguiente, la tarea Realizar revisión final.d) Cree una flecha de salida desde el suceso intermedio hasta la pasarela.e) En Implementación, defina Flujo predeterminado como To Wait For Child (Esperar a hijo).f) Defina la condición Realizar revisión final con la expresión siguiente:

1. tw.local.ChildrenFinished == tw.local.actions.ListLength

8. Abra el nodo de script Correlacionar valores de entrada y pulse en Script.a) Inserte la línea siguiente en el principio del script.

tw.local.currentProcessId = tw.system.currentProcessInstance.id;

b) Busque la línea map.put("actionItemId", action.base.id); . Inserte las líneassiguientes a continuación.

//correlacionar el id de instancia de proceso con los procesos hijo map.put("ParentPID", tw.local.currentProcessId);

De este modo, el ID de instancia de proceso pasa a la nueva variable de entrada en el proceso hijo.

El script final sería así:

tw.local.currentProcessId = tw.system.currentProcessInstance.id;

//inicializar lista childInputs de correlacionestw.local.childInputs = new tw.object.listOf.toolkit.TWSYS.Map();

//crear bucle para cada elemento de acciónfor (var i=0; i<tw.local.actions.listLength; i++) { //obtener el elemento de acción var action = tw.local.actions[i]; //inicializar una correlación para este elemento de acción var map = new tw.object.toolkit.TWSYS.Map(); //correlacionar valores desde la acción hasta los nombres de variable de entrada del proceso hijo map.put("actionItemId", action.base.id); //correlacionar el id de instancia de proceso con los procesos hijo map.put("ParentPID", tw.system.currentProcessInstance.id); //insertar correlación con la lista childInputs tw.local.childInputs.insertIntoList(i, map);}

9. Guarde el proceso.

Capítulo 5. Ejemplos de creación de procesos 49

Page 56: Versión 8.1.0 IBM OpenPages with Watsonpublic.dhe.ibm.com/software/data/cognos/documentation/openpage… · La IBM OpenPages with Watson - Guía del creador de procesos de negocio

ResultadosAhora la tarea Realizar revisión final no se asignará al Responsable del problema hasta que hayafinalizado la tarea Iniciar procesos hijo.

Recuperación de una lista de objetos hijoPuede recuperar una lista de objetos hijo y mostrarlos en una página de coach. El usuario puede ver lalista, seleccionar uno o varios objetos hijo de la lista y actualizar el objeto padre o cualquier otro objetohijo seleccionado. En este ejemplo, se buscan objetos Riesgo en un objeto Evaluación de riesgo y semuestran en una tabla de la página de coach. Puede crear un nuevo servicio humano del lado de cliente,definir una variable para la lista de objetos hijo y recuperar los objetos hijo del objeto padre. El servicioOPHierarchicalQuery devolverá más información que OPGetChildAssociations.

Procedimiento

1. Abra el editor web del Diseñador de procesos.2. Cree una aplicación de proceso.3. Abra la aplicación de proceso en el Diseñador de procesos.4. Añada dependencias a los kits de herramientas de OpenPages.

a) Pulse + situado junto a Kits de herramientas y seleccione Plataforma OpenPages.b) Pulse + situado junto a Kits de herramientas y seleccione Soluciones de OpenPages.

5. Pulse Nuevo junto a Interfaz de usuario > Servicio humano del lado de cliente y especifique unnombre para la interfaz de usuario.

6. Pulse en la pestaña Variables.a) Pulse Privado y proporcione un nombre, como ReturnedRisk.b) Seleccione Es lista.c) Pulse Seleccionar y elija un objeto de negocio, como OPSOXRisk.

7. Seleccione la pestaña Diagrama.a) Arrastre un Servicio de la paleta al lienzo. Denomínelo GetRisks.b) En el panel Implementación, pulse Llamar a un servicio.c) Pulse Seleccionar y elija OPHierarchicalQuery.

8. Pulse el panel Correlación de datos y proporcione entradas para los campos siguientes:a) En systemTask, especifique si la tarea accede a OpenPages como cuenta de sistema o cuenta

actual.b) En parentType, indique el ID o la vía de acceso completa de un objeto padre, como

"RiskAssessment". Puede ser una variable local.c) En parentId, indique el ID o la vía de acceso completa de un objeto padre, comotw.local.RA_ID. Puede ser una variable local.

d) En isPrimary, escriba false.e) En isCaseInsensitive, escriba true.f) En campos, indique "[SOXRisk].*".g) En isDirect, introduzca true.h) En Correlación de salida, seleccione returnObjects (lista de ANY) y especifiquetw.local.ReturnedRisk.

9. Pulse en la pestaña Coaches y seleccione una plantilla.a) Arrastre una tabla de la paleta al lienzo.b) En la vista de tabla, enlace la variable ReturnedRisk a la tabla.c) Cree la cabecera de columna para la primera columna.

50 IBM OpenPages with Watson Versión 8.1.0 : Guía del creador de procesos de negocio de OpenPages

Page 57: Versión 8.1.0 IBM OpenPages with Watsonpublic.dhe.ibm.com/software/data/cognos/documentation/openpage… · La IBM OpenPages with Watson - Guía del creador de procesos de negocio

• Arrastre un Texto de salida a la tabla.• Denomine la cabecera de columna Nombre de riesgo.• Enlace la columna con la variable ReturnedRisks.currentItem.risk.base.name.

d) Cree la cabecera de columna para la segunda columna.

• Arrastre un Texto de salida a la tabla.• Denomine la cabecera de columna Descripción de riesgo.• Enlace la columna con la variableReturnedRisks.currentItem.risk.base.description.

10. Guarde el servicio de coach.

Bloqueo y desbloqueo de objetos

Puede bloquear y desbloquear objetos en un proceso de negocio.

Procedimiento

1. Abra el editor web del Diseñador de procesos.2. Cree una aplicación de proceso.3. Abra la aplicación de proceso en el Diseñador de procesos.4. Añada dependencias a los kits de herramientas de OpenPages.

a) Pulse + situado junto a Kits de herramientas y seleccione Plataforma OpenPages.b) Pulse + situado junto a Kits de herramientas y seleccione Soluciones de OpenPages.

5. Pulse Nuevo, junto a Interfaz de usuario > Servicio humano del lado de cliente, e indique unnombre, como Bloquear incidente.

6. Pulse la pestaña Diagrama y cree el proceso.7. Cuando llegue al punto en el que necesite bloquear un objeto, arrastre un Servicio de la paleta al

lienzo. Conecte el enlace de flechas del nodo anterior con el nuevo servicio.

8. Pulse el nodo de servicio y seleccione el panel Implementación.9. En la sección Comportamiento, seleccione Llamar a un servicio y, a continuación, seleccione el

servicio de integración OPLockObject del kit de herramientas de la plataforma OpenPages.10. Seleccione el panel Correlación de datos y especifique un ID de objeto específico o

tw.local.objectId en objectId,

Capítulo 5. Ejemplos de creación de procesos 51

Page 58: Versión 8.1.0 IBM OpenPages with Watsonpublic.dhe.ibm.com/software/data/cognos/documentation/openpage… · La IBM OpenPages with Watson - Guía del creador de procesos de negocio

11. Guarde los cambios en el servicio.

Nota: Para desbloquear un objeto, siga los mismos pasos, pero utilice el servicio de integraciónOPUnlockObject.

Envío de notificaciones por correo electrónico

Puede definir procesos de negocio para enviar notificaciones por correo electrónico en momentosespecíficos del proceso de negocio. En este ejemplo, los objetos Riesgo se recuperan de OpenPages y seenvía un mensaje de correo electrónico al propietario primario del objeto. El correo electrónico contieneun enlace a una tarea de revisión en el texto del cuerpo.

La siguiente figura muestra el proceso de negocio que se explica en este ejemplo.

En este proceso se utiliza una Pasarela paralela porque el correo electrónico contiene un enlace de URL auna tarea de proceso que aún no existe. La Pasarela paralela inicia la tarea del sistema Enviar correoelectrónico y, simultáneamente, asigna una tarea de interfaz de usuario (la tarea con la que enlaza elURL). Debe añadir un script a la tarea del sistema que busque el ID de la otra tarea.

El nodo Enviar correo electrónico llama a un servicio anidado, que se muestra en la figura siguiente.

52 IBM OpenPages with Watson Versión 8.1.0 : Guía del creador de procesos de negocio de OpenPages

Page 59: Versión 8.1.0 IBM OpenPages with Watsonpublic.dhe.ibm.com/software/data/cognos/documentation/openpage… · La IBM OpenPages with Watson - Guía del creador de procesos de negocio

El servicio anidado completa las siguientes funciones:

• recupera el objeto utilizando OPGetObject• recupera las propiedades predeterminadas del sistema utilizando Propiedades predeterminadas del

sistema de obtención de correo electrónico• recupera el URL a OpenPages utilizando OPGetBaseURL• construye el asunto y el texto del cuerpo del correo electrónico utilizando un script• envía el correo electrónico por medio de Enviar correo electrónico de IBM BPM Email

Procedimiento

1. Abra el editor de escritorio del Diseñador de procesos.2. Abra el Diseñador de procesos.3. Añada dependencias a los kits de herramientas de OpenPages.

a) Pulse Kits de herramientas y seleccione Plataforma OpenPages.b) Pulse Kits de herramientas y seleccione Soluciones de OpenPages.

4. Pulse Nuevo junto a Procesos > Definición de proceso de negocio y póngale el nombre Revisiónde riesgo y envío de correo electrónico.

5. Cree los primeros nodos del proceso de negocio (estos nodos no forman parte del ejemplo).6. En el momento en el que quiera que se envíe un correo electrónico, arrastre una Pasarela de la

paleta al carril Sistema.a) En el panel Propiedades, pulse en la pestaña General.b) Seleccione Pasarela paralela en Tipo de pasarela.c) Deje vacío el campo Porcentajes de flujo de salida en la pestaña Simulación (se completará más

tarde automáticamente).7. Arrastre una Actividad de la paleta al carril Equipo. Denomínela Revisión de riesgos.

a) En el panel Propiedades, pulse en la pestaña Implementación. Seleccione Tarea de usuario.Pulse Seleccionar y elija el servicio humano del lado de cliente que representa la página de coachutilizada por el destinatario de correo electrónico al pulsar el enlace del correo electrónico.

b) Pulse Correlación de datos y añada la correlación de entrada y de salida necesaria para la páginade coach.

8. Arrastre una Actividad de la paleta al carril Sistema. Denomínela Enviar correo electrónico.9. En el panel Propiedades, pulse en la pestaña Implementación. Seleccione Tarea del sistema. Pulse

Nuevo y cree un nuevo servicio de integración. Denomínelo SendEmailForRiskOwner.10. Pulse Variables y defina las variables siguientes requeridas por el servicio de integración.

• smtpHost (Serie)• defaultFromAddress (Serie)

Capítulo 5. Ejemplos de creación de procesos 53

Page 60: Versión 8.1.0 IBM OpenPages with Watsonpublic.dhe.ibm.com/software/data/cognos/documentation/openpage… · La IBM OpenPages with Watson - Guía del creador de procesos de negocio

• emailTo (Serie)• emailSubject (Serie)• emailBody (Serie)• riskObject (OpSOXRisk)• opBaseUrl (Serie)

11. Arrastre un Servicio anidado de la paleta al lienzo. Defina este nodo para recuperar el objeto. Elpropietario del objeto será el destinatario de correo electrónico.a) En el panel Propiedades, pulse la pestaña Implementación y seleccione el servicio de

integración OPGetObject de OpenPages.b) Pulse en la pestaña Correlación de datos. En Correlación de entrada, introduzcatw.local.objectId en ObjectId. En Correlación de salida, introduzcatw.local.riskObject en outObject(ANY).

12. Arrastre un Servicio anidado de la paleta. Este nodo recupera las propiedades predeterminadas delsistema que se utilizan en el correo electrónico, como, por ejemplo, un host SMTP y una dirección deremitente predeterminada.a) En el panel Propiedades, pulse la pestaña Implementación y seleccione el servicio de

integración de sistemas Propiedades predeterminadas del sistema de obtención de correoselectrónicos. Se trata de un servicio de integración proporcionado por IBM Business ProcessManager.

b) Pulse en la pestaña Correlación de datos. En Correlación de salida, seleccione smtpHost ydefaultFromAddress.

13. Arrastre un Servicio anidado de la paleta al lienzo. Este nodo recuperar el URL base.a) En el panel Propiedades, pulse la pestaña Implementación y seleccione el servicio de

integración OPGetBaseURL de OpenPages.b) Pulse en la pestaña Correlación de datos. En Correlación de salida, indiquetw.local.opBaseUrl en baseURL (Serie).

14. Arrastre un Script de servidor de la paleta al lienzo. Este nodo construye el asunto y texto del cuerpodel correo electrónico.a) En el panel Implementación, indique el script siguiente:

// definir nivel de registrolog.infoEnabled = true;

log.info("smtp host: " + tw.local.smtpHost);log.info("defaultFromAddress: " + tw.local.defaultFromAddress);

// buscar la dirección de correo electrónico del propietario de objeto de riesgo y establecerlo en una variablevar user = tw.local.riskObject.OPSS_Rsk__Owner;var user1 = tw.system.org.findUserByName(user);log.info("Risk Owner: " + user1);tw.local.emailTo = user1.attributes['Task Email Address'];log.info("email to: " + tw.local.emailTo);

// definir asunto del correo electrónicotw.local.emailSubject = '[BPM] Requesting your review on ' + tw.local.riskObject.base.name;

// buscar id de tarea de la página de coach para revisar el objeto de riesgovar taskId = tw.system.currentProcessInstance.tasks[tw.system.currentProcessInstance.tasks.length-1] .id.split('\.')[1];for(var i=0;i<tw.system.currentProcessInstance.tasks.length;i++) { if (tw.system.currentProcessInstance.tasks[i].subject.match(".*Review.*")) { taskId = tw.system.currentProcessInstance.tasks[i].id.split('\.')[1]; }}

// buscar id de procesovar procId = tw.system.currentProcessInstance.id.split('\.')[1];

// definir contenido de correo electrónico, que contiene enlace a página de detalles de objeto, página de tareas de BPM y página de procesos de BPMtw.local.emailBody = "<p>Please review Object Link : " + tw.local.opBaseUrl + "openpages/view.resource.do?fileId=" + tw.local.objectId + " and</p>";

54 IBM OpenPages with Watson Versión 8.1.0 : Guía del creador de procesos de negocio de OpenPages

Page 61: Versión 8.1.0 IBM OpenPages with Watsonpublic.dhe.ibm.com/software/data/cognos/documentation/openpage… · La IBM OpenPages with Watson - Guía del creador de procesos de negocio

tw.local.emailBody += "<p>Task Link : https://bpmserver.com:9443/ProcessPortal/ launchTaskCompletion?taskId=" + taskId + " , finally</p>";tw.local.emailBody += "<p>Process Link : https://bpmserver.com:9443/ProcessPortal/ launchInstanceUI?instanceId=" + procId + "</p>";

15. Arrastre un Servicio anidado de la paleta al lienzo. Este nodo envía el correo electrónico.a) En el panel Propiedades, pulse la pestaña Implementación y seleccione el servicio de

integración de sistemas Enviar correo electrónico de IBM BPM Emailb) En Correlación de entrada, especifique las variables siguientes:

• tw.local.emailTo en to (Serie)• tw.local.defaultFromAddress en from (Serie)• tw.local.emailSubject en subject (Serie)• tw.local.emailBody en messageText (Serie)• "text/html" en contentType (Serie)• tw.local.smtpHost en smtpHost (Serie)

16. Conecte todos los nodos con flechas.17. Guarde el proceso de negocio.

Finalización de un proceso en ejecución

Puede utilizar el Inspector del Diseñador de procesos de IBM® para finalizar una instancia de un procesoen ejecución, en caso de error. También se puede utilizar para gestionar, probar y administrar instanciasde proceso de negocio. Para acceder al Inspector, vaya a la Consola de administración de procesos.

Para obtener más información sobre el Inspector, consulte http://www.ibm.com/support/knowledgecenter/en/SSV2LR/com.ibm.wbpm.wle.editor.doc/topics/running_debugging_procs.html(http://www.ibm.com/support/knowledgecenter/en/SSV2LR/com.ibm.wbpm.wle.editor.doc/topics/running_debugging_procs.html).

Procedimiento

1. Acceda a la Consola de administración de procesos.2. Pulse en Inspector de procesos.

3. Busque la instancia del proceso que desea finalizar.

Capítulo 5. Ejemplos de creación de procesos 55

Page 62: Versión 8.1.0 IBM OpenPages with Watsonpublic.dhe.ibm.com/software/data/cognos/documentation/openpage… · La IBM OpenPages with Watson - Guía del creador de procesos de negocio

4. Resalte la instancia y haga clic en Finalizar.

56 IBM OpenPages with Watson Versión 8.1.0 : Guía del creador de procesos de negocio de OpenPages

Page 63: Versión 8.1.0 IBM OpenPages with Watsonpublic.dhe.ibm.com/software/data/cognos/documentation/openpage… · La IBM OpenPages with Watson - Guía del creador de procesos de negocio

Capítulo 6. Mensajes de error y manejoLos mensajes de error y el manejo están gestionados por los servicios de integración de OpenPages.

Los servicios de integración de OpenPages pueden emitir mensajes de error por distintos motivos, comoerrores en la entrada de usuario o en la configuración. Cuando se produce un error, el sistema finaliza lainstancia de proceso y el servicio de integración. Sin embargo, puede cambiar el comportamientopredeterminado añadiendo códigos de mensaje de error y manejo de errores a las páginas de coach. Porejemplo, los servicios pueden mostrar un mensaje de error específico o recuperarse del error endeterminadas condiciones.

Para obtener más información sobre el manejo de errores en IBM Business Process Manager, consultehttp://www.ibm.com/support/knowledgecenter/SSFTDH_8.5.7/com.ibm.wbpm.wle.editor.doc/topics/handling_exceptions.html y (ftp://ftp.software.ibm.com/software/iea/content/com.ibm.iea.ibpmgr/ibpmgr/8.0/ProcessDesigner/BPM80_ErrorAndTerminationHandling.pdf ).

Mensajes de error emitidos por servicios de integraciónLos servicios de integración de OpenPages pueden emitir los siguientes mensajes de error.

OP26001El servidor de OpenPages no ha podido entender la operación solicitada (código de error HTTP 400).Consulte el archivo de registro BPM para obtener más detalles.

OP26002La operación solicitada ha fallado debido a un error de autenticación (código de error HTTP 401).

OP26003No tiene permiso para realizar la operación solicitada (código de error HTTP 403).

OP26004El servidor de OpenPages no ha encontrado el objeto solicitado (código de error HTTP 404).

OP26005La operación solicitada ha fallado debido a un conflicto de recursos (código de error HTTP 409).

OP26006El rango solicitado no es viable (código de error HTTP 416).

OP26007La operación solicitada ha fallado debido a un error del servidor interno (código de error HTTP 500).Consulte el archivo de registro BPM para obtener más detalles.

OP26008Conexión rechazada por el servidor de OpenPages.

OP26009La operación solicitada ha fallado debido al tiempo de espera.

OP26010La inicialización de la conexión con el servidor de OpenPages ha fallado. Compruebe la configuraciónde la URL base de OpenPages.

OP26011La operación solicitada ha fallado debido a argumentos no viables.

OP26012La operación solicitada ha fallado debido a un error de autenticación de la tarea del sistema.Compruebe la configuración del credencial de tareas del sistema de OpenPages.

OP26013La operación solicitada ha fallado debido a un error de enlace de espacio de nombres. Compruebe laconfiguración del enlace de espacio de nombres.

Page 64: Versión 8.1.0 IBM OpenPages with Watsonpublic.dhe.ibm.com/software/data/cognos/documentation/openpage… · La IBM OpenPages with Watson - Guía del creador de procesos de negocio

OP26014La respuesta del servidor de OpenPages no tiene el formato JSON esperado.

OP26999La operación solicitada no ha podido acceder a OpenPages. Consulte el archivo de registro BPM paraobtener más detalles.

Adición del manejo de errores a un servicio humano del lado de cliente

Puede añadir el manejo de errores a los servicios humanos del lado del cliente, de manera que losservicios de integración muestren mensajes de error a los usuarios.

Por ejemplo, se emite el mensaje siguiente si un servicio de integración intenta acceder a un objeto deOpenPages que no existe.

Si no añade el manejo de errores a los servicios humanos del lado del cliente, no se mostrarán losmensajes de error a los usuarios.

En este ejemplo, crea un nuevo servicio humano del lado del cliente y añade el manejo de errores a unapágina de coach.

Procedimiento

1. Abra el editor web del Diseñador de procesos.2. Cree una aplicación de proceso.3. Abra la aplicación de proceso en el Diseñador de procesos.4. Añada dependencias a los kits de herramientas de OpenPages.

a) Pulse + situado junto a Kits de herramientas y seleccione Plataforma OpenPages.b) Pulse + situado junto a Kits de herramientas y seleccione Soluciones de OpenPages.

5. Pulse Nuevo junto a Interfaz de usuario > Servicio humano del lado de cliente y especifique unnombre.

6. Pulse en la pestaña Diagrama.7. Arrastre un Manejador de sucesos de la paleta al lienzo. El manejador de sucesos no requiere

flechas de conexión.8. En el panel Propiedades, pulse en la pestaña Implementación.9. En Suceso activador, seleccione Suceso de error.

10. En Comportamiento, seleccione Captar todos los errores o Captar errores específicos yespecifique un error que quiera probar. Para ver una lista de todos los códigos de error, consulte“Mensajes de error emitidos por servicios de integración” en la página 57.

11. Para implementar el manejador de sucesos, haga doble clic en la actividad del mismo en el diagrama.12. Arrastre un Coach de la paleta al lienzo.13. Arrastre un Suceso de finalización de la paleta al lienzo. En el panel Propiedades, pulse en la

pestaña Implementación. En Tipo de suceso, seleccione Error y suceso. Si quiere manejar el casocomo un comportamiento esperado y pasar al proceso padre, también puede dejarlo como Sucesode finalización.

58 IBM OpenPages with Watson Versión 8.1.0 : Guía del creador de procesos de negocio de OpenPages

Page 65: Versión 8.1.0 IBM OpenPages with Watsonpublic.dhe.ibm.com/software/data/cognos/documentation/openpage… · La IBM OpenPages with Watson - Guía del creador de procesos de negocio

14. Pulse la pestaña Variables y añada variables privadas para mantener códigos de error y datos.Póngales los nombres code1 y msg1. Ambas variables son Series.

15. En el panel Propiedades, seleccione la pestaña Pre&Post. Añada las líneas siguientes al Scriptprevio a la ejecución:

tw.local.code1 = tw.error.code;

tw.local.msg1 = tw.error.data;

16. Pulse en la pestaña Coaches. Añada vistas de texto de salida a la página de coach y enlácelas acode1 y msg1.

17. También puede cambiar el color de los controles de código de error y mensaje de error. Por ejemplo,puede añadir un atributo HTML que muestre el mensaje de error como texto rojo.

18. Guarde el servicio humano del lado de cliente.

Capítulo 6. Mensajes de error y manejo 59

Page 66: Versión 8.1.0 IBM OpenPages with Watsonpublic.dhe.ibm.com/software/data/cognos/documentation/openpage… · La IBM OpenPages with Watson - Guía del creador de procesos de negocio

60 IBM OpenPages with Watson Versión 8.1.0 : Guía del creador de procesos de negocio de OpenPages

Page 67: Versión 8.1.0 IBM OpenPages with Watsonpublic.dhe.ibm.com/software/data/cognos/documentation/openpage… · La IBM OpenPages with Watson - Guía del creador de procesos de negocio

Avisos

Esta información se ha desarrollado para los productos y servicios ofrecidos en EE.UU.

Es posible que IBM no ofrezca los productos, servicios o características que se describen en estedocumento en otros países. Póngase en contacto con el representante local de IBM para obtenerinformación acerca de los productos y servicios que actualmente están disponibles en su zona. Lasreferencias a programas, productos o servicios de IBM no pretenden establecer ni implicar que solopuedan utilizarse dichos productos, programas o servicios de IBM. En su lugar, se puede utilizar cualquierproducto, programa o servicio funcionalmente equivalente que no infrinja ninguno de los derechos depropiedad intelectual de IBM. Sin embargo, es responsabilidad del usuario evaluar y verificar elfuncionamiento de cualquier producto, programa o servicio ajeno a IBM. Este documento puede incluirdescripciones de productos, servicios o características que no forman parte de la titularidad de licencia oprograma que ha adquirido.

IBM puede tener patentes o solicitudes de patentes pendientes que cubran el tema principal descrito eneste documento. El suministro de este documento no le otorga ninguna licencia sobre estas patentes.Puede enviar consultas sobre licencias, por escrito, a:

IBM Director of LicensingIBM CorporationNorth Castle DriveArmonk, NY 10504-1785EE.UU.

Para consultas de licencia relativas a la información de doble byte (DBCS), póngase en contacto con eldepartamento de propiedad intelectual de IBM de su país, o envíe las consultas, por escrito, a:

Intellectual Property LicensingLegal and Intellectual Property LawIBM Japan Ltd.19-21, Nihonbashi-Hakozakicho, Chuo-kuTokio 103-8510, Japón

El párrafo siguiente no se aplica al Reino Unido ni a ningún otro país donde estas disposiciones seanincompatibles con la legislación local: INTERNATIONAL BUSINESS MACHINES CORPORATIONPROPORCIONA ESTA DOCUMENTACIÓN "TAL CUAL" SIN GARANTÍAS DE NINGÚN TIPO, NI EXPLÍCITASNI IMPLÍCITAS, INCLUIDAS, PERO SIN LIMITARSE A ELLAS, LAS GARANTÍAS DE NO VULNERABILIDAD,COMERCIALIZACIÓN O IDONEIDAD PARA FINES CONCRETOS. Algunos países no permiten la renuncia agarantías explícitas o implícitas en determinadas transacciones, por lo que puede que esta declaración nosea aplicable en su caso.

Esta información puede incluir imprecisiones técnicas o errores tipográficos. De forma periódica serealizan cambios a esta información; estos cambios se incorporarán en nuevas ediciones de lapublicación. IBM puede realizar en cualquier momento mejoras o cambios en los productos o programasdescritos en esta publicación sin previo aviso.

Cualquier referencia en esta información a sitios web que no son de IBM se realiza por razones prácticasy de ninguna manera sirve como un respaldo de dichos sitios web. El material de dichos sitios web noforma parte del material correspondiente a este producto de IBM y el uso de estos sitios web se realiza acuenta y riesgo del usuario.

IBM puede utilizar o distribuir la información que se le proporcione del modo que considere adecuado sinincurrir por ello en ninguna obligación con el remitente.

Los usuarios con licencia de este programa que deseen tener información sobre éste con el propósito depermitir: (i) el intercambio de información entre programas creados independientemente u otros

Page 68: Versión 8.1.0 IBM OpenPages with Watsonpublic.dhe.ibm.com/software/data/cognos/documentation/openpage… · La IBM OpenPages with Watson - Guía del creador de procesos de negocio

programas (incluido éste) y (ii) la utilización mutua de la información que se ha intercambiado, debenponerse en contacto con:

IBM Corporation Location Code FT0 550 King Street Littleton, MA 01460-1250 EE.UU.

Dicha información puede estar disponible, sujeta a los términos y condiciones correspondientes,incluyendo, en algunos casos, el pago de una tarifa.

El programa bajo licencia descrito en este documento y todo el material bajo licencia disponible seproporcionan bajo los términos de IBM Customer Agreement, IBM International Program LicenseAgreement o cualquier otro acuerdo equivalente entre IBM y el cliente.

Todos los datos de rendimiento mencionados se han obtenido en un entorno controlado. Por tanto, losresultados obtenidos en otros entornos operativos pueden variar de forma significativa. Algunasmediciones pueden haberse realizado en sistemas de nivel de desarrollo y no hay ninguna garantía deque estas mediciones sean las mismas en sistemas de uso general. Además, algunas medidas se puedenhaber estimado mediante extrapolación. Los resultados reales pueden variar. Los usuarios de estedocumento deben verificar los datos aplicables a su entorno específico.

La información relativa a productos no IBM se ha obtenido de los distribuidores de dichos productos, deanuncios publicados o de otras fuentes disponibles públicamente. IBM no ha comprobado estosproductos y no puede confirmar la precisión de su rendimiento, compatibilidad ni contemplar ningunaotra reclamación relacionada con los productos que no son de IBM. Las preguntas sobre las prestacionesde productos que no son de IBM se deben dirigir a los distribuidores de dichos productos.

Todas las declaraciones sobre la dirección o los propósitos futuros de IBM están sujetas a cambios oretirada sin previo aviso, y solo representan metas y objetivos.

Esta información contiene ejemplos de datos e informes utilizados en operaciones de negocio diarias.Para ilustrarlas de la manera más completa posible, los ejemplos incluyen nombres de individuos,empresas, marcas y productos. Todos estos nombres son ficticios y cualquier similitud a los nombres ydirecciones que haya utilizado una empresa real es pura coincidencia.

Si visualiza esta información en una copia software, es posible que no aparezcan las fotografías ni lasilustraciones en color.

Esta oferta de software no utiliza cookies ni otras tecnologías para recopilar información de identificaciónpersonal.

Copyright

Material bajo licencia - Propiedad de IBM Corporation.© Copyright IBM Corporation, 2003, 2019.

Derechos restringidos para los usuarios del Gobierno de EE.UU. – El uso, la duplicación o la revelaciónestán restringidos por el Contrato GSA ADP Schedule con IBM Corp.

Esta información contiene programas de aplicación de muestra en lenguaje fuente, que ilustran lastécnicas de programación en diversas plataformas operativas. Puede copiar, modificar y distribuir estosprogramas de ejemplo en cualquier formato sin abonar ninguna cantidad a IBM, con el fin de desarrollar,utilizar, comercializar o distribuir programas de aplicaciones de acuerdo con la interfaz de programaciónde aplicaciones correspondiente a la plataforma operativa para la que se han escrito los programas deejemplo.

Estos ejemplos no se han probado exhaustivamente bajo todas las condiciones. En consecuencia, IBM nopuede garantizar ni afirmar la fiabilidad, utilidad o funcionalidad de estos programas. Puede copiar,

62 Avisos

Page 69: Versión 8.1.0 IBM OpenPages with Watsonpublic.dhe.ibm.com/software/data/cognos/documentation/openpage… · La IBM OpenPages with Watson - Guía del creador de procesos de negocio

modificar y distribuir libremente estos programas de ejemplo, sin pagar por ello a IBM, con la finalidad dedesarrollar, utilizar, comercializar o distribuir programas de aplicación conformes a las interfaces deprogramas de aplicación de IBM.

Marcas registradas

IBM, el logotipo de IBM e ibm.com son marcas comerciales o marcas registradas de InternationalBusiness Machines Corp en muchas jurisdicciones del mundo. Otros nombres de producto y serviciopueden ser marcas registradas de IBM u otras compañías. Hay disponible una lista actual de marcasregistradas de IBM en la web en "Información de copyright y marcas registradas."

Java y todas las marcas registradas y logotipos basados en Java son marcas registradas o marcascomerciales registradas de Oracle y/o sus filiales.

Avisos 63

Page 70: Versión 8.1.0 IBM OpenPages with Watsonpublic.dhe.ibm.com/software/data/cognos/documentation/openpage… · La IBM OpenPages with Watson - Guía del creador de procesos de negocio

64 IBM OpenPages with Watson Versión 8.1.0 : Guía del creador de procesos de negocio de OpenPages

Page 71: Versión 8.1.0 IBM OpenPages with Watsonpublic.dhe.ibm.com/software/data/cognos/documentation/openpage… · La IBM OpenPages with Watson - Guía del creador de procesos de negocio

Índice

Aactualización de objetos de OpenPages

utilización de un servicio humano del lado de cliente 36adjuntos a archivo

añadir 31descarga 32

aplicacióndescripción general 1

asignaciones de tareasasignación basada en un valor de campo 20

Ccampos calculados

adición a una página de coach 25, 28, 30campos de texto enriquecido

diferencias en OP e IBM BPM 21campos enumerados con una lista de selección

dependienteadición a una página de coach 23

campos Propietarioadición a una página de coach 25

Ddistribución de gravedad

descripción general 5

Eejemplos de creación de procesos

actualización de objetos de GRC 36adición de adjuntos a archivos 31adición de campos calculados a una página de coach 25,28, 30adición de campos enumerados con una lista deselección dependiente 23adición de campos Propietario 25adición de uno o varios campos enumerados 22adición del manejo de errores a un servicio humano dellado de cliente 58ampliar procesos padre (avanzado) 45, 48asignación de una tarea de procesos en función de unvalor de campo 20bloqueo y desbloqueo de objetos 51cambiar procesos hijo para que envíen mensaje UCA 47crear un objeto sin entrada de usuario 34definir el agente encubierto (avanzado) 46descarga de adjuntos a archivo 32envío de notificaciones por correo electrónico 52finalización de un proceso en ejecución 55iniciar procesos hijo 39, 40iniciar procesos hijo (avanzado) 44recuperar lista de objetos hijo 50uso OPObjectSelection 19

ejemplos de creación de procesos (continuación)utilización de campos de texto enriquecido 21utilización de recursos de localización 38

ejemplos de creación de procesos (avanzado)iniciar procesos hijo 43

FFiltro de equipo por campo de objeto

servicio de integración 16

KKit de herramientas de soluciones de OpenPages

descripción general 5

MManejo de errores

servicios de integración 57

Nnotificaciones por correo electrónico

adición a un proceso de negocio 52

Oobjetos

bloqueo y desbloqueo 51creación de objetos sin entrada de usuario 34finalización de un proceso en ejecución 55

objetos hijorecuperar lista de 50

OPAssociateChildrenservicio de integración 7

OPAssociateParentsservicio de integración 7

OPCopyObjectsservicio de integración 7

OPCreateObjectservicio de integración 8

OPDeleteObjectservicio de integración 8

OPDissociateChildrenservicio de integración 8

OPDissociateParentsservicio de integración 9

OPExecuteReportFragmentservicio de integración 9

OPGenericObjectQueryservicio de integración 9

OPGetBaseURLservicio de integración 10

OPGetChildAssociationsservicio de integración 10

Índice 65

Page 72: Versión 8.1.0 IBM OpenPages with Watsonpublic.dhe.ibm.com/software/data/cognos/documentation/openpage… · La IBM OpenPages with Watson - Guía del creador de procesos de negocio

OPGetEnumeratedValuesservicio de integración 10

OPGetObjectservicio de integración 11

OPGetParentAssociationsservicio de integración 11

OPHierarchicalAssigneeQueryservicio de integración 11

OPHierarchicalQueryservicio de integración 12

OPLaunchChildProcessesservicio de integración 13

OPLockObjectservicio de integración 14

OPMakeAddNewLinkservicio de integración 14

OPMakeDetailLinkservicio de integración 14

OPMakeDocumentLinkservicio de integración 15

OPMoveObjectsservicio de integración 15

OPPerformRESTGetservicio de integración 15

OPUnlockObjectservicio de integración 16

OPUpdateObjectservicio de integración 16

Pprocesos hijo

cómo enviar un mensaje UCA 47cómo iniciar 39, 40, 43

procesos hijo (avanzado)cómo iniciar 44

procesos padre (avanzado)cómo ampliar para que espere a los procesos hijo 45cómo ampliar para que espere mensajes UCA 48cómo definir el agente encubierto 46

Rrecursos de localización

utilización 38

Sservicios de integración

descripción general 7Filtro de equipo por campo de objeto 16mensajes de error emitidos 57OPAssociateChildren 7OPAssociateParents 7OPCopyObjects 7OPCreateObject 8OPDeleteObject 8OPDissociateChildren 8OPDissociateParents 9OPExecuteReportFragment 9OPGenericObjectQuery 9OPGetBaseURL 10OPGetChildAssociations 10

servicios de integración (continuación)OPGetEnumeratedValues 10OPGetObject 11OPGetParentAssociations 11OPHierarchicalAssigneeQuery 11OPHierarchicalQuery 12OPLaunchChildProcesses 13OPLockObject 14OPMakeAddNewLink 14OPMakeDetailLink 14OPMakeDocumentLink 15OPMoveObjects 15OPPerformRESTGet 15OPUnlockObject 16OPUpdateObject 16

servicios humanos del lado clienteadición de manejo de errores 58uso OPbjectSelection 19

Uuno o varios campos enumerados

adición a una página de coach 22

66 IBM OpenPages with Watson Versión 8.1.0 : Guía del creador de procesos de negocio de OpenPages

Page 73: Versión 8.1.0 IBM OpenPages with Watsonpublic.dhe.ibm.com/software/data/cognos/documentation/openpage… · La IBM OpenPages with Watson - Guía del creador de procesos de negocio
Page 74: Versión 8.1.0 IBM OpenPages with Watsonpublic.dhe.ibm.com/software/data/cognos/documentation/openpage… · La IBM OpenPages with Watson - Guía del creador de procesos de negocio

IBM®