Se rendre au contenu
Menu
Cette question a été signalée
1 Répondre
6356 Vues

In Odoo v8, with analytic accounting and contracts management enabled, I override the searchview for Contracts to group them by parent analytic account: in the contract view, when I click on "invoices" - that redirects me to the sale.order.line.tree of invoices for that Contract - I get an error regarding the "parent_id", that actually doesn't exist in the Sale Order Line model.

These are my modifications. The Searchview

<record id="analytic_account_redefine_searchview" model="ir.ui.view" forcecreate="1">
            <field name="name">analytic.account.redefine.searchview</field>
            <field name="model">account.analytic.account</field>
            <field name="inherit_id" ref="account_analytic_analysis.view_account_analytic_account_overdue_search" />
            <field name="arch" type="xml" >

                <xpath expr="//filter[@string='Status']" position="before">
                    <filter name="category" string="Parent account" domain="[]" context="{'group_by':'parent_id'}"/>
                </xpath>

            </field>
        </record>

The window action

<record id="account_analytic_analysis.action_account_analytic_overdue_all" model="ir.actions.act_window">
            <field name="search_view_id" ref="lawyers_analytic_account.analytic_account_redefine_searchview" />
                <field name="context">{
                'default_type':'contract',
                'search_default_open':1, 
                'search_default_pending':1,
                'default_manager_id':uid,
                'search_default_category':1
                }
            </field>

</record>

When I remove the "search_default_category:1" rule, the error disappears.

How could I restrict that context entry so that it gets applied to Contracts only?

Avatar
Ignorer
Auteur

@Vasanth: thank you for replying but that doesn't solve

Meilleure réponse

 Hi, replace the code by the following codes:

    <record id="analytic_account_redefine_searchview" model="ir.ui.view" forcecreate="1">
                <field name="name">analytic.account.redefine.searchview</field>
                <field name="model">account.analytic.account</field>
                <field name="inherit_id" ref="account_analytic_analysis.view_account_analytic_account_overdue_search" />
                <field name="arch" type="xml" >
                <field name="parent_id invisible="1'"/>

                <xpath expr="//filter[@string='Status']" position="before">
                      <filter string="Parent account" domain="[]" context="{'group_by':'parent_id'}"/>
                </xpath>

                </field>
            </record>

 

    <record id="account_analytic_analysis.action_account_analytic_overdue_all" model="ir.actions.act_window">
                <field name="search_view_id" ref="lawyers_analytic_account.analytic_account_redefine_searchview" />
                    <field name="context">{
                    'default_type':'contract',
                    'search_default_open':1,
                    'search_default_pending':1,
                    'default_manager_id':uid,
                    'search_default_parent_id':1
                    }
                </field>

    </record>

Avatar
Ignorer
Auteur

Hi Vasanth, thank you for replying and excuse me for delay - I thought I already replied but now I found I didn't. The modifications you suggest don't get any effect. Actually, the problem is not that the "parent_id" is missing from the "parent" model (the contract, alas the analytic account), but that the invoices view tries to inherit filters from the analytic account search view, which instead acts on different fields.

Publications associées Réponses Vues Activité
0
mars 15
4338
1
janv. 25
1320
3
nov. 24
2063
0
mai 24
1638
0
juil. 22
2424