diff --git a/mgmtsystem_kpi/mgmtsystem_kpi.py b/mgmtsystem_kpi/mgmtsystem_kpi.py
index fdfac289c..5fe5d8c23 100644
--- a/mgmtsystem_kpi/mgmtsystem_kpi.py
+++ b/mgmtsystem_kpi/mgmtsystem_kpi.py
@@ -20,6 +20,7 @@
##############################################################################
from osv import fields, osv
+import time
class mgmtsystem_kpi_category(osv.osv):
"""
@@ -93,6 +94,27 @@ class mgmtsystem_kpi_periodicity_uom(osv.osv):
mgmtsystem_kpi_threshold()
+class mgmtsystem_kpi_history(osv.osv):
+ """
+ History of the KPI
+ """
+ _name = "mgmtsystem.kpi.history"
+ _description = "History of the KPI"
+
+ _columns = {
+ 'name': fields.char('Name', size=150, required=True),
+ 'kpi_id': fields.many2one('mgmtsystem.kpi', 'KPI', required=True),
+ 'date': fields.datetime('Execution Date', required=True, readonly=True),
+ 'value': fields.float('Value', required=True, readonly=True),
+ }
+
+ _defaults = {
+ 'name': lambda *a: time.strftime('%d %B %Y'),
+ 'date': lambda *a: time.strftime('%Y-%m-%d %H:%M:%S'),
+ }
+
+mgmtsystem_kpi_threshold()
+
class mgmtsystem_kpi(osv.osv):
"""
Key Performance Indicators
@@ -100,8 +122,13 @@ class mgmtsystem_kpi(osv.osv):
_name = "mgmtsystem.kpi"
_description = "Key Performance Indicator"
+ def _display_last_kpi_value(self, cr, uid, ids, field_name, arg, context=None):
+ result = {}
+
+ return result
+
def _compute_kpi_value(self, cr, uid, ids, field_name, arg, context=None):
- result= {}
+ result = {}
return result
@@ -112,8 +139,9 @@ class mgmtsystem_kpi(osv.osv):
'threshold_id': fields.many2one('mgmtsystem.kpi.threshold','Threshold', required=True),
'periodicity': fields.integer('Periodicity'),
'periodicity_uom': fields.many2one('mgmtsystem.kpi.periodicity.uom','Periodicity UoM', required=True),
- 'value': fields.function(_compute_kpi_value, string='Value', type='float'),
+ 'value': fields.function(_display_last_kpi_value, string='Value', type='float'),
'kpi_code': fields.text('KPI Computation Code'),
+ 'history_ids': fields.one2many('mgmtsystem.kpi.history', 'kpi_id', 'History')
}
mgmtsystem_kpi()
diff --git a/mgmtsystem_kpi/mgmtsystem_kpi.xml b/mgmtsystem_kpi/mgmtsystem_kpi.xml
index cf0086c6a..4ae37bd33 100644
--- a/mgmtsystem_kpi/mgmtsystem_kpi.xml
+++ b/mgmtsystem_kpi/mgmtsystem_kpi.xml
@@ -36,6 +36,8 @@
+
+
@@ -55,6 +57,21 @@
parent="mgmtsystem.menu_mgmtsystem_main"
groups="base.group_user"/>
+
+
+
+ mgmtsystem.kpi.history.tree
+ mgmtsystem.kpi.history
+ tree
+
+
+
+
+
+
+
+
+