OCA reporting engine fork for dev and update.
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

201 lines
7.8 KiB

  1. <?xml version="1.0" encoding="UTF-8" ?>
  2. <odoo>
  3. <record id="demo_dashboard" model="kpi.dashboard">
  4. <field name="name">Dashboard</field>
  5. <field name="number_of_columns">4</field>
  6. <field name="widget_dimension_y">50</field>
  7. <field name="widget_dimension_x">250</field>
  8. <field name="background_color">#020202</field>
  9. <field name="compute_on_fly_refresh">30</field>
  10. </record>
  11. <record id="widget_number_01" model="kpi.kpi">
  12. <field name="name">Number 01</field>
  13. <field name="prefix">$</field>
  14. <field name="computation_method">code</field>
  15. <field name="widget">number</field>
  16. <field name="code">result = {"value": 10000,"previous": 12000}</field>
  17. </record>
  18. <record id="widget_number_02" model="kpi.kpi">
  19. <field name="name">Number 02</field>
  20. <field name="suffix"></field>
  21. <field name="computation_method">code</field>
  22. <field name="widget">number</field>
  23. <field name="code">result = {"value": 12000,"previous": 10000}</field>
  24. </record>
  25. <function
  26. model="kpi.kpi"
  27. name="compute"
  28. eval="[[ref('widget_number_01'), ref('widget_number_02')]]"
  29. />
  30. <record id="widget_meter_01" model="kpi.kpi">
  31. <field name="name">Meter 01</field>
  32. <field name="suffix"></field>
  33. <field name="computation_method">code</field>
  34. <field name="widget">meter</field>
  35. <field name="code">result = {"min": 0, "max": 100, "value": 90}</field>
  36. </record>
  37. <record id="widget_meter_02" model="kpi.kpi">
  38. <field name="name">Meter 02</field>
  39. <field name="prefix">$</field>
  40. <field name="computation_method">code</field>
  41. <field name="widget">meter</field>
  42. <field name="code">result = {"min": 0, "max": 100, "value": 40}</field>
  43. </record>
  44. <function
  45. model="kpi.kpi"
  46. name="compute"
  47. eval="[[ref('widget_meter_01'), ref('widget_meter_02')]]"
  48. />
  49. <record id="widget_graph" model="kpi.kpi">
  50. <field name="name">Graph</field>
  51. <field name="computation_method">code</field>
  52. <field name="widget">graph</field>
  53. <field
  54. name="code"
  55. ><![CDATA[
  56. result = {"graphs": [
  57. {
  58. "values": [
  59. {"x": i, "y": i * 1000}
  60. for i in range(1, 12)
  61. ],
  62. "title": "Current Year",
  63. "key": "current",
  64. "area": True,
  65. "color": "ffffff",
  66. },
  67. {
  68. "values": [
  69. {"x": i, "y": 1000 * (12-i)}
  70. for i in range(1, 12)
  71. ],
  72. "title": "Previous Year",
  73. "key": "previous",
  74. "area": True,
  75. "color": "000000",
  76. },
  77. ]}
  78. ]]></field>
  79. </record>
  80. <function model="kpi.kpi" name="compute" eval="[[ref('widget_graph')]]" />
  81. <record id="widget_integer" model="kpi.kpi">
  82. <field name="name">Integer counter</field>
  83. <field name="computation_method">code</field>
  84. <field name="widget">integer</field>
  85. <field name="compute_on_fly" eval="True" />
  86. <field
  87. name="code"
  88. ><![CDATA[
  89. result = {"value": self.env.context.get('counter', 990)}
  90. ]]></field>
  91. </record>
  92. <record id="widget_counter" model="kpi.kpi">
  93. <field name="name">Counter</field>
  94. <field name="computation_method">code</field>
  95. <field name="widget">counter</field>
  96. <field name="compute_on_fly" eval="True" />
  97. <field
  98. name="code"
  99. ><![CDATA[
  100. result = {"value": self.env.context.get('counter', 990)}
  101. ]]></field>
  102. </record>
  103. <record id="dashboard_widget_text" model="kpi.dashboard.item">
  104. <field name="name">Dashboard title</field>
  105. <field name="dashboard_id" ref="demo_dashboard" />
  106. <field name="column">1</field>
  107. <field name="row">1</field>
  108. <field name="size_x">4</field>
  109. <field name="color">#707070</field>
  110. <field name="font_color">#000000</field>
  111. </record>
  112. <record id="dashboard_widget_number_01" model="kpi.dashboard.item">
  113. <field name="name">Number 01</field>
  114. <field name="dashboard_id" ref="demo_dashboard" />
  115. <field name="kpi_id" ref="widget_number_01" />
  116. <field name="column">1</field>
  117. <field name="row">2</field>
  118. <field name="size_y">4</field>
  119. <field name="color">#47bbb3</field>
  120. <field name="font_color">#ffffff</field>
  121. </record>
  122. <record id="dashboard_widget_number_02" model="kpi.dashboard.item">
  123. <field name="name">Number 02</field>
  124. <field name="dashboard_id" ref="demo_dashboard" />
  125. <field name="kpi_id" ref="widget_number_02" />
  126. <field name="column">1</field>
  127. <field name="row">6</field>
  128. <field name="size_y">4</field>
  129. <field name="color">#ec663c</field>
  130. <field name="font_color">#ffffff</field>
  131. </record>
  132. <record id="dashboard_widget_meter_01" model="kpi.dashboard.item">
  133. <field name="name">Meter 01</field>
  134. <field name="dashboard_id" ref="demo_dashboard" />
  135. <field name="kpi_id" ref="widget_meter_01" />
  136. <field name="column">2</field>
  137. <field name="row">2</field>
  138. <field name="size_y">4</field>
  139. <field name="color">#9c4274</field>
  140. <field name="font_color">#ffffff</field>
  141. </record>
  142. <record id="dashboard_widget_meter_02" model="kpi.dashboard.item">
  143. <field name="name">Meter 02</field>
  144. <field name="dashboard_id" ref="demo_dashboard" />
  145. <field name="kpi_id" ref="widget_meter_02" />
  146. <field name="column">2</field>
  147. <field name="row">6</field>
  148. <field name="size_y">4</field>
  149. <field name="color">#12b0c5</field>
  150. <field name="font_color">#ffffff</field>
  151. </record>
  152. <record id="dashboard_widget_add_counter" model="kpi.dashboard.item">
  153. <field name="name">+1 to Counter</field>
  154. <field name="dashboard_id" ref="demo_dashboard" />
  155. <field name="column">3</field>
  156. <field name="row">10</field>
  157. <field name="size_y">1</field>
  158. <field name="size_x">2</field>
  159. <field name="color">#B41F1F</field>
  160. <field name="font_color">#EEBF77</field>
  161. <field name="modify_context" eval="True" />
  162. <field name="modify_context_expression">
  163. {'counter': (context.counter or 990) + 1}
  164. </field>
  165. <field name="modify_color" eval="True" />
  166. <field name="modify_color_expression">
  167. check_if(((context.counter or 990) + 1) % 2, '#ff0000', '#00ff00')
  168. </field>
  169. </record>
  170. <record id="dashboard_widget_counter" model="kpi.dashboard.item">
  171. <field name="name">Counter</field>
  172. <field name="dashboard_id" ref="demo_dashboard" />
  173. <field name="kpi_id" ref="widget_counter" />
  174. <field name="column">3</field>
  175. <field name="row">11</field>
  176. <field name="size_y">3</field>
  177. <field name="color">#4B0082</field>
  178. <field name="font_color">#ffffff</field>
  179. </record>
  180. <record id="dashboard_widget_integer" model="kpi.dashboard.item">
  181. <field name="name">Integer</field>
  182. <field name="dashboard_id" ref="demo_dashboard" />
  183. <field name="kpi_id" ref="widget_integer" />
  184. <field name="column">4</field>
  185. <field name="row">11</field>
  186. <field name="size_y">3</field>
  187. <field name="color">#ffffff</field>
  188. <field name="font_color">#4B0082</field>
  189. </record>
  190. <record id="dashboard_widget_graph" model="kpi.dashboard.item">
  191. <field name="name">Graph</field>
  192. <field name="dashboard_id" ref="demo_dashboard" />
  193. <field name="kpi_id" ref="widget_graph" />
  194. <field name="column">3</field>
  195. <field name="row">2</field>
  196. <field name="size_x">2</field>
  197. <field name="size_y">8</field>
  198. <field name="color">#ff9618</field>
  199. <field name="font_color">#ffffff</field>
  200. </record>
  201. </odoo>