Amélioration #5792
fermésetter le nom logique sur toutes les révisions
100%
Corriger la méthode Doc::setLogicalName() pour affecter le nom logique sur les révisions passées.
Produire un script de migration qui affectera les noms logiques pour les révisions passées des documents vivants ayant un nom logique.
Description
lorsqu'on sette un nom logique, ce nom logique est posé sur la révision courante.
Ensuite, le nom logique est recopié sur les révisions suivantes lors de la révision du document. Ainsi, le nom logique est valué à partir d'une certaine révision…
Il serait plus sain de valuer le nom logique pour les anciennes révisions également, rendant le comportement de #5788 prédictible (toutes les révisions sont converties vers la dernière) alors que là, les révisions postérieures à l'attribution du nom logique sont converties vers la dernière révision alors que les révisions antérieures sont "perdues")
Mis à jour par Matthieu Codron il y a plus de 10 ans
Pour historique, voici un script sql qui reporte le nom logique le plus récent sur toutes les révisions
UPDATE doc SET name = i.name
FROM doc AS i
WHERE i.name IS NOT NULL
AND i.name != ''
AND i.revision > 0
AND i.initid = doc.initid;
Mis à jour par Marc Claverie il y a plus de 10 ans
- Statut changé de Nouveau à À analyser
- Assigné à mis à Éric Brison
- Version cible mis à 3.2.21
Mis à jour par Éric Brison il y a plus de 10 ans
- Statut changé de À analyser à Analysé
- Assigné à
Éric Brisonsupprimé - Solution proposée mis à jour (diff)
Mis à jour par Éric Brison il y a plus de 10 ans
- Statut changé de Analysé à Assigné
- Assigné à mis à Éric Brison
Mis à jour par Éric Brison il y a plus de 10 ans
Attention au code sql fourni qui peut reporter des noms logiques depuis la poubelle.
Voici un code plus sûr :
update doc set name=docread.name from docread where
docread.name is not null and
doc.name is null and
doc.initid = docread.initid and
doc.doctype != 'Z' and
docread.locked != -1
De plus il faut exécuter un wsh --api=cleanContext après une telle manipulation car les références aux noms logiques doivent être recalculées.
Mis à jour par Éric Brison il y a plus de 10 ans
- Statut changé de Assigné à Intégré
Appliqué par commit dynacase-core|commit:9092b8af792cd1fa939694140024317cbf3260d0.