sábado, 30 de enero de 2016

Contando elementos que hay en una cola desde Workflows (Workflow Tools)

Buenas, hoy voy a acabar este mes de enero, con una nueva actualización de mi solución llamada Workflow Tools que tengo publicada en Codeplex: https://msdyncrmworkflowtools.codeplex.com
Hoy, voy a seguir añadiendo funcionalidad relacionada con lo que publique la semana pasada (http://www.demianrasko.com/2016/01/seleccionar-o-recoger-elementos-de.html) para recoger elementos de una cola.
La idea es, que si me encuentro en una situación en donde debo recoger automáticamente desde una Cola elementos, a lo mejor antes sería interesante saber cuantos elementos hay en esa cola, o incluso saber cuales de esos elementos aún no están siendo trabajados por ningún otro usuario.
Es por esto que se me ha ocurrido añadir la funcionalidad “Queue Item Count” que me permitirá saber:
  • Elementos que me quedan pendientes en mi cola personal
  • Elementos totales que hay en una cola pública
  • Elementos totales de una cola pública sin asignar
  • etc.
Encontrandome en este punto, he creado esta nueva funcionalidad que funciona como siempre, primero la seleccionamos:
SNAGHTML7c3004d
y luego actualizamos los parámetros que son solo dos:
SNAGHTML7c35a35
Los parámetros son:
  • Source Queue: cola origen de la que queremos “contar” los elementos
  • Count Only Unassigned Items: un booleano, para decirle si queremos que nos cuente solo los elementos no recogidos por nadie (campo “trabajado por” a vacío) o todos los elementos.
  • ItemsCount: campo de salida de tipo numérico que nos da el total de elementos encontrados.
Muy simple. Ahora vamos a ver una utilización de esto que comento, en la “vida real”:
SNAGHTML7c6c7c5
En este ejemplo, el primer paso hace la consulta de la cola que se llama “Test1” para saber cuantos elementos hay disponibles sin ser asignados. Y en el segundo paso, hay una condición de comprobación que pregunta si el valor devuelto de esa consulta es mayor que cero:
SNAGHTML7c847cd
Si eso es positivo, entonces ya puedo hacer el “Pick”.
Creo que esto puede ser el “germen”, de un gestor de asignaciones dinámicas de trabajo Winking smile
Espero les haya gustado.
un abrazo!
@demian_rasko

No hay comentarios:

Publicar un comentario