Journal des modifications + Document

Serait il possible d’inclure la modification d’un attribut de type document dans le journal des modifications ?

Dans un historique de l’objet c’est simple car on a bien une colonne de type document.

Au niveau du change log c’est moins évident car il n’a pas de colonne, il stocke les modifications modifiées sous forme de JSON + un rendu HTML simplifié pour affichage sur la UI (un hook est en préparation à ce niveau pour permettre de changer cette publication HTML par défaut, pour avoir des textes en termes métier sur certains objets).

Un document est donc stocké encodé en base64 dans le JSON (comme dans un flux Ajax de la UI).
Par contre il va falloir voir comment le résumé HTML peut ensuite le visualiser à partir du JSON…

A minima on pourrait pas plutôt conserver juste les meta infos du fichier (nom, date, taille) ?

Pour ce type d’historique c’est pas forcément justifié de conserver le contenu du doc (qui est en outre potentiellement volumineux, surtout en base 64)

oui de base ça doit faire ça au niveau JSON, sinon c’est un bug ou un oubli.

On pourrait aussi utiliser une référence vers le dbdoc / m_document, mais il me semble préférable de dissocier les données de “prod” des “archives”.

et comme la colonne JSON est un blob, le problème de taille de la table m_redolog est un simple pb de base données = tablespace d’archivage plus gros et auto-scalable.

Oui mais aussi un pb de requêtage et de remontées de données, ex si on affiche une liste avec 20 lignes et 5 docs par ligne de 5Mb chacun et que le contenu est dans un BLOB JSON ça fait remonter une énorme quantité de données pour rien car sur la liste on affichera pas le contenu des docs.

Bref, à minimal je pense qu’il faudrait 2 BLOBS distincts, le 2ème contenant un 2ème JSON avec les contenus des docs referencés dans le 1er JSON ou dans le genre

Bof autant créer une table d’archive des documents.
Qu’on pourrait aussi utiliser comme recycle bin…

Oui si tu veux (cf. mon “dans le genre”). Mon point c’est juste de ne pas mettre le contenu des docs dans le JSON du journal…

Voilà c’est ajouté pour tracer uniquement le dbd_path du document modifié dans le HTML.
Ca trace aussi le changement du type “Object” qui avait été oublié avec la clé fonctionnelle de l’objet référencé.

@sebhardy as tu besoin d’accéder au contenu du doc ou il faut juste savoir qu’il a été modifié ?

Pour l’instant si tu as besoin des versions du doc, il est préférable d’utiliser la table historique de l’objet.

Je viens de voir le message.
Le besoin est de tracer uniquement la modification du document (Pas besoin de voir le contenu depuis le journal de modification)