Dashboard

BASIS introdujo la Utilidad Dashboard Utility en BBj 14.0. Este artículo cubre algunas de las características y capacidades más importantes del Dashboard Utility, y proporciona imágenes y capturas de pantalla para darte una mejor idea de todo lo que ofrece esta herramienta.

Dashboard - Origen

La tecnología subyacente de Dashboard Utility es la misma que la de los métodos de los objetos BBjChart, pero con importantes diferencias.

• BBjCharts son controles independientes de bajo nivel que puedes agregar a tus programas BBj y que puedes administrar desde tu código.

• La utilidad Dashboard es un framework avanzado construido sobre la base de un Dashboard Widget, que incluye varios tipos de gráficos y también soporta grids, informes, imágenes y HTML.

• La utilidad proporciona una gestión de widgets integrada que se encarga de clasificar, dimensionar, posicionar, ocultar o mostrar, e incluso actualizar tus widgets por tí.

¿Por qué los Dashboard son tan eficaces?

El concepto central de un Dashboard es tomar información complicada y presentarla en un formato visual simple. Esto hace que los datos sean significativamente más fáciles de entender, lo que permite comprender varias métricas de rendimiento de un vistazo. Los gráficos son particularmente eficaces, ya que explotan nuestra capacidad de relacionar visualmente ubicaciones espaciales y distancias, tamaños y colores. Estos se fusionan y nos dejan una noción distinta de relaciones de datos inmediatamente obvia (algo que las filas y las columnas de números a menudo no logran hacer). Al hacerlo, los gerentes y ejecutivos están facultados para tomar decisiones más rápidas y más informadas para mejorar sus negocios. La Figura 2 muestra tres widgets de gráfico de cuadro de mandos diferentes que demuestran la correlación de datos.

El gráfico circular que se muestra a la izquierda da una clara relación de las cantidades relativas que una empresa gasta en los costos del producto en función del tamaño de la porción de la torta. El gráfico de líneas mostrado en el centro indica visualmente el creciente número de usuarios en línea a medida que pasan los años. Las pendientes de las líneas en el gráfico también transmiten cada una de sus tasas de crecimiento relativas. El gráfico de barras apilado que se muestra a la derecha ofrece varios puntos de interés. La longitud de las barras y el orden de los representantes de ventas hacen que sea fácil discernir su desempeño relativo durante el año pasado. Mirar más de cerca la barra de cada representante de ventas también nos presenta un desglose de sus ventas anuales por producto. En cada uno de estos casos, las gráficas de nuestro cuadro de mandos presentan efectivamente información compleja de tendencias, costos y ventas en un formato fácil de consumir.

Objetivos de la utilidad Dashboard

Cuando los ingenieros de BASIS idearon el Dashboard Utility, guiaron la filosofía del diseño en dos principios principales.

1. Los desarrolladores deben ser capaces de obtener un panel de control con widgets funcionando sin demasiado código.

2. Los widgets deben ser personalizables, pero deberían ser buenos por defecto.

¿Qué tan bien lograron el objetivo? Como prueba de lo anterior, nuestro video "Agregar el Nuevo Digital Dashboard a Su Aplicación" de Java Break no solo introduce la utilidad, sino que da un paseo completo del proceso de creación del tablero de mandos. Durante el video, mostramos el código que usamos para crear un panel con una cuadrícula, una barra y un gráfico circular que informan sobre diferentes facetas de los datos de ventas que se exportaron desde una hoja de cálculo. La página de YouTube (links.basis.com/youtube) incluye un vínculo al código fuente final que tiene poco más de 30 líneas, sin contar las líneas REM y vacías que existen para facilitar la legibilidad.

El tablero resultante que se muestra en la Figura 3 confirma que hemos tenido éxito en nuestro primer objetivo. En poco más de una docena de líneas de código, tenemos un tablero de mandos completamente funcional y funcionando.

¿Qué entendemos por 'totalmente funcional'? Al cambiar el tamaño de la ventana, los widgets se redimensionan automáticamente y se reposicionan para maximizar su uso del espacio de ventana disponible. También puede reposicionar los widgets, ocultarlos y mostrarlos, desplegarlos para ver una versión más grande; Guardar una imagen de la carta, enviarla por correo electrónico a un colega; refrescar el widget para reflejar los datos más recientes y más.

Para nuestro segundo objetivo, hemos modificado docenas de parámetros de gráficos para que los widgets por defecto se vean fenomenales sin ningún trabajo adicional de su parte. Para ver la diferencia, vale la pena echar un vistazo a la comparación de los gráficos mostrados en la Figura 1. Los gráficos de la utilidad Dashboard son más brillantes, más limpios y tienen fuentes y colores mejorados que producen un resultado más estético y profesional. Aún tiene acceso a métodos de tabla que ofrecen un mayor control sobre varios componentes, incluidos los colores de los datos y la familia / tamaño / color de la fuente, pero se añaden mejoras en lugar de complejidad necesaria.

Características de la utilidad Dashboard

La Dashboard Utility se divide entre dos programas orientados a objetos de BBj que juntos ofrecen más de 750 métodos, por lo que es seguro decir que la Dashboard Utility es una biblioteca bastante avanzada. La lista de características y capacidades no sólo es extensa, sino que ha ido creciendo constantemente en los últimos meses desde su introducción. En lugar de proporcionar una lista exhaustiva de todas las opciones y métodos disponibles, tomemos un rápido tour de varias de las características más destacadas de la utilidad Dashboard.

Características del Dashboard

