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.

218 lines
9.3 KiB

  1. <?xml version="1.0" encoding="utf-8" ?>
  2. <!-- Copyright 2020 Creu Blanca
  3. License AGPL-3.0 or later (http://www.gnu.org/licenses/agpl). -->
  4. <odoo>
  5. <record model="ir.actions.act_window" id="kpi_kpi_history_act_window">
  6. <field name="name">Kpi History</field>
  7. <field name="res_model">kpi.kpi.history</field>
  8. <field name="view_mode">tree</field>
  9. <field name="domain">[('kpi_id', '=', active_id)]</field>
  10. <field name="context">{}</field>
  11. </record>
  12. <record model="ir.ui.view" id="kpi_kpi_history_widget_form_view">
  13. <field name="name">kpi.kpi.history.raw.form (in kpi_dashboard)</field>
  14. <field name="model">kpi.kpi.history</field>
  15. <field name="arch" type="xml">
  16. <form>
  17. <field name="create_date" invisible="1" />
  18. <field name="widget" invisible="1" />
  19. <field name="name" invisible="1" />
  20. <field
  21. name="value"
  22. widget="kpi"
  23. options="{'date': 'create_date', 'widget': 'widget', 'name': 'name'}"
  24. />
  25. </form>
  26. </field>
  27. </record>
  28. <record model="ir.ui.view" id="kpi_kpi_history_raw_form_view">
  29. <field name="name">kpi.kpi.history.raw.form (in kpi_dashboard)</field>
  30. <field name="model">kpi.kpi.history</field>
  31. <field name="arch" type="xml">
  32. <form>
  33. <field name="raw_value" />
  34. </form>
  35. </field>
  36. </record>
  37. <record model="ir.ui.view" id="kpi_kpi_history_tree_view">
  38. <field name="name">kpi.kpi.history.tree (in kpi_dashboard)</field>
  39. <field name="model">kpi.kpi.history</field>
  40. <field name="arch" type="xml">
  41. <tree create="0" delete="0">
  42. <field name="create_date" />
  43. <button
  44. name="show_form"
  45. string="Show value"
  46. type="object"
  47. context="{'form_id': %(kpi_dashboard.kpi_kpi_history_widget_form_view)d}"
  48. />
  49. <button
  50. name="show_form"
  51. string="Raw value"
  52. type="object"
  53. context="{'form_id': %(kpi_dashboard.kpi_kpi_history_raw_form_view)d}"
  54. />
  55. </tree>
  56. </field>
  57. </record>
  58. <record model="ir.ui.view" id="kpi_kpi_form_view">
  59. <field name="name">kpi.kpi.form (in kpi_dashboard)</field>
  60. <field name="model">kpi.kpi</field>
  61. <field name="arch" type="xml">
  62. <form>
  63. <header>
  64. <button
  65. name="generate_cron"
  66. string="Generate cron"
  67. type="object"
  68. attrs="{'invisible': ['|', ('cron_id', '!=',False), ('compute_on_fly', '=', True)]}"
  69. />
  70. <button
  71. name="compute"
  72. string="Compute now"
  73. type="object"
  74. attrs="{'invisible': [('compute_on_fly', '=', True)]}"
  75. />
  76. </header>
  77. <sheet>
  78. <div class="oe_button_box" name="button_box">
  79. <button
  80. name="%(kpi_dashboard.kpi_kpi_history_act_window)d"
  81. string="Show history"
  82. type="action"
  83. attrs="{'invisible': ['|', ('store_history', '=', False), ('compute_on_fly', '=', True)]}"
  84. icon="fa-history"
  85. />
  86. <button
  87. string="Show value"
  88. type="object"
  89. name="show_value"
  90. icon="fa-paint-brush"
  91. />
  92. </div>
  93. <h2>
  94. <field name="name" />
  95. </h2>
  96. <group>
  97. <group>
  98. <field name="computation_method" />
  99. <field name="widget" />
  100. <field
  101. name="store_history"
  102. attrs="{'invisible': [('compute_on_fly', '=', True)]}"
  103. />
  104. <field
  105. name="store_history_interval"
  106. attrs="{'invisible': [('store_history', '=', False)]}"
  107. />
  108. <field
  109. name="store_history_interval_number"
  110. attrs="{'invisible': [('store_history', '=', False)]}"
  111. />
  112. <field
  113. name="compute_on_fly"
  114. attrs="{'invisible': [('store_history', '=', True)]}"
  115. />
  116. <field
  117. name="model_id"
  118. attrs="{'invisible': [('computation_method', '!=', 'function')]}"
  119. />
  120. <field
  121. name="function"
  122. attrs="{'required': [('computation_method', '=', 'function')], 'invisible': [('computation_method', '!=', 'function')]}"
  123. />
  124. <field
  125. name="args"
  126. attrs="{'invisible': [('computation_method', '!=', 'function')]}"
  127. />
  128. <field
  129. name="kwargs"
  130. attrs="{'invisible': [('computation_method', '!=', 'function')]}"
  131. />
  132. </group>
  133. <group>
  134. <field
  135. name="cron_id"
  136. attrs="{'invisible': [('cron_id', '=',False)]}"
  137. readonly="True"
  138. />
  139. </group>
  140. <group>
  141. <field name="suffix" />
  142. <field name="prefix" />
  143. </group>
  144. </group>
  145. <notebook>
  146. <page name="action" string="Actions">
  147. <field name="action_ids">
  148. <tree editable="bottom">
  149. <field name="action" />
  150. <field name="context" />
  151. </tree>
  152. </field>
  153. </page>
  154. <page
  155. name="code"
  156. string="Code"
  157. attrs="{'invisible': [('computation_method', '!=', 'code')]}"
  158. >
  159. <field
  160. name="code"
  161. widget="ace"
  162. options="{'mode': 'python'}"
  163. placeholder="Enter Python code here."
  164. />
  165. </page>
  166. </notebook>
  167. </sheet>
  168. </form>
  169. </field>
  170. </record>
  171. <record model="ir.ui.view" id="kpi_kpi_widget_form_view">
  172. <field name="name">kpi.kpi.raw.form (in kpi_dashboard)</field>
  173. <field name="model">kpi.kpi</field>
  174. <field name="arch" type="xml">
  175. <form>
  176. <field name="computed_date" invisible="1" />
  177. <field name="widget" invisible="1" />
  178. <field name="name" invisible="1" />
  179. <field
  180. name="computed_value"
  181. widget="kpi"
  182. options="{'date': 'computed_date', 'widget': 'widget', 'name': 'name'}"
  183. />
  184. </form>
  185. </field>
  186. </record>
  187. <record model="ir.ui.view" id="kpi_kpi_search_view">
  188. <field name="name">kpi.kpi.search (in kpi_dashboard)</field>
  189. <field name="model">kpi.kpi</field>
  190. <field name="arch" type="xml">
  191. <search>
  192. <field name="name" />
  193. </search>
  194. </field>
  195. </record>
  196. <record model="ir.ui.view" id="kpi_kpi_tree_view">
  197. <field name="name">kpi.kpi.tree (in kpi_dashboard)</field>
  198. <field name="model">kpi.kpi</field>
  199. <field name="arch" type="xml">
  200. <tree>
  201. <field name="name" />
  202. </tree>
  203. </field>
  204. </record>
  205. <record model="ir.actions.act_window" id="kpi_kpi_act_window">
  206. <field name="name">Kpi</field>
  207. <field name="res_model">kpi.kpi</field>
  208. <field name="view_mode">tree,form</field>
  209. <field name="domain">[]</field>
  210. <field name="context">{}</field>
  211. </record>
  212. <record model="ir.ui.menu" id="kpi_kpi_menu">
  213. <field name="name">Configure Kpi</field>
  214. <field name="parent_id" ref="menu_configuration_kpi_dashboards" />
  215. <field name="action" ref="kpi_kpi_act_window" />
  216. <field name="sequence" eval="20" />
  217. </record>
  218. </odoo>