Skip to content
Snippets Groups Projects
account_invoice_report.xml 5.92 KiB
Newer Older
<?xml version="1.0" encoding="utf-8" ?>
<odoo>
    <!-- Search view -->
    <record id="festa_account_invoice_report_search" model="ir.ui.view">
        <field name="name">festa.account.invoice.report.search</field>
        <field name="model">account.invoice.report</field>
        <field name="arch" type="xml">
            <search string="Factures client">
                <!-- Search -->
                <field name="partner_id" />
                <field name="contract_id" />
                <field name="commercial_name" />
                <field name="hall_id" />
                <field name="product_id" />
                <field
                    name="product_categ_id"
                    filter_domain="[('product_categ_id', 'child_of', self)]"
                />
                <field name="invoice_user_id" />
                <field name="invoice_date" />
                <!-- Filtres -->
                <filter
                    string="Factures de loyer"
                    name="rent"
                    domain="[('contract_id','!=',False)]"
                />
                <filter
                    string="Loyer vertueux"
                    name="virtuous_discount"
                    domain="[('virtuous_discount_id','!=',False)]"
                />
                <separator />
                <filter name="filter_invoice_date" date="invoice_date" />
                <filter name="invoice_date_due" date="invoice_date_due" />
                <filter name="filter_period_start" date="period_start" />
                <separator />
                <filter
                    string="Factures"
                    name="invoice"
                    domain="[('move_type','=','out_invoice')]"
                />
                <filter
                    string="Avoirs"
                    name="refund"
                    domain="[('move_type','=','out_refund')]"
                />
                <!-- Regroupements -->
                <group expand="1" string="Group By">
                    <filter
                        string="Client"
                        name="partner_id"
                        context="{'group_by':'partner_id','residual_visible':True}"
                    />
                    <filter
                        string="Contrat"
                        name="contract_id"
                        context="{'group_by':'contract_id','residual_visible':True}"
                    />
                    <filter
                        string="Site"
                        name="hall_id"
                        context="{'group_by':'hall_id','residual_visible':True}"
                    />
                    <filter
                        string="Enseigne"
                        name="commercial_name"
                        context="{'group_by':'commercial_name','residual_visible':True}"
                    />
                    <filter
                        string="Catégorie de produit"
                        name="category_product"
                        context="{'group_by':'product_categ_id','residual_invisible':True}"
                    />
                    <filter
                        string="Société"
                        name="company"
                        context="{'group_by':'company_id'}"
                        groups="base.group_multi_company"
                    />
                    <separator orientation="vertical" />
                    <filter
                        string="Date de facturation"
                        name="invoice_date"
                        context="{'group_by':'invoice_date'}"
                    />
                    <filter
                        string="Date d'échéance"
                        name="duemonth"
                        context="{'group_by':'invoice_date_due:month'}"
                    />
                    <filter
                        string="Date Loyer"
                        name="periodmonth"
                        context="{'group_by':'period_start:month'}"
                    />
                </group>
            </search>
        </field>
    </record>

    <!-- Pivot view -->
    <record id="festa_account_invoice_report_pivot" model="ir.ui.view">
        <field name="name">festa.account.invoice.report.pivot</field>
        <field name="model">account.invoice.report</field>
        <field name="arch" type="xml">
            <pivot string="Factures client">
                <field name="invoice_date" type="row" />
                <field name="partner_id" type="row" />
                <field name="contract_id" type="row" />
                <field name="price_subtotal" type="measure" />
            </pivot>
        </field>
    </record>

    <!-- Graph view -->
    <record id="festa_account_invoice_report_graph" model="ir.ui.view">
        <field name="name">festa.account.invoice.report.graph</field>
        <field name="model">account.invoice.report</field>
        <field name="arch" type="xml">
            <pivot string="Factures client">
                <field name="invoice_date" />
                <field name="price_subtotal" type="measure" />
            </pivot>
        </field>
    </record>

    <!-- Action -->
    <record id="action_account_invoice_customer" model="ir.actions.act_window">
        <field name="name">Facturation client</field>
        <field name="res_model">account.invoice.report</field>
        <field name="view_mode">pivot,graph</field>
        <field
            name="domain"
        >[('move_type', 'in', ('out_invoice', 'out_refund')), ('state', '=', 'posted')]</field>
        <field
            name="view_ids"
            eval="[(5, 0, 0),
                  (0, 0, {'view_mode': 'pivot', 'view_id': ref('festa_account_invoice_report_pivot')}),
                  (0, 0, {'view_mode': 'graph', 'view_id': ref('festa_account_invoice_report_graph')})]"
        />
        <field
            name="search_view_id"
            ref="festa_dashboard.festa_account_invoice_report_search"
        />
    </record>
</odoo>