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 :

Trier une vue tree selon des critères de recherches


Sujet :

Odoo (ex-OpenERP)

  1. #1
    Membre à l'essai
    Homme Profil pro
    Technicien réseau
    Inscrit en
    Mars 2014
    Messages
    29
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Suisse

    Informations professionnelles :
    Activité : Technicien réseau
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mars 2014
    Messages : 29
    Points : 14
    Points
    14
    Par défaut Trier une vue tree selon des critères de recherches
    Bonjour,

    Mon but est de créer un module qui aura comme modèle "account.analytic.account" mais qui n'affiche que les objets qui ont dans leur nom "-CM".

    J'ai déjà réussi à créer le module mais le filtre pose un problème :

    le view :

    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
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    <?xml version="1.0" ?>
    <openerp>
        <data>
     
            #------------------
            # put here all your form and tree definition
            #------------------ 
     
            <!-- Inherited Analytic Account list -->
            <record id="view_account_analytic_account_tree_nxn" model="ir.ui.view">
                <field name="name">account.analytic.account.list</field>
                <field name="model">account.analytic.account</field>
                <field name="inherit_id" ref="account.view_account_analytic_account_list"/>
     
                <field name="arch" type="xml">
                    <field name="complete_name" position="replace">
                        <field name="name"/>
                    </field>
                    <field name="code" position="replace"/>
                    <field name="manager_id"  position="replace" />
                    <field name="partner_id" position="replace" />
                    <field name="date" position="replace">
                        <field name="quantity_max"/>
                    </field>
                    <search string="Ma recherche">
                        <filter string="name" domain="[]" context="{'group_by' : 'quantity_max'}" />
                    </search>
                </field>            
            </record>
     
        </data>
    </openerp>
     
     
    fichier menu :
     
     
    <?xml version="1.0" ?>
    <openerp>
        <data>
     
            <record model="ir.actions.act_window" id="action_all_cm_contract">
                <field name="name">Contrat maintenance</field>
                <field name="res_model">account.analytic.account</field>
                <field name="view_type">form</field>
                <field name="context">{"search_default_type":1}</field>
                <field name="view_mode">tree,form</field>
                <field eval="False" name="view_id"/>
            </record>
     
     
     
     
            <!-- Top menu item -->
            <menuitem name="NxN Reports" id="menu_nxn_reports" sequence="500" />
     
            <!-- Section menu -->
            <menuitem name="SLA analysis" id="nxn_section_sla" parent="menu_nxn_reports" />
     
            <!-- Effective menu, with actions -->	
            <menuitem
                name="CM analysis"
                parent="nxn_section_sla"
                id="action_all_cm_contract_account"
                action="action_all_cm_contract" />
     
     
        </data>
    </openerp>


    Je prends volontiers un coup de main car je suis tout nouveau dans le développement d'OpenERP

  2. #2
    Expert confirmé
    Avatar de N1bus
    Homme Profil pro
    Dev. Web & OpenERP
    Inscrit en
    Janvier 2003
    Messages
    2 827
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 59
    Localisation : France, Seine et Marne (Île de France)

    Informations professionnelles :
    Activité : Dev. Web & OpenERP
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Janvier 2003
    Messages : 2 827
    Points : 5 673
    Points
    5 673
    Par défaut
    Bonjour,

    Essaye ça :
    Code xml : Sélectionner tout - Visualiser dans une fenêtre à part
    <filter string="name" domain="[('name', '=ilike', '-cm')]" context="{'group_by' : 'quantity_max'}" />

    Quand on utilise =ilike dans un domaine, cela équivaut à ILIKE '-cm%' en SQL, alors que si tu utilises seulement ilike , cela équivaut à ILIKE '%-cm%' en SQL (dans OpenERP/Odoo)

  3. #3
    Membre à l'essai
    Homme Profil pro
    Technicien réseau
    Inscrit en
    Mars 2014
    Messages
    29
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Suisse

    Informations professionnelles :
    Activité : Technicien réseau
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mars 2014
    Messages : 29
    Points : 14
    Points
    14
    Par défaut Suite
    Merci de ta réponse rapide j'ai malheureusement une erreur d'architecture et mettant ton filtre, voici mon code :

    view :

    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
    <?xml version="1.0" ?>
    <openerp>
        <data>
     
            #------------------
            # put here all your form and tree definition
            #------------------ 
     
            <!-- Inherited Analytic Account list -->
            <record id="view_account_analytic_account_tree_nxn" model="ir.ui.view">
                <field name="name">account.analytic.account.list</field>
                <field name="model">account.analytic.account</field>
                <field name="inherit_id" ref="account.view_account_analytic_account_list"/>
     
     
                <field name="arch" type="xml">
     
     
     
                    <field name="complete_name" position="replace">
                        <field name="name"/>
                    </field>
                    <field name="code" position="replace"/>
                    <field name="manager_id"  position="replace" />
                    <field name="partner_id" position="replace" >
                    </field>
                    <search string="Ma recherche">
                        <filter string="name" domain="[('name', '=ilike', '-cm')]" context="{'group_by' : 'quantity_max'}" />
                    </search>
                    <field name="date" position="replace">
                    </field>
                </field>            
            </record>
     
        </data>
    </openerp>

    menu:

    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
    42
    43
    44
    45
    <?xml version="1.0" ?>
    <openerp>
        <data>
     
            <record model="ir.actions.act_window" id="action_all_cm_contract">
                <field name="name">Contrat maintenance</field>
                <field name="res_model">account.analytic.account</field>
                <field name="view_type">form</field>
                <field name="context">{"search_default_type":1}</field>
                <field name="view_mode">tree,form</field>
                <field eval="False" name="view_id"/>
            </record>
     
            <record model="ir.actions.act_window" id="action_all_sp_contract">
                <field name="name">Contrat maintenance</field>
                <field name="res_model">account.analytic.account</field>
                <field name="view_type">form</field>
                <field name="view_mode">tree,form</field>
                <field eval="False" name="view_id"/>
            </record>
     
     
     
            <!-- Top menu item -->
            <menuitem name="NxN Reports" id="menu_nxn_reports" sequence="500" />
     
            <!-- Section menu -->
            <menuitem name="SLA analysis" id="nxn_section_sla" parent="menu_nxn_reports" />
     
            <!-- Effective menu, with actions -->	
            <menuitem
                name="CM analysis"
                parent="nxn_section_sla"
                id="action_all_cm_contract_account"
                action="action_all_cm_contract" />
     
            <menuitem
                name="SP analysis"
                parent="nxn_section_sla"
                id="action_all_sp_contract_account"
                action="action_all_sp_contract" />
     
     
        </data>
    </openerp>


    La balise dans le menu ne pose pas de problème, c'est plutôt au niveau de la vue que l'erreur vient.

  4. #4
    Expert confirmé
    Avatar de N1bus
    Homme Profil pro
    Dev. Web & OpenERP
    Inscrit en
    Janvier 2003
    Messages
    2 827
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 59
    Localisation : France, Seine et Marne (Île de France)

    Informations professionnelles :
    Activité : Dev. Web & OpenERP
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Janvier 2003
    Messages : 2 827
    Points : 5 673
    Points
    5 673
    Par défaut
    On ne peut pas mettre de champ <search> dans la vue Tree.
    Regarde ici pour une vue recherche : http://thierry-godin.developpez.com/...enerp-fr/#LV-H

  5. #5
    Membre à l'essai
    Homme Profil pro
    Technicien réseau
    Inscrit en
    Mars 2014
    Messages
    29
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Suisse

    Informations professionnelles :
    Activité : Technicien réseau
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mars 2014
    Messages : 29
    Points : 14
    Points
    14
    Par défaut
    Merci beaucoup de ton aide, j'ai pu filtrer comme je le voulais.

  6. #6
    Membre à l'essai
    Homme Profil pro
    Technicien réseau
    Inscrit en
    Mars 2014
    Messages
    29
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Suisse

    Informations professionnelles :
    Activité : Technicien réseau
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mars 2014
    Messages : 29
    Points : 14
    Points
    14
    Par défaut
    J'ai pu filtrer par context mais le domain ne fonctionne pas, c'est comme s'il n'était pas du tout appliqué, voici mon code :

    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
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    <?xml version="1.0" ?>
    <openerp>
        <data>
            <!-- Action du menu -->
            <record model="ir.actions.act_window" id="action_all_cm_contract">
                <field name="name">Contrat maintenance</field>
                <field name="res_model">account.analytic.account</field>
                <field name="view_type">form</field>          
                <field name="view_mode">tree,form</field>
                <field name="context">{"search_default_filter_see_all":1}</field>
                <field eval="False" name="view_id"/>
            </record>
            <record model="ir.actions.act_window" id="action_all_sp_contract">
                <field name="name">Contrat maintenance</field>
                <field name="res_model">account.analytic.account</field>
                <field name="view_type">form</field>
                <field name="view_mode">tree,form</field>
                <field eval="False" name="view_id"/>
            </record>
     
            <!-- Recherche -->
            <record id="search_view_id" model="ir.ui.view">
                <field name="name">search_view_id</field>
                <field name="model">account.analytic.account</field>
                <field name="arch" type="xml">
                    <search string="Search CM Statement"> 
                    <field name="complete_name" />    
                        <filter name="filter_see_all" string="Tri perso" domain="[('complete_name', '=ilike', '-cm')]" context="{'group_by': 'state'}"/>       
                    </search>
                </field>
            </record>
     
     
     
     
     
     
            <!-- Top menu item -->
            <menuitem name="NxN Reports" id="menu_nxn_reports" sequence="500" />
     
            <!-- Section menu -->
            <menuitem name="SLA analysis" id="nxn_section_sla" parent="menu_nxn_reports" />
     
            <!-- Effective menu, with actions -->	
            <menuitem
                name="CM analysis"
                parent="nxn_section_sla"
                id="action_all_cm_contract_account"
                action="action_all_cm_contract" />
     
            <menuitem
                name="SP analysis"
                parent="nxn_section_sla"
                id="action_all_sp_contract_account"
                action="action_all_sp_contract" />
     
     
        </data>
    </openerp>

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Réponses: 0
    Dernier message: 27/07/2014, 04h32
  2. [AC-2010] Découper une chaine selon des critères en début et en fin
    Par docjo dans le forum VBA Access
    Réponses: 4
    Dernier message: 14/10/2013, 07h58
  3. Trier selon des critères successifs
    Par AkaiKen dans le forum Langage SQL
    Réponses: 4
    Dernier message: 25/10/2010, 13h47
  4. Réponses: 3
    Dernier message: 05/02/2010, 03h45
  5. RegExp :Recuperer une partie d'une chaine selon des critères
    Par Zineb1987_UNI dans le forum Général JavaScript
    Réponses: 5
    Dernier message: 25/10/2009, 22h19

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