Modos de Dashboard. Puede ejecutar un panel completo como un programa independiente en una ventana de nivel superior o crearlo dentro de un control BBj para incrustarlo en su aplicación como se muestra en la Figura 4. Esa misma flexibilidad se aplica a las categorías de Dashboard (tabs) y Widgets también. Esto hace que sea posible incorporar cualquier parte de un Dashboard en un programa BBj nuevo o existente, o ejecutarlos de manera autónoma.

Categorías de Dashboard. Puedes crear varias categorías para un Dashboard, como se muestra en la Figura 5. El Dashboard muestra estas categorías en pestañas separadas, por lo que es fácil proporcionar varios Dashboard Widgets sin sobrepasar la ventana o abrumar al usuario.

Tamaño del Widget. El Dashboard cambia el tamaño y reposiciona sus widgets automáticamente en respuesta al cambio de tamaño de la ventana del Dashboard o la ventana del navegador que se ejecuta en BUI. Puedes cambiar el tamaño de los Widgets estableciendo un ancho mínimo y máximo y también puedes establecer el espaciado entre columnas y filas. Esto se hace sobre una base por categoría y hace posible tener widgets más grandes para mostrar informes y widgets más pequeños para mostrar las cuadrículas de datos. También puede modificar el tamaño y el espaciado del widget para determinadas resoluciones de pantalla cuando se ejecuta en un dispositivo móvil.

Ubicación del Widget. Puede reorganizar widgets en una categoría de panel simplemente arrastrando un widget a través de su barra de título (ver Figura 6) y colocándolo en la posición deseada. El Dashboard reorganiza automáticamente los demás widgets para dejar espacio para el nuevo widget. El Dashboard almacena la posición de cada widget en una cookie, así que después de organizar los widgets, recordará su orden y los mostrará en la misma posición la próxima vez que ejecute el panel.

Control de Widgets. Los widgets de Dashboard tienen una barra de herramientas en la parte superior del widget, como se muestra en la Figura 7, que le permite 'saltar' el widget, configurar el widget o cerrarlo. Cuando cierras un widget en el Dashboard este se oculta para que ya no aparezca en el panel. Puedes hacer clic en el botón [Personalizar] del tablero de mandos para ver la lista completa de widgets disponibles para la categoría actual del Dashboard, junto con una captura de pantalla y una breve descripción de cada widget. La ventana "Personalizar" facilita la adición de un widget oculto al panel de control. El panel de control también almacena el estado visible / oculto de los widgets en una cookie, por lo que si ocultas un widget, el tablero lo ocultará la próxima vez que ejecutes el programa.

========

Widget Features

• Widget Types. The dashboard supports several different types of widgets, allowing you to display data in a variety of different formats. Charts are commonly used in dashboards, but you may also display grids, images, web pages/other HTML content, and even full-featured reports via BBJasper as shown in Figure 8. Various chart types are supported as well, including bar charts, stacked bar charts, line charts, area charts, stacked area charts, pie charts, ring charts, and more.

• Widget Data. You can create many dashboard widgets with an SQL connect string and query to automatically build a dataset and populate the widget. When you create a widget in this manner, it is automatically refreshable and will respond to a refresh event by requerying the database and updating the widget with the latest information.

• Widget Refresh. You can configure refreshable dashboard widgets programmatically to refresh themselves automatically, and users may accomplish the same via the widget’s configuration menu (Figure 9). The widget will then update itself with new data whenever the specified refresh interval time has elapsed. You can configure the interval by providing the desired number of seconds, minutes, or hours that must elapse before the widget refreshes itself. The dashboard stores the automatic/manual refresh configuration in a cookie, so when you set a widget to refresh itself automatically it will continue to do so the next time you run the dashboard.

• Widget Filters and Links. Dashboards widgets also support optional filters and links. Filters are displayed as dropdown lists at the top of the widget and allow the end user to modify the contents of the widget. A common use case for filters is to modify the underlying data query so that you can select values like ‘Domestic’, ‘Overseas’, etc. to change the reporting range for the widget (see Figure 10). Links are located on the bottom of the widget and provide an easy way to open up a web page or run a BBj program of your choice.

Utility Features

• CSS Customizability. The dashboard and widgets offer dozens of CSS selectors so you have complete control over the look and feel of your dashboard running in BUI. For example, a dashboard category will have the general dashboardCategoryWindow selector as well as a selector based off of the name you gave the category such as dashboardCategorySalesReports. This way you can style all of the categories and widgets at once or style each one individually with a different appearance. See the example of custom colors and CSS in Figure 11.

• High Pixel Density Display. The dashboard program and the widgets it creates take advantage of high pixel density displays when available, such as on Apple Retina devices. The fonts, charts, and even the widget and button icons were optimized to run at full resolution with more detailed graphics on a high pixel density display – both in the traditional thin client and in BUI. Figure 12 shows a comparison of a normal display and the high density display.

Summary

While BBjCharts have been available in the language for several years, building a dashboard using these charts has always taken quite a bit of time, effort, and code. The new BASIS Dashboard Utility makes all of that a thing of the past. By providing extensive built-in functionality and over a dozen different types of widgets, you can now get a fully functional dashboard up and running in a couple dozen lines of code. Better yet, it handles everything from sizing and positioning widgets to automatic refresh and save functionality. By taking advantage of all that the Dashboard Utility has to offer, you can equip your customers with the ability to make better, faster business decisions with a powerful and enlightening view into their data, all with very little effort on your part!

http://documentation.basis.com/advantage/v18-2014/14dashutility.pdf