""

Cargando solución de mensajes para Xcelsius

Uno de los problemas más desafiantes que enfrentan los desarrolladores de Xcelsius todos los días está relacionado con el rendimiento de los dashboards. A veces se puede mejorar el rendimiento cambiando las propiedades de conexión, cambiando las consultas, reduciendo los componentes de Xcelsius o reduciendo las fórmulas dentro de la hoja de Excel que rellena el panel de control.

Sin embargo, incluso después de hacer estos ajustes, es posible que el tablero de mandos todavía puede tomar más tiempo de lo esperado para cargar. De hecho, el cálculo de algunas fórmulas críticas tales como SUMIF o VLOOKUP puede tomar varios segundos para actualizar los valores. Pero en lugar de explicar a los usuarios que el tablero está calculando localmente los valores y que simplemente tienen que esperar un poco, ¿por qué no mostrarles el progreso de carga en acción ...

Lo que he creado es un botón "habilitar" para nuestros filtros que mostrará el mensaje de carga durante un período de tiempo definido antes de mostrar los datos. Tenga en cuenta que se trata de una activación de Excel y no de consultas (incluso si se puede adaptar fácilmente utilizando algunas de las salidas como disparadores para las conexiones de datos).

Los componentes que he utilizado son los siguientes:

  • Combobox 1: Esto filtra sólo las etiquetas y envía la seleccionada a un destino (usando la configuración de filas filtradas).
  • Combobox 2 (Detrás de 1): Esto filtra toda la tabla sólo cuando el botón de reproducción envía valores mayores que 0 (por lo que está en el modo PLAY) y menos de nuestro tiempo máximo (en este caso 6 segundos). Utiliza filas filtradas y envía la salida a un destino. Nota: filtra el valor 1 de la columna con una fórmula que dice: SI lo que seleccioné de combobox 1 es igual a lo que veo en la columna relacionada de mi tabla de origen, entonces 1 else 0.
  • Tabla de hojas de cálculo: Necesitaba un control de salida para mostrar los valores, pero por supuesto en la vida real esto podría ser cualquier otro componente.
  • Control de reproducción: Esto gestiona tanto nuestro mensaje de carga como el cuadro combinado 2. Tiene la opción de rebobinado automático habilitada, pero ni la reproducción automática ni la repetición automática. Debemos calcular el tiempo que necesitamos para mostrar nuestro mensaje de carga y establecer el control de reproducción a ese valor (o ese valor + 1, depende de la lógica que desee utilizar) .
  • Antecedentes: Esto significa crear el efecto de carga real que gracias a la opción "Bloquear eventos de ratón" evita cualquier clic inapropiado de nuestros usuarios mientras el tablero está pensando.
  • Etiqueta de texto: Esto dice "Cargando ..." pero podría decir algo más. Lo importante es que el usuario debe entender que el tablero está calculando los valores.
  • Barra de progreso horizontal: Utilicé este control que muestra los valores de salida del botón de reproducción para tener más carga efecto.

Nota: Los últimos tres componentes se han elegido dentro de los de la caja para mantener las cosas simples. En un caso real usaría algunas animaciones flash o el componente de carga que ha sido lanzado por Donald MacCormick dentro de la solución 12componentes .

La fórmula que he usado para mostrar el mensaje de carga (y activar combobox 2 como ya se explicó) dice lo siguiente: SI el valor de salida del control de reproducción es mayor que 0 y menor que el máximo que necesito, entonces 1 else 0.

Espero que encuentre esta solución útil y fácil de implementar. Siéntase libre de revisar el archivo SWF para ver un ejemplo de cómo funciona la solución de carga de mensajes y descargar la prueba XLF en el archivo zip siguiente. Avísame si tienes alguna pregunta o comentario.

Archivo SWF: loading message_solution

Archivo XLF: test_v3

EspañolEnglish