On 2016-01-21 01:30, Fabien Castarède wrote:
> Bonjour,
> 
> Je souhaitais avoir votre avis sur la nécessité ou pas que les données d'un 
> document soient indépendantes des relations de ce document, une fois que ce 
> document a été validé. Par exemple, une facture dont l'état est "Validée", 
> "Postée", ou "Payée". Ou une vente qui a été validée. Aujourd'hui je 
> remarque que je n'ai pas la possibilité de supprimer une adresse d'un tiers 
> qui a été utilisée dans une vente ou une facture (normal puisqu'elle est 
> liée à ces documents). Par contre, je peux la modifier et lorsque j'ouvre 
> une facture qui a utilisé cette adresse, l'adresse affichée comporte la 
> modification (normal puisque c'est l'adresse liée). En revanche le rapport 
> qui a été généré avant la modification n'est pas altéré.
> 
> Il me semble qu'un document, une fois validé, ne devrait plus pouvoir être 
> altéré. Cela permettrait également de supprimer ou modifier des 
> informations qui ne sont plus à jour dans des entités d'origine liées à ce 
> document. Par exemple, une adresse qui n'est plus utilisée par un tiers, on 
> aurait la possibilité de la supprimer (ou de la modifier), au lieu d'en 
> créer une nouvelle et de garder l'ancienne qui n'est plus valide, sans 
> altérer les documents qui ont utilisé cette adresse (qui était valide à ce 
> moment là).
> 
> Qu'en pensez-vous ?

C'est une problématique qui a déjà été discutée sur Tryton.
La solution proposée est:

    Pour la suppression d'enregistrement, on utilise la suppression
    logique (champs active) qui simule la suppression de celui-ci tout
    en le gardant dans la base de données pour les clés étrangères.

    Pour la modification d'enregistrement après validation, on utilise
    l'« historisation » des enregistrements. C'est à dire que Tryton
    fait une copie dans une table '__history' des enregistrement avant
    modification. Ensuite on peut aller lire avec l'API standard les
    enregistrement à une date définie dans le context '_datetime'.
    Le module "account_invoice_history" implémente cette technique pour
    les factures.

Ces solutions ont l'avantage de limiter les copies et peuvent être
implémentées de façon modulaire sur n'importe quel modèle sans que
celui-ci ne doive être conçu pour.

-- 
Cédric Krier - B2CK SPRL
Email/Jabber: [email protected]
Tel: +32 472 54 46 59
Website: http://www.b2ck.com/

-- 
Vous recevez ce message, car vous êtes abonné au groupe Google Groupes 
tryton-fr.
Cette discussion peut être lue sur le Web à l'adresse 
https://groups.google.com/d/msgid/tryton-fr/20160121100707.GS18827%40tetsuo.markantoffice.local.

Répondre à