IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Odoo (ex-OpenERP) Discussion :

Comment filtrer un one2many a l'aide d'un chant many2one (odoo12)


Sujet :

Odoo (ex-OpenERP)

  1. #1
    Membre du Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Mai 2017
    Messages
    105
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Burkina Faso

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Industrie

    Informations forums :
    Inscription : Mai 2017
    Messages : 105
    Points : 53
    Points
    53
    Par défaut Comment filtrer un one2many a l'aide d'un chant many2one (odoo12)
    Salut,
    j'ai construit une fenêtre comme celui-ci, dans lequel je voudrait filtrer les lignes de la Notebook, suivant les valeurs que je vais sélectionner au niveau des deux champ banque et projet.
    Nom : test filtre.PNG
Affichages : 553
Taille : 48,1 Ko

    code des classes
    Code Python : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    class btp_caution(models.Model):
        _name = "btp.caution"
     
        name = fields.Char(string='Libellé caution', required=True)
       ...
        banque_id = fields.Many2one('btp.banque', 'Banque')
        projet_id = fields.Many2one('btp.projet', 'Projet')
        etat_caution = fields.Many2one('btp.etatcaution', 'etat_caution_') 
     
    class btp_etatcaution(models.Model):
        _name = "btp.etatcaution"
     
        name = fields.Char('Name')
        banque_id = fields.Many2one('btp.banque', 'Banque')
        projet_id = fields.Many2one('btp.projet', 'Projet')
        ligne_caution_etat = fields.One2many('btp.caution', 'etat_caution', 'etat_caution')

    pour la vue correspondant à l'image ci-dessus, voici le xml:
    Code XML : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    <record id="view_btp_etatcaution_form" model="ir.ui.view">
                <field name="name">etatcaution</field>
                <field name="model">btp.etatcaution</field>
                <field name="arch" type="xml">
    				 <form string="etatcaution" class="oe_form_configuration" create="false">
                      ...
    					<sheet>
    						<group>
    							<field name="banque_id" class="oe_inline"/>
    							<field name="projet_id" class="oe_inline"/>
    						</group>
    					</sheet>
    					<notebook>
                            <page string="Etat caution">
     
                                    <field name="ligne_caution_etat" widget="select">
     
                                        <tree editable="bottom" string="Etat caution" create="false">
     
                                            <field name="name"/>
    										....
    										<field name="banque_id"  domain="[('banque_id', '=', parent.banque_id)]"/>
    										<field name="projet_id" domain="[('projet_id', '=', parent.projet_id)]" />
    										<field name="date_debut"/>
    										....
                                        </tree>
                                    </field>
                            </page>
    				    </notebook>
                    </form>
                </field>
            </record>
    		 <record id="action_etatcaution" model="ir.actions.act_window">
    			<field name="name">etatcaution</field>
    			<field name="type">ir.actions.act_window</field>
    			<field name="res_model">btp.etatcaution</field>
    			<field name="view_type">form</field>
    			<field name="view_mode">tree,form</field>
    			<field name="res_id">1</field>
    			<field name="view_id" ref="view_btp_etatcaution_form"/>
    		</record>

    mais cela n'applique pas le filtre?

    comment puis-je procéder pour venir à bout de ce problème?

  2. #2
    Expert confirmé
    Avatar de slim_java
    Homme Profil pro
    Enseignant
    Inscrit en
    Septembre 2008
    Messages
    2 272
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 39
    Localisation : Tunisie

    Informations professionnelles :
    Activité : Enseignant
    Secteur : Enseignement

    Informations forums :
    Inscription : Septembre 2008
    Messages : 2 272
    Points : 4 539
    Points
    4 539
    Par défaut
    pour appliquer des filtres, faites un rechrche à propos du champ domain

Discussions similaires

  1. Comment créer un fichier zip à l'aide de Delphi ?
    Par Invité dans le forum Langage
    Réponses: 5
    Dernier message: 29/11/2018, 16h21
  2. Comment filtrer une TListBox ?
    Par jmjmjm dans le forum Composants VCL
    Réponses: 9
    Dernier message: 17/11/2005, 13h08
  3. Réponses: 2
    Dernier message: 18/07/2005, 14h06
  4. Réponses: 4
    Dernier message: 31/05/2005, 16h52
  5. comment filtrer une table avec deux criteres càd 2 colonnes
    Par athmane2dz dans le forum Bases de données
    Réponses: 7
    Dernier message: 28/07/2004, 15h25

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo