Projet

Général

Profil

Actions

Evolution #6493

fermé

Ordonnancement des attributs dans la famille : ajout des relations 'previous sibling'

Ajouté par Marc Claverie il y a presque 10 ans. Mis à jour il y a presque 10 ans.

Statut:
Intégré
Priorité:
Normal
Assigné à:
Version cible:
Début:
06/07/2016
Echéance:
% réalisé:

100%

Temps estimé:
Version source:
Solution proposée:

l'ordre est calculé par niveau d'héritage.

1. calcul de l'ordre de la famille mère
2. calcul de l'ordre des MODATTR de la famille fille
3. calcul de l'ordre final des attributs

Les attributs structurants ("tab" et "frame") indiquent aussi l'ordre relatif.

Une erreur sera levée si 2 attributs spécifiques de la famille ont indiqué le même ordre relatif

Principaux fichiers impactés:
Wiki Détail:
Contrôle:
Thème:
Socle technique

Description

La colonne 'Order' contient actuellement un entier (obligatoire).

La nouvelle notation permet de décrire l'arbre des attributs :
- la colonne 'parentId' est vide (top level) ou contient l'id de l'attribut encadrant (fonctionnement actuel)
- la colonne 'Order' doit contenir soit :
- ::first pour le premier dans un encadrant
- id-attribute-prev-sibling référence au précédent frère
Règle pour cette nouvelle notations : valeur unique pour une famille et obligatoire.


Demandes liées 1 (1 ouverte0 fermée)

Lié à Core - Evolution #6442: [Structure et order] Linéarisation des ordersNouveau08/06/2016

Actions

Mis à jour par Éric Brison il y a presque 10 ans

Cas de fonctionnement :

1. Soit F1 famille sans héritage

Attribut Cadre "A" (entre parenthèse c'est l'ordre)

  • a1 (::first)
  • a2 (a1)
  • a3 (a2)

Résultat :

  1. a1
  2. a2
  3. a3

2. Soit F2 hérite de F1

Attribut Cadre "A"
  • b1 (::first)
  • b2 (b1)

Résultat :

  1. b1
  2. b2
  3. a1
  4. a2
  5. a3

3. Soit F3 hérite de F2

Attribut Cadre "A"
  • c1 (a2)
  • c2 (b1)

Résultat :

  1. b1
  2. c2
  3. b2
  4. a1
  5. a2
  6. c1
  7. a3

4. Soit F4 hérite de F2

Attribut Cadre "A"
  • a3 (::first) "MODATTR"
  • b2 (a3) "MODATTR"
  • d1 (a2)
  • d2 (b2)

Résultat :

  1. a3
  2. b2
  3. d2
  4. b1
  5. a1
  6. a2
  7. d1

Mis à jour par Éric Brison il y a presque 10 ans

  • Solution proposée mis à jour (diff)

Mis à jour par Éric Brison il y a presque 10 ans

  • Solution proposée mis à jour (diff)

Mis à jour par Charles Bonnissent il y a presque 10 ans

  • Lié à Evolution #6442: [Structure et order] Linéarisation des orders ajouté

Mis à jour par Charles Bonnissent il y a presque 10 ans

Si les modifications évoquées sont de cette ampleur, il serait probablement plus intéressant de regarder la #6442 qui propose une solution plus simple et robuste au même problème....

Mis à jour par Éric Brison il y a presque 10 ans

  • Statut changé de Analysé à Intégré
  • % réalisé changé de 0 à 100

Appliqué par commit internal-platfrom:commit:4285bd23990217b8b222733b95768eda38a39051.

Actions

Formats disponibles : Atom PDF