summaryrefslogtreecommitdiff
path: root/addons/account_test/views/accounting_assert_test_views.xml
blob: f755d931445505100d917b30244d516f38f45c47 (plain)
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
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
<?xml version="1.0" encoding="utf-8"?>
<odoo>

        <record model="ir.ui.view" id="account_assert_tree">
            <field name="name">accounting.assert.test.tree</field>
            <field name="model">accounting.assert.test</field>
            <field name="arch" type="xml">
                <tree string="Tests">
                    <field name="sequence"/>
                    <field name="name"/>
                    <field name="desc"/>
                </tree>
            </field>
        </record>

        <record model="ir.ui.view" id="account_assert_form">
            <field name="name">accounting.assert.test.form</field>
            <field name="model">accounting.assert.test</field>
            <field name="arch" type="xml">
                <form string="Tests">
                    <sheet>
                        <group>
                            <group>
                                <field name="name"/>
                                <field name="sequence"/>
                            </group>
                            <group>
                                <field name="active" widget="boolean_toggle"/>
                            </group>
                        </group>
                        <notebook>
                            <page string="Description" name="description">
                                <field name="desc" nolabel="1"/>
                            </page>
                            <page string="Expression" name="expression">
                                <group string="Python Code">
                                    <field colspan="4" name="code_exec" nolabel="1"/>
                                </group>
                                <group string="Code Help">
                                    <pre>
Code should always set a variable named `result` with the result of your test, that can be a list or
a dictionary. If `result` is an empty list, it means that the test was successful. Otherwise it will
try to translate and print what is inside `result`.

If the result of your test is a dictionary, you can set a variable named `column_order` to choose in
what order you want to print `result`'s content.

Should you need them, you can also use the following variables into your code:
    * cr: cursor to the database
    * uid: ID of the current user

In any ways, the code must be legal python statements with correct indentation (if needed).

Example: 
    sql = '''SELECT id, name, ref, date
             FROM account_move_line 
             WHERE account_id IN (SELECT id FROM account_account WHERE type = 'view')
          '''
    cr.execute(sql)
    result = cr.dictfetchall()
                                    </pre>
                                </group>
                            </page>
                        </notebook>
                    </sheet>
                </form>
            </field>
        </record>

        <record id="accounting_assert_test_view_search" model="ir.ui.view">
            <field name="name">accounting.assert.test.view.search</field>
            <field name="model">accounting.assert.test</field>
            <field name="arch" type="xml">
                <search string="Search Account Test">
                    <field string="Name" name="name"/>
                    <field string="Description" name="desc"/>
                    <separator/>
                    <filter string="Archived" name="inactive" domain="[('active', '=', False)]"/>
                </search>
            </field>
        </record>

        <record model="ir.actions.act_window" id="action_accounting_assert">
            <field name="name">Accounting Tests</field>
            <field name="res_model">accounting.assert.test</field>
            <field name="view_mode">tree,form</field>
            <field name="search_view_id" ref="accounting_assert_test_view_search"/>
            <field name="help" type="html">
              <p class="o_view_nocontent_smiling_face">
                Create a new accounting test
              </p>
            </field>
        </record>

        <menuitem name="Accounting Tests" parent="account.menu_finance_reports" id="menu_action_license" action="action_accounting_assert" sequence="50" groups="base.group_no_one"/>

</odoo>