Bonjour,
pas si titanesque que cela.
Je peux t'aider sur la partie analyse, pour le reste cela ne devrait pas être trop compliqué, fais une recherche sur l'expression 'jointure reflexive'.
Bon ta base
Une table produit
Une table réaction
Le piège serai de créer 2 tables pour les produits, puisque ce sont les mêmes éléments.
Une analogie: un groupe d'individus et leur
lien de parenté
Code : Tout sélectionner
--------------- ------------
! individus ! ! parenté !
!--------------! !----------!
! Jean !...............! frère !..
! pierre ! ! époux ! .
! gaelle ! ! soeur ! .
! Francoise !...... ! cousin ! .
! ! . !----------! .
!--------------! ........................
Jean est le frère de Francoise, attention au sens !
Francoise n'est pas le frère de Jean, dans ton cas ce n'est pas imporatant
--------------- ------------
! individus ! ! parenté !
!--------------! !----------!
! Jean ! ! frère !
! pierre !...............! époux !..
! gaelle ! ! soeur ! .
! Francoise !.... ! cousin ! .
! ! . !----------! .
!--------------! ..........................
Piérre est l'époux de Francoise
Voila tu remplaces individus par éléments et parenté par réaction, tu fais ton interface et tu brille en société

.
Il faut trouver la manière de créer des jointures réflexives avec ooo.
Bon courage
ps: je me souviens que en sql il faut déclarer les tables ainsi avec des alias, (par exemple):
open table1 as reaction
open table2 as produit1
open table2 as produit2
Ainsi tu aura une table fantôme sur laquelle pointer.