Actualiser la structure d'un formulaire l'ors de la mise à jour d'un module

Les sujets de cette catégorie concernent le développement du logiciel MedshakeEHR.
Avatar de l’utilisateur
Indelog
Administrateur
Messages : 71
Inscription : 10 juil. 2020, 10:06

Actualiser la structure d'un formulaire l'ors de la mise à jour d'un module

Message non lu par Indelog »

Parfois lors de la mise à jours d'un module nous avons besoin de modifier la structure d'un formulaire précédemment crée. Or cela ne peut être fait simplement via un update dans la base de donnée car un admin d'une instance MedshakeEHR peut avoir volontairement modifier la structure de ce formulaire via l'interface Web. Dans ce cas la mise à jours écraserai les ces modifications ce qui au mieux entraînerai une perte de l'affichage des données et au pire leur perte tout cours.

Quel solution pourrai t'on trouvé pour ce cas de figure ?

Personnellement je pense que la mise à jours de la structure d'un formulaire pourrai se faire via les scripts de post update sqlUpgrade_vX.X.X_vY.Y.Y_post.php qui pourrai afficher un dialogue demandant si oui ou non nous devons mettre à jour la structure du formulaire chaque fois qu'il y en a un qui doit être mis à jours. On pourrai aussi afficher les différence entres deux version d'un formulaire et proposer une édition directe de la structure à ce moment la. En allant plus loin on pourrai aussi disposer d'un système de versionnage de formulaire qui nous permettrai d'appeler la version donnée d'un formulaire lors de l'appel pour des données précédemment entrés avec une ancienne version de formulaire et donc d'en éviter la perte accidentel.

Qu'en pensez vous ?
DEMAREST Maxime (Indelog)
Avatar de l’utilisateur
Bertrand
Messages : 177
Inscription : 21 juil. 2020, 18:08
Localisation : Dans le grand bain
Contact :

Re: Actualiser la structure d'un formulaire l'ors de la mise à jour d'un module

Message non lu par Bertrand »

C'est un vrai gros sujet.
Il y a beaucoup de réponses complexes possibles si on part sur l'idée qu'il ne faut pas écraser l'existant parce qu'il a été modifié localement.
Est-ce qu'il ne faudrait pas plutôt partir sur l'idée qu'un formulaire distribué "officiellement" avec un module n'est pas à éditer localement, mais qu'il faut, si on le souhaite, le faire évoluer localement via une copie ?

B.

MedShakeEHR : Le Logiciel Médical Modulaire Libre
http://www.medshake.app/

MedShake : communauté médicale bien fraîche (et un peu secouée) !
https://www.medshake.net/

Avatar de l’utilisateur
Indelog
Administrateur
Messages : 71
Inscription : 10 juil. 2020, 10:06

Re: Actualiser la structure d'un formulaire l'ors de la mise à jour d'un module

Message non lu par Indelog »

A dégrossir au fur et a mesures.

Dans ce cas il nous faudrait disposer d'un propriété read-only sur les formulaires et d'une fonctionnalité de clonage de formulaire.

Il faut aussi qu'un utilisateur puisse aussi modifier le formulaire appelé dans les pages pour que ce soit son clone qui soit appelé aux lieux de l'original, dans ce cas j'imagine deux approche qui peuvent êtres complémentaires (ce sont vraiment des idée grossière histoire de lancer des pistes) :
  • Ajouter une propriété aux formulaire qui permette d'indiquer que celui-ci qui vient en replacement d'un autres et le surcharger (par exemple après le clonage d'un formulaire original) (on peut aussi imaginer un système de priorité.
  • Permettre de aux plugin de fournir leur propres templates de page (dans un arbo dédié) qui surchargerai les templates originaux et ce qui pourrai permettre d'y modifier le html et de choisir le quel formulaire appeler dans les pages. Si l'admin de l’installe a besoin d'adapter certaines pages et formulaire sans casser son install à chaque mise à jours il peut se faire un plugin dédier pour ses adaptations.
Je me demandait aussi au sujet de la description des formulaire, ils sont stocker en base de données, pourquoi ne pas l'avoir plutôt faites directement dans des fichiers yaml ?
DEMAREST Maxime (Indelog)
Répondre