This question has been flagged
2 Replies
5424 Views

Bonjour.

Je suis en train de développer un module qui permet de créer une relation entre les produits :

1 produit (neuf) peut être lié à plusieurs autres produits (occasions) qui sont des déclinaison du premier mais avec une gestion de stock, libellé, référence (etc.) différente).

1 produit d'occasion ne pouvant être lié qu'à un seul produit neuf.

Je me retrouve donc avec une relation one2many (child_ids, 1 produit neuf pour plusieurs occasions) et une autre relation many2one (parent_id, plusieurs occasions pour 1 parent). Cela revient à reproduire pour les produits la même relation entre un partenaire (res.partner) et ses contacts (res.partner aussi).

Lorsqu'un utilisateur crée une ligne (sale.order.line) dans un bon de commande (sale.order), il doit sélectionner le produit de la ligne. Si le produit (neuf) sélectionné est lié à au moins un produit d'occasion, alors je souhaite l'avertir qu'il existe des occasions et lui permettre d'en sélectionner un.

Cela revient à surcharger la méthode product_id_change (onchange sur le champ product_id) et rechercher s'il existe un produit d'occasion attaché.

Je dois lui afficher la liste des occasions disponibles pour ce produit et lui permettre de remplacer le produit neuf par celui d'occasion sélectionné.

Ma question :

  1. Dois-je utiliser un wizard (osv.memory) pour ouvrir la popup et lui afficher les occasions disponibles ?
  2. Si oui, comment mettre à jour le formulaire parent (order.line) pour changer la valeur du champ product_id ?
  3. Si non, y at'il un autre moyen pour y parvenir ?

je vous remercie d'avance pour l'aide que vous saurez m'apporter.

Avatar
Discard
Best Answer

Sorry, but a question asked in English will have more possibility to get answered!

So,please ask in English!

Thanks.

Avatar
Discard
Best Answer

Thank you for the information.

I create a hre :

help.openerp.com/question/14879/create-popup-on-onchange-return-new-field-value-on-parent-view

Avatar
Discard