ORDA – Diga adiós a los espacios vacíos en sus selecciones de entidades

Traducido automáticamente de Deepl

A todos nos ha pasado. Usted construye una hermosa interfaz que muestra una selección de entidades para los usuarios. Pueden soltar entidades para refinar sus elecciones, pero entonces… aparecen esos espacios vacíos donde solían estar las entidades soltadas.

¿Reconstruir la selección de entidades después de soltarlas? Se acabó. 4D 20 R6 introduce una práctica funcionalidad que elimina este problema con sólo una línea de código.

Siga leyendo para descubrir cómo esta funcionalidad puede mantener su interfaz limpia y a sus usuarios contentos.

HDI_CleanEntitySelection

la función de limpieza del objeto de selección de entidades

Veamos cómo funciona esta función.

Se muestra una selección de entidades, y el usuario puede eliminar algunas entidades.

El siguiente cuadro de lista muestra la selección de entidades Form.persons. El usuario selecciona algunas de ellas (Form.selected ) y pulsa sobre el botón Borrar. Si ejecutamos sólo este código

Form.selected.drop()

Form.persons:=Form.persons

Obtenemos esto:

Con una sola línea de código, gracias a la nueva función clean() :

Form.persons:=Form.persons.clean()

Los espacios vacíos desaparecen por arte de magia, dejando tu interfaz limpia y fácil de usar:

blank

El parámetro clean en la API REST $entityset

Si su aplicación depende de las API REST, también puede utilizar el parámetro clean con la API REST $entityset.

Si tiene un conjunto de entidades que contiene entidades eliminadas (como muestra el objeto azul que contiene la propiedad __STAMP) como este

{

"__DATACLASS": "Personas",

"__entityModel": "Persons",

"__GlobalStamp": 0,

"__COUNT": 3,

"__FIRST": 0,

"__ENTITIES": [

{


"__STAMP":0


}
,

{

"__KEY": "2",

"__TIMESTAMP": "2024-05-23T09:26:19.658Z",

"__STAMP": 1,

"ID": 2,

"firstname": "Broddy",

"lastname": "Cristofanini"

},

{

"__KEY": "3",

"__TIMESTAMP": "2024-05-23T09:26:19.658Z",

"__STAMP": 1,

"ID": 3,

"firstname": "Candie",

"lastname": "Figin"

}

],

"__SENT": 3

}

Puede obtener un nuevo conjunto de entidades sin las entidades eliminadas ejecutando la siguiente solicitud (949062617AF6408CB198B3CB41FB72FB es el ID del conjunto de entidades):

/$entityset/949062617AF6408CB198B3CB41FB72FB?$clean=true&$method=entityset

¿El resultado? Un conjunto de entidades sin las entradas eliminadas:

{

"__ENTITYSET": "/rest/Persons/$entityset/8F658F3BA1884DE6BEC1FCFF4A7938F0", xml-ph-0000@deepl.internal
"__DATACLASS": "Persons",

"__entityModel": "Personas",

"__GlobalStamp": 0,

"__COUNT": 2,

"__FIRST": 0,

"__ENTITIES": [

{

"__KEY": "2",

"__TIMESTAMP": "2024-05-23T09:47:50.933Z",

"__STAMP": 1,

"ID": 2,

"firstname": "Broddy",

"lastname": "Cristofanini"

},

{

"__KEY": "3",

"__TIMESTAMP": "2024-05-23T09:47:50.933Z",

"__STAMP": 1,

"ID": 3,

"firstname": "Candie",

"lastname": "Figin"

}

],

"__SENT": 2

}

Con esta nueva función, gestionar selecciones de entidades nunca ha sido tan fácil. ¡Mantenga sus interfaces ordenadas y a sus usuarios contentos!

Avatar
• Propietario de producto - Marie-Sophie Landrieu-Yvert ingresó al equipo de 4D Product como Propietario de producto en 2017. Como tal, está a cargo de escribir las historias de los usuarios y luego traducirlas en especificaciones funcionales. Su papel es también asegurarse de que la implementación de la funcionalidad entregada cumpla con las necesidades del cliente. Marie-Sophie se graduó en la Escuela de Ingeniería de ESIGELEC y comenzó su carrera como ingeniera en IBM en 1995. Participó en varios proyectos (de mantenimiento y creación) y trabajó como desarrolladora de Cobol. Luego trabajó como diseñadora de UML y desarrolladora de Java. Sus principales funciones fueron analizar y redactar requisitos funcionales, coordinar los equipos de negocio y de desarrollo.