Ya está disponible la versión del proyecto lsFusion 6.0, que desarrolla una plataforma declarativa para el desarrollo de aplicaciones empresariales y web. Esta plataforma es adecuada para crear aplicaciones corporativas y de contabilidad, y puede ser utilizada como una alternativa abierta y gratuita a la plataforma 1C. El código del proyecto está escrito en Java y se distribuye bajo la licencia LGPLv3. La solución ERP estándar para pequeñas y medianas empresas MyCompany, que utiliza lsFusion, se distribuye bajo la licencia Apache 2.0.
La plataforma se basa en la paradoja de la programación combinatoria (function-level), lo que distingue significativamente a lsFusion de otras plataformas existentes en el mercado (como SAP, Dynamics AX, 1C, .Net). Además, se utilizan activamente programación basada en eventos, programación reactiva y programación orientada a objetos. La sexta versión se centra en mejorar la interfaz web: integración profunda con Bootstrap, soporte para PWA y API modernos de navegadores, así como la ampliación de herramientas para crear formularios e interfaces flexibles.
Los principales cambios en la sexta versión de lsFusion:
- Integración de Bootstrap: todos los elementos del sistema (formularios, botones, etc.) utilizan automáticamente las clases estándar de Bootstrap; disponibles varios temas preinstalados; personalización simplificada a través del atributo class.
- Nuevos componentes de UI: interruptores, casillas de verificación, grupos de botones, botones de opción y listas desplegables al estilo de Bootstrap; el sistema puede seleccionar automáticamente el componente más adecuado basado en las estadísticas de posibles valores.
- Soporte para íconos: se han incorporado las bibliotecas Bootstrap Icons y FontAwesome; se ha implementado la selección automática de íconos por palabras clave y nombres de elementos.
- PWA y API de navegadores: implementación de Share, Notification y Push API para compartir de manera nativa, notificaciones y mensajes push; posibilidad de instalar la aplicación como una aplicación web progresiva.
- Especificación explícita de etiquetas HTML y tipos de input: soporte para los tipos date, time, color, range, month y su propio yearpicker; el desarrollador puede especificar explícitamente la etiqueta y el tipo del elemento de entrada.
- Atributos de propiedades ampliados: se han agregado placeholder, pattern, regexp, tooltip, comment, así como configuraciones flexibles de ubicación y alineación a través de panelCaption* y panelComment*.
- Contenedores emergentes (popup): carga diferida de contenido al hacer clic, lo que reduce la carga en la interfaz y acelera el renderizado inicial.
- Estilos Tiny/Mini: tamaños compactos de elementos UI para minimizar el desplazamiento en aplicaciones ERP.
- Botones direccionales (arrow): estilos especiales para visualizar y gestionar procesos en la interfaz.
- Módulo WebSocket: recepción y envío de mensajes de texto y binarios, eventos de apertura/cierre de conexiones y control integrado de sockets.
- Trabajo avanzado con datos:
- "Valores tabulares" en el operador FORMULA;
- Operador VALUE para acceder a los valores actuales en el formulario;
- Opciones TOP/OFFSET para paginación y lectura por lotes (operador FOR);
- Agregados propios en GROUP/PARTITION.
- Eventos adicionales en el formulario: CHANGE BEFORE/CHANGE AFTER para propiedades, ON COLLAPSE/ON EXPAND para contenedores, con posibilidad de definir la fuente del evento (EDIT, BINDING, PASTE, CUSTOM).
- Asignación explícita de nombres en la BD: especificación de nombres de tablas, índices y propiedades materializadas para un esquema de datos más transparente.
- Soporte para literales raw: sintaxis especial de cadenas para trabajar con datos de texto sin necesidad de escape.
Fuente: opennet.ru
