Artículo
· 12 dic, 2022 Lectura de 4 min

Aplicación IRIS RAD Studio

@José Pereira y yo hemos creado un proyecto del que queremos hablar en este artículo.

¿Qué es IRIS RAD Studio?

IRIS RAD Studio es nuestra idea de una solución low-code para hacer más fácil la vida del desarrollador.

¿Por qué?

¿Y por qué no? Las aplicaciones low-code se han hecho muy populares últimamente. La imagen de abajo muestra el "Cuadrante mágico" ofrecido por la consultora Gartner para plataformas de aplicaciones low-code empresariales, y que muestra lo interesante que es este mercado.

 

RESTForms2

RESTForms2 es una de las partes principales de nuestro proyecto. Como describió @Eduard Lebedyuk en este artículo, RESTForms es un backend genérico REST API para aplicaciones web modernas.

Características

Al usar RESTForms2, las clases persistenes heredadas de dc.irisrad.FormAdaptor consiguen automáticamente una forma CRUD (Create, Read, Update, Delete). Las formas disponibles se muestran en la página de inicio.

Cada forma, además de las características básicas de CRUD, también tiene:

  • Búsqueda general
  • Búsqueda condicional y avanzada para un campo específico
  • Creación de filtros combinados
  • Agrupación
  • Exportación de Datagrid a Excel

Además de la generación automática de formas basadas en JSON, ofrecida por RESTForms2, una cosa que queremos ofrecer a los usuarios es nuestro Import Wizard - Asistente de Importación.

Import Wizard

La funcionalidad presentada anteriormente con el proyecto iris-analytics-package permite a cualquier usuario:

  • Importar un fichero CSV
  • Crear una clase persistente según el fichero importado
  • Crear un cubo para ser utilizado por InterSystems Analytics
  • Generar un dashboard (cuadro de mando) de muestra, basado en los datos

¿Qué pasaría si también se pudiera editar este fichero? Añadir nueva información, editar la información en CSV, o incluso eliminar lineas innecesarias?!

¡Con IRIS RAD Studio se puede! 😃 

Cómo crear nuevas clases

Imagina que tienes clases existentes que heredan de dc.irisrad.FormAdaptor, ahora puedes aprovechar las funcionalidades de RAD Studio.

Para clases nuevas, creamos un endpoint en el que se pone la clase deseada en formato JSON... y voilà!

Ejemplo: 

{
    "name": "My.ClassName",
    "displayFormName": "My tasks",
    "displayProperty": "text",
    "fields": [{
        "name":"text",
        "displayName":"Task name",
        "type":"%Library.String",
        "required": false
    },{
        "name":"taskDate",
        "displayName":"Task date",
        "type":"%Library.TimeStamp"
    },{
        "name":"important",
        "displayName":"Important",
        "type":"%Library.Boolean"
    },{
        "name":"completed",
        "displayName":"Completed",
        "type":"%Library.Boolean"
    }]
}

Bastante fácil, ¿no?!

Mmmm... pero puedes estarte preguntando: "¿Qué pasa si no estoy tan familiarizado con JSON, o si no entiendo nada de la parte técnica?"

Calma, calma... ¡IRIS RAD Studio también ofrece una interfaz gráfica para la creación de nuevas clases!

Cómo crear nuevas clases - Wizard

La idea de low-code es precisamente evitar que el código sea escrito por el propio usuario. ¡Y eso incluye una clase y su propiedad en formato JSON!

La interfaz ofrecida por RAD Studio permite crear el nombre de la clase y ofrece una descripción que tendrá el formulario.

Al hacer clic en el botón Save se abre un cuadro de datos en el que puedes definir las propiedades de tu clase, o si prefieres llamarlo así, las columnas de tu tabla.

Una vez que terminas de definir, haz clic en Compile, y estás listo para usar tu nueva forma!

Plan

Creemos que este proyecto tiene mucho potencial para ser explorado. Si es bien recibido por la Comunidad, nos gustaría explorar sus posibilidades y crear un itinerario con todos.

Así, tendremos un producto que atienda cada vez mejor la necesidad general.

Descarga

https://openexchange.intersystems.com/package/iris-rad-studio


iris-rad-studio en el Gran Premio de InterSystems

https://openexchange.intersystems.com/contest/12

Comentarios (0)1
Inicie sesión o regístrese para continuar