3
.. i18n: --------------
9
.. i18n: A graph is a new mode of view for all views of type form. If, for example, a sale order line must be visible as list or as graph, define it like this in the action that open this sale order line. Do not set the view mode as "tree,form,graph" or "form,graph" - it must be "graph,tree" to show the graph first or "tree,graph" to show the list first. (This view mode is extra to your "form,tree" view and should have a seperate menu item):
12
A graph is a new mode of view for all views of type form. If, for example, a sale order line must be visible as list or as graph, define it like this in the action that open this sale order line. Do not set the view mode as "tree,form,graph" or "form,graph" - it must be "graph,tree" to show the graph first or "tree,graph" to show the list first. (This view mode is extra to your "form,tree" view and should have a seperate menu item):
14
.. i18n: .. code-block:: xml
16
.. i18n: <field name="view_type">form</field>
17
.. i18n: <field name="view_mode">tree,graph</field>
22
<field name="view_type">form</field>
23
<field name="view_mode">tree,graph</field>
27
.. i18n: tree = (tree with shortcuts at the left), form = (switchaable view form/list)
32
tree = (tree with shortcuts at the left), form = (switchaable view form/list)
36
.. i18n: tree,graph : sequences of the views when switching
41
tree,graph : sequences of the views when switching
43
.. i18n: Then, the user will be able to switch from one view to the other. Unlike forms and trees, OpenERP is not able to automatically create a view on demand for the graph type. So, you must define a view for this graph:
46
Then, the user will be able to switch from one view to the other. Unlike forms and trees, OpenERP is not able to automatically create a view on demand for the graph type. So, you must define a view for this graph:
48
.. i18n: .. code-block:: xml
50
.. i18n: <record model="ir.ui.view" id="view_order_line_graph">
51
.. i18n: <field name="name">sale.order.line.graph</field>
52
.. i18n: <field name="model">sale.order.line</field>
53
.. i18n: <field name="type">graph</field>
54
.. i18n: <field name="arch" type="xml">
55
.. i18n: <graph string="Sales Order Lines">
56
.. i18n: <field name="product_id" group="True"/>
57
.. i18n: <field name="price_unit" operator="*"/>
65
<record model="ir.ui.view" id="view_order_line_graph">
66
<field name="name">sale.order.line.graph</field>
67
<field name="model">sale.order.line</field>
68
<field name="type">graph</field>
69
<field name="arch" type="xml">
70
<graph string="Sales Order Lines">
71
<field name="product_id" group="True"/>
72
<field name="price_unit" operator="*"/>
77
.. i18n: The graph view
82
.. i18n: A view of type graph is just a list of fields for the graph.
85
A view of type graph is just a list of fields for the graph.
94
.. i18n: The default type of the graph is a pie chart - to change it to a barchart change **<graph string="Sales Order Lines">** to **<graph string="Sales Order Lines" type="bar">** You also may change the orientation.
97
The default type of the graph is a pie chart - to change it to a barchart change **<graph string="Sales Order Lines">** to **<graph string="Sales Order Lines" type="bar">** You also may change the orientation.
104
.. i18n: .. code-block:: xml
106
.. i18n: <graph string="Sales Order Lines" orientation="horizontal" type="bar">
111
<graph string="Sales Order Lines" orientation="horizontal" type="bar">
120
.. i18n: The first field is the X axis. The second one is the Y axis and the optional third one is the Z axis for 3 dimensional graphs. You can apply a few attributes to each field/axis:
123
The first field is the X axis. The second one is the Y axis and the optional third one is the Z axis for 3 dimensional graphs. You can apply a few attributes to each field/axis:
125
.. i18n: * **group**: if set to true, the client will group all item of the same value for this field. For each other field, it will apply an operator
126
.. i18n: * **operator**: the operator to apply is another field is grouped. By default it's '+'. Allowed values are:
129
* **group**: if set to true, the client will group all item of the same value for this field. For each other field, it will apply an operator
130
* **operator**: the operator to apply is another field is grouped. By default it's '+'. Allowed values are:
132
.. i18n: + +: addition
133
.. i18n: + \*: multiply
134
.. i18n: + \**: exponent
135
.. i18n: + min: minimum of the list
136
.. i18n: + max: maximum of the list
142
+ min: minimum of the list
143
+ max: maximum of the list
145
.. i18n: :Defining real statistics on objects:
148
:Defining real statistics on objects:
150
.. i18n: The easiest method to compute real statistics on objects is:
153
The easiest method to compute real statistics on objects is:
155
.. i18n: 1. Define a statistic object wich is a postgresql view
156
.. i18n: 2. Create a tree view and a graph view on this object
159
1. Define a statistic object wich is a postgresql view
160
2. Create a tree view and a graph view on this object
162
.. i18n: You can get en example in all modules of the form: report\_.... Example: report_crm.
165
You can get en example in all modules of the form: report\_.... Example: report_crm.