WhatsApp

  
Queries de Selección Múltiple ERQL en Hopex

Anteriormente se ha descrito la manera en que se pueden crear Queries de ERQL en Mega Hopex para poder consultar los objetos que se tienen registrados en los repositorios y en caso de que no sea muy claro para el lector, le dejamos este post: Sintax ERQL

Ahora, nos enfocaremos en mostrar cómo sacarle aún más potencial a estas consultas de Hopex, haciendo la construcción de Queries de múltiples líneas para obtener objetos de forma más específica y no limitarnos a escribir una consulta simple, que en muchas ocasiones no ayudará a nuestras necesidades.

Este post se desarrollará utilizando la búsqueda avanzada de Hopex. La primera línea que ingresaremos será la siguiente:

Select [Proceso organizacional] Where [Unidad organizacional] &"Org-Unit"

En esta Query estamos obteniendo la colección de procesos organizacionales en donde una unidad organizacional en específico participe, esto se hace mediante el parámetro que se indica con "&" seguido del nombre que se le quiera dar al parámetro. Esto permite hacer una búsqueda por medio de un objeto específico que se pase como parámetro (como veremos a continuación) o para ser utilizado en una macro sobre un objeto del tipo Unidad Organizacional. En nuestro ejercicio el resultado se ve de la siguiente forma:

Cuando se ejecuta la consulta, aparece un wizard que pide el valor del parámetro, en este caso, Org-unit y al dar "listar" aparece una nueva ventana que trae todas las unidades organizacionales para seleccionar alguna de ellas. Al seleccionar una y que efectivamente tenga un proceso asociado, el resultado será:

Ahora, esta es la primer parte, pero podemos seguir extrayendo información, por ejemplo, los procesos de negocio asociados. Modificando la Query tenemos:

Select [Proceso organizacional] Into @OrgProcess Where [Unidad organizacional] &"Org-unit"

Select [Proceso de negocio] Where [Proceso Organizacional] in @OrgProcess


Nota: Para aplicar un salto de línea entre consultas, es necesario aplicar la combinación de teclas Ctrl + Espacio.

En esta nueva consulta, estamos almacenando el resultado anterior en "OrgProcess" con ayuda del caracter "@" y buscando ahora los procesos de negocio que tengan asociado un proceso organizacional que esté dentro de OrgProcess, el resultado sería:


Ahora, imagínese que en un caso MUY particular, se requiera saber las aplicaciones asociadas a ese proceso de negocio, entonces, podemos aplicar la misma lógica de la siguiente manera:

Select [Proceso organizacional] Into @OrgProcess Where [Unidad organizacional] &"Org-unit"

Select [Proceso de negocio] Into @BusinessProcess Where [Proceso Organizacional] in @OrgProcess

Select [Aplicación] Where [Procesos de negocio] in @BusinessProcess

Entonces, el resultado sería el siguiente:

Por lo tanto, desde una unidad organizacional, pasamos por proceso organizacional y proceso de negocio hasta las aplicaciones y con esto el ejercicio estaría concluido, sin embargo, veremos el siguiente ejemplo con el que obtendremos el mismo resultado:

Select [Aplicación] Where [Procesos de negocio].[Proceso Organizacional].[Unidad Organizacional] &"Org-Unit"

Con esta query de una sola línea y recordando que también se pueden utilizar asociaciones, pasando el mismo parámetro, el resultado serán las mismas aplicaciones. Pero, repitiendo el principio de este post, esto no siempre será suficiente para nuestras necesidades específicas, ya que, en cada una de estas consultas, se puede aplicar un filtro condicional buscando específicamente macroprocesos, aplicaciones de cierto tipo, etc. Por lo que, será indispensable definir claramente la necesidad y ver qué es más eficiente para la consulta, pero no cabe duda de que acá se ha aprendido una nueva forma de escribir consultas en Hopex y esperamos que haya sido de utilidad.


Rodolfo Velazquez 1 abril, 2024
Compartir
Categorías


Iniciar sesión dejar un comentario

  
Reglas de Acceso de Datos en Hopex