Modéliser une GED : multiples index pour un objet
Bonjour,
Dans le cadre du développement d'une GED interne, j'ai les règles de gestion suivantes :
- Un fichier (objet) peut être qualifié par plusieurs index
- Un index a un type et une valeur
Par exemple, mon fichier "facture-05.pdf" aurait les index suivants :
- Nature de document : facture
- Date du document : 01/05/2011
- Nom du client : DUPOND
- N° du client : 201
Cela donne la modélisation suivante :
http://i0.simplest-image-hosting.net...507/modele.jpg
Les 4 index de l'exemple sont stockés dans INDEXATION, et pointent tous vers l'unique OBJET correspondant à mon fichier.
L'avantage de cette conception est qu'elle est très souple au niveau de la configuration de la GED : on peut créer les types d'index que l'on veut, et n'utiliser que ceux dont on a besoin pour chaque objet.
Mon souci se trouve au niveau de l'interrogation de cette base.
Imaginons les critères de recherche suivants :
- Nature de document : facture
- Nom du client : DUPOND
Ma requête va se traduire par :
- Une recherche des enregistrements de INDEXATION où FkIdTypeIndex = "Nature de document" ET ValeurIndex = "Facture". Cela nous donne une première sélection.
- Une recherche des enregistrements de INDEXATION où FkIdTypeIndex = "Nom du client" ET ValeurIndex="DUPOND". On a une deuxième sélection.
- Une recherche dans OBJET des enregistrements qui correspondent aux FkIdObjet de la réunion des deux sélections de INDEXATION
Vue la relative complexité de cette requête pourtant basique, j'ai peur d'être en train de partir sur un modèle inadapté.
Quel est votre avis ?