Ajouter des informations dans un objet Select

Tags: #<Tag:0x00007fdd466a0358>

Bonjour,

Je possède un instance Simplicité qui possède un business object select qui devrait charger, grace à une requete SQL, des informations non persistent a chaque fois que j’ouvrirai l’objet (pour des export à l’instant t)
Dans cet objet, je mets plusieurs information, dans ces information il y a des objets qui viennent de d’autres instances Simplicité dont je récupère l’info via service-simplicité

Ma question est la suivante:
Est-il possible, apres avoir récupérer le résultat de la requête SQL, de récupérer l’objet Select pour modifier les lignes et rajouter les informations manquantes ?
Ou bien est-il possible de faire une requete SQL à part et d’ensuite avoir une méthode qui va rajouter des lignes dans l’objet Select une par une selon les paramètres que je lui donne ?

[Platform]
Status=OK
Version=4.0.P24
BuiltOn=2020-10-02 23:49 (revision 8e96d3fd43dabe50e8858a5f77c2f6e6f81d97bd)
DBPatchLevel=4.0;P24;85c7c9ef76f59db24dbbcd0462ba60a2

Cordialement,
KWu

Il est possible de modifier le contenu d’une recherche via le hook postSearch qui recoit la liste des records et retourne une liste de records List<String[]>.

  • modifier le contenu des colonnes par une simple boucle
  • retirer / ajouter des lignes

Par contre un point de vigilance est à apporter sur le fait que ce hook n’est pas sensé faire des requêtes longues (ou des appels de web-service…) en boucle, pour des raisons évidentes de performance et de temps d’attente niveau UX… dans votre cas je vois d’ici les GET sur le libellé du Pays et la devise en boucle. C’est acceptable si les accès sont rares et que l’utilisateur sait que ça va prendre du temps s’il remonte 1000 lignes…

Sinon en cas d’usage massif de votre objet, il faut plutôt monter la liste de référence (Country, Currency…) en cache (dans des HashMap par id) qui peut se rafraichir périodiquement (j’imagine que la liste de pays… ne change pas tous les secondes mais qu’une fraicheur à la journée peut être suffisante à ce niveau)

Ce qui rendrait les substitutions de valeur des meta-objets dans le postSearch quasi instantanées.

(faire un système où les Currency et les Country sont des web-service me laisse très perplexe, ce sont des données quasi statiques, un web-service doit servir à des données métier qui changent beaucoup, il est moins couteux de copier des données de référence statiques que de coupler tout le SI à ce niveau).