kpi fix
This commit is contained in:
parent
093a0a47af
commit
fa01ac0106
|
|
@ -10,7 +10,6 @@
|
||||||
<field name="user_id" ref="base.user_root"/>
|
<field name="user_id" ref="base.user_root"/>
|
||||||
<field name="interval_number">8</field>
|
<field name="interval_number">8</field>
|
||||||
<field name="interval_type">hours</field>
|
<field name="interval_type">hours</field>
|
||||||
<field name="numbercall">-1</field>
|
|
||||||
</record>
|
</record>
|
||||||
</data>
|
</data>
|
||||||
</odoo>
|
</odoo>
|
||||||
|
|
|
||||||
|
|
@ -175,7 +175,7 @@ class kpi_category(models.Model):
|
||||||
"text": self.name,
|
"text": self.name,
|
||||||
"id": self.id,
|
"id": self.id,
|
||||||
}
|
}
|
||||||
if self._context.get("show_tooltip") and hasattr(self, "description") and self.description not in EMPTYHTML:
|
if self._context.get("show_tooltip") and hasattr(self, "description") :
|
||||||
res.update({"a_attr": {"kn_tip": self.description},})
|
res.update({"a_attr": {"kn_tip": self.description},})
|
||||||
child_res = []
|
child_res = []
|
||||||
for child in self.child_ids.sorted(lambda ch: ch.sequence):
|
for child in self.child_ids.sorted(lambda ch: ch.sequence):
|
||||||
|
|
|
||||||
|
|
@ -90,7 +90,7 @@ class kpi_scorecard_line(models.Model):
|
||||||
)
|
)
|
||||||
description = fields.Text(
|
description = fields.Text(
|
||||||
related="kpi_id.description",
|
related="kpi_id.description",
|
||||||
store=True,
|
|
||||||
)
|
)
|
||||||
period_id = fields.Many2one(
|
period_id = fields.Many2one(
|
||||||
"kpi.period",
|
"kpi.period",
|
||||||
|
|
|
||||||
|
|
@ -79,7 +79,7 @@
|
||||||
<field name="active"/>
|
<field name="active"/>
|
||||||
</group>
|
</group>
|
||||||
</page>
|
</page>
|
||||||
<page string="Help" attrs="{'invisible': [('help_notes', '=', False)]}">
|
<page string="Help" invisible="not help_notes">
|
||||||
<field name="kpi_help_dummy" invisible="1"/>
|
<field name="kpi_help_dummy" invisible="1"/>
|
||||||
<field name="help_notes"/>
|
<field name="help_notes"/>
|
||||||
</page>
|
</page>
|
||||||
|
|
@ -92,19 +92,19 @@
|
||||||
<field name="name">kpi.category.tree</field>
|
<field name="name">kpi.category.tree</field>
|
||||||
<field name="model">kpi.category</field>
|
<field name="model">kpi.category</field>
|
||||||
<field name="arch" type="xml">
|
<field name="arch" type="xml">
|
||||||
<tree>
|
<list>
|
||||||
<field name="sequence" widget="handle"/>
|
<field name="sequence" widget="handle"/>
|
||||||
<field name='name'/>
|
<field name='name'/>
|
||||||
<field name="parent_id"/>
|
<field name="parent_id"/>
|
||||||
<field name="active" invisible="1"/>
|
<field name="active" invisible="1"/>
|
||||||
</tree>
|
</list>
|
||||||
</field>
|
</field>
|
||||||
</record>
|
</record>
|
||||||
<record id="kpi_category_action" model="ir.actions.act_window">
|
<record id="kpi_category_action" model="ir.actions.act_window">
|
||||||
<field name="name">KPI Categories</field>
|
<field name="name">KPI Categories</field>
|
||||||
<field name="type">ir.actions.act_window</field>
|
<field name="type">ir.actions.act_window</field>
|
||||||
<field name="res_model">kpi.category</field>
|
<field name="res_model">kpi.category</field>
|
||||||
<field name="view_mode">tree,form</field>
|
<field name="view_mode">list,form</field>
|
||||||
<field name="search_view_id" eval="kpi_category_view_search"/>
|
<field name="search_view_id" eval="kpi_category_view_search"/>
|
||||||
</record>
|
</record>
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -41,10 +41,10 @@
|
||||||
<notebook>
|
<notebook>
|
||||||
<page string="By Periods">
|
<page string="By Periods">
|
||||||
<field name="periods_ids">
|
<field name="periods_ids">
|
||||||
<tree editable="top">
|
<list editable="top">
|
||||||
<field name="period_id" options="{'no_create_edit':1, 'no_quick_create': 1}"/>
|
<field name="period_id" options="{'no_create_edit':1, 'no_quick_create': 1}"/>
|
||||||
<field name="target_value"/>
|
<field name="target_value"/>
|
||||||
</tree>
|
</list>
|
||||||
</field>
|
</field>
|
||||||
</page>
|
</page>
|
||||||
<page string="Notes">
|
<page string="Notes">
|
||||||
|
|
@ -56,7 +56,7 @@
|
||||||
<field name="active"/>
|
<field name="active"/>
|
||||||
</group>
|
</group>
|
||||||
</page>
|
</page>
|
||||||
<page string="Help" attrs="{'invisible': [('help_notes', '=', False)]}">
|
<page string="Help" invisible="not help_notes">
|
||||||
<field name="kpi_help_dummy" invisible="1"/>
|
<field name="kpi_help_dummy" invisible="1"/>
|
||||||
<field name="help_notes"/>
|
<field name="help_notes"/>
|
||||||
</page>
|
</page>
|
||||||
|
|
@ -69,18 +69,18 @@
|
||||||
<field name="name">kpi.constant.tree</field>
|
<field name="name">kpi.constant.tree</field>
|
||||||
<field name="model">kpi.constant</field>
|
<field name="model">kpi.constant</field>
|
||||||
<field name="arch" type="xml">
|
<field name="arch" type="xml">
|
||||||
<tree>
|
<list>
|
||||||
<field name="sequence" widget="handle"/>
|
<field name="sequence" widget="handle"/>
|
||||||
<field name='name'/>
|
<field name='name'/>
|
||||||
<field name="active" invisible="1"/>
|
<field name="active" invisible="1"/>
|
||||||
</tree>
|
</list>
|
||||||
</field>
|
</field>
|
||||||
</record>
|
</record>
|
||||||
<record id="kpi_constant_action" model="ir.actions.act_window">
|
<record id="kpi_constant_action" model="ir.actions.act_window">
|
||||||
<field name="name">Constants</field>
|
<field name="name">Constants</field>
|
||||||
<field name="type">ir.actions.act_window</field>
|
<field name="type">ir.actions.act_window</field>
|
||||||
<field name="res_model">kpi.constant</field>
|
<field name="res_model">kpi.constant</field>
|
||||||
<field name="view_mode">tree,form</field>
|
<field name="view_mode">list,form</field>
|
||||||
<field name="search_view_id" eval="kpi_constant_view_search"/>
|
<field name="search_view_id" eval="kpi_constant_view_search"/>
|
||||||
<field name="help" type="html">
|
<field name="help" type="html">
|
||||||
<p class="oe_view_nocontent_create">
|
<p class="oe_view_nocontent_create">
|
||||||
|
|
|
||||||
|
|
@ -35,7 +35,7 @@
|
||||||
</h1>
|
</h1>
|
||||||
</div>
|
</div>
|
||||||
<h2 class="oe_read_only pull-right text-warning"
|
<h2 class="oe_read_only pull-right text-warning"
|
||||||
attrs="{'invisible': [('formula_warning', '=', False)]}"
|
invisible="not formula_warning "
|
||||||
>
|
>
|
||||||
<field name="formula_warning"/>
|
<field name="formula_warning"/>
|
||||||
</h2>
|
</h2>
|
||||||
|
|
@ -58,13 +58,13 @@
|
||||||
<field name="result_type"/>
|
<field name="result_type"/>
|
||||||
<field name="result_appearance"/>
|
<field name="result_appearance"/>
|
||||||
<field name="result_preffix"
|
<field name="result_preffix"
|
||||||
attrs="{'invisible': [('result_appearance', '=', 'monetory')]}"
|
invisible="result_appearance in [ 'monetory']"
|
||||||
/>
|
/>
|
||||||
<field name="result_suffix"
|
<field name="result_suffix"
|
||||||
attrs="{'invisible': [('result_appearance', '=', 'monetory')]}"
|
invisible="result_appearance in [ 'monetory']"
|
||||||
/>
|
/>
|
||||||
<field name="currency_id"
|
<field name="currency_id"
|
||||||
attrs="{'invisible': [('result_appearance', '!=', 'monetory')]}"
|
invisible="result_appearance not in [ 'monetory']"
|
||||||
/>
|
/>
|
||||||
<field name="result_rounding"/>
|
<field name="result_rounding"/>
|
||||||
</group>
|
</group>
|
||||||
|
|
@ -124,7 +124,7 @@
|
||||||
/>
|
/>
|
||||||
</group>
|
</group>
|
||||||
</page>
|
</page>
|
||||||
<page string="Help" attrs="{'invisible': [('help_notes', '=', False)]}">
|
<page string="Help" invisible="not help_notes">
|
||||||
<field name="kpi_help_dummy" invisible="1"/>
|
<field name="kpi_help_dummy" invisible="1"/>
|
||||||
<field name="help_notes"/>
|
<field name="help_notes"/>
|
||||||
</page>
|
</page>
|
||||||
|
|
@ -136,19 +136,19 @@
|
||||||
<field name="name">kpi.item.tree</field>
|
<field name="name">kpi.item.tree</field>
|
||||||
<field name="model">kpi.item</field>
|
<field name="model">kpi.item</field>
|
||||||
<field name="arch" type="xml">
|
<field name="arch" type="xml">
|
||||||
<tree decoration-warning="formula_warning != False">
|
<list decoration-warning="formula_warning != False">
|
||||||
<field name="sequence" widget="handle"/>
|
<field name="sequence" widget="handle"/>
|
||||||
<field name="name"/>
|
<field name="name"/>
|
||||||
<field name="active" invisible="1"/>
|
<field name="active" invisible="1"/>
|
||||||
<field name="formula_warning" invisible="0"/>
|
<field name="formula_warning" invisible="0"/>
|
||||||
</tree>
|
</list>
|
||||||
</field>
|
</field>
|
||||||
</record>
|
</record>
|
||||||
<record id="kpi_item_action" model="ir.actions.act_window">
|
<record id="kpi_item_action" model="ir.actions.act_window">
|
||||||
<field name="name">KPI</field>
|
<field name="name">KPI</field>
|
||||||
<field name="type">ir.actions.act_window</field>
|
<field name="type">ir.actions.act_window</field>
|
||||||
<field name="res_model">kpi.item</field>
|
<field name="res_model">kpi.item</field>
|
||||||
<field name="view_mode">tree,form</field>
|
<field name="view_mode">list,form</field>
|
||||||
<field name="search_view_id" eval="kpi_item_view_search"/>
|
<field name="search_view_id" eval="kpi_item_view_search"/>
|
||||||
<field name="help" type="html">
|
<field name="help" type="html">
|
||||||
<p class="oe_view_nocontent_create">
|
<p class="oe_view_nocontent_create">
|
||||||
|
|
|
||||||
|
|
@ -41,7 +41,7 @@
|
||||||
type="action"
|
type="action"
|
||||||
class="oe_stat_button"
|
class="oe_stat_button"
|
||||||
icon="fa-list"
|
icon="fa-list"
|
||||||
context="{'search_default_measure_id': active_id, 'default_measure_id': active_id}"
|
context="{'search_default_measure_id': id, 'default_measure_id': id}"
|
||||||
>
|
>
|
||||||
<field string="Measurements"
|
<field string="Measurements"
|
||||||
name="measures_len"
|
name="measures_len"
|
||||||
|
|
@ -61,7 +61,8 @@
|
||||||
<field name="measure_type"/>
|
<field name="measure_type"/>
|
||||||
</group>
|
</group>
|
||||||
<field name="py_code"
|
<field name="py_code"
|
||||||
attrs="{'invisible': [('measure_type', 'not in', ['py_code'])], 'required': [('measure_type', 'in', ['py_code'])]}"
|
invisible="measure_type != 'py_code'"
|
||||||
|
required="measure_type == 'py_code'"
|
||||||
widget="ace"
|
widget="ace"
|
||||||
options="{'mode': 'python'}"
|
options="{'mode': 'python'}"
|
||||||
/>
|
/>
|
||||||
|
|
@ -72,7 +73,7 @@
|
||||||
nolabel="1"
|
nolabel="1"
|
||||||
style="color:red;"
|
style="color:red;"
|
||||||
/>
|
/>
|
||||||
<group attrs="{'invisible': [('measure_type', 'not in', ['sum', 'average', 'count'])]}">
|
<group invisible="measure_type not in ['sum', 'average', 'count']">
|
||||||
<field name="model_id"
|
<field name="model_id"
|
||||||
options="{'no_create_edit': 1, 'no_quick_create': 1}"
|
options="{'no_create_edit': 1, 'no_quick_create': 1}"
|
||||||
/>
|
/>
|
||||||
|
|
@ -81,7 +82,9 @@
|
||||||
('model', '=', model_name),
|
('model', '=', model_name),
|
||||||
('ttype', 'in', ['integer', 'float', 'monetary']),
|
('ttype', 'in', ['integer', 'float', 'monetary']),
|
||||||
]"
|
]"
|
||||||
attrs="{'invisible':['|', ('model_id', '=', False), ('measure_type', '=', 'count')], 'required': [('measure_type', 'in', ['sum', 'average']), ('model_id', '!=', False)]}"
|
invisible="not model_id or measure_type == 'count'"
|
||||||
|
required="measure_type in ['sum', 'average'] and model_id"
|
||||||
|
|
||||||
options="{'no_create_edit': 1, 'no_quick_create': 1}"
|
options="{'no_create_edit': 1, 'no_quick_create': 1}"
|
||||||
/>
|
/>
|
||||||
<field name="date_field_ids"
|
<field name="date_field_ids"
|
||||||
|
|
@ -90,7 +93,7 @@
|
||||||
('ttype', 'in', ['date', 'datetime']),
|
('ttype', 'in', ['date', 'datetime']),
|
||||||
('store', '=', True),
|
('store', '=', True),
|
||||||
]"
|
]"
|
||||||
attrs="{'invisible': [('model_id', '=', False)]}"
|
invisible="not model_id"
|
||||||
options="{'no_create_edit': 1, 'no_quick_create': 1}"
|
options="{'no_create_edit': 1, 'no_quick_create': 1}"
|
||||||
widget="many2many_tags"
|
widget="many2many_tags"
|
||||||
/>
|
/>
|
||||||
|
|
@ -100,13 +103,13 @@
|
||||||
('ttype', 'in', ['many2one']),
|
('ttype', 'in', ['many2one']),
|
||||||
('relation', '=', 'res.company'),
|
('relation', '=', 'res.company'),
|
||||||
]"
|
]"
|
||||||
attrs="{'invisible':[('model_id', '=', False)]}"
|
invisible="not model_id"
|
||||||
options="{'no_create_edit': 1, 'no_quick_create': 1}"
|
options="{'no_create_edit': 1, 'no_quick_create': 1}"
|
||||||
/>
|
/>
|
||||||
<field name="domain"
|
<field name="domain"
|
||||||
widget="domain"
|
widget="domain"
|
||||||
options="{'model': 'model_name'}"
|
options="{'model': 'model_name'}"
|
||||||
attrs="{'invisible': ['|', ('model_id', '=', False), ('measure_type', 'not in', ['sum', 'average', 'count'])]}"
|
invisible="not model_id or measure_type not in ['sum', 'average', 'count']"
|
||||||
style="min-height:200px !important;"
|
style="min-height:200px !important;"
|
||||||
/>
|
/>
|
||||||
</group>
|
</group>
|
||||||
|
|
@ -119,21 +122,21 @@
|
||||||
<group>
|
<group>
|
||||||
<field name="sequence"/>
|
<field name="sequence"/>
|
||||||
</group>
|
</group>
|
||||||
<group attrs="{'invisible': [('measure_type', 'not in', ['sum', 'average', 'count'])]}">
|
<group invisible="measure_type not in ['sum', 'average', 'count']">
|
||||||
<field name="model_name"
|
<field name="model_name"
|
||||||
readonly="1"
|
readonly="1"
|
||||||
/>
|
/>
|
||||||
<field name="measure_field_name"
|
<field name="measure_field_name"
|
||||||
readonly="1"
|
readonly="1"
|
||||||
attrs="{'invisible':['|', ('model_name', '=', False), ('measure_type', '=', 'count')]}"
|
invisible="not model_name or measure_type == 'count'"
|
||||||
/>
|
/>
|
||||||
<field name="date_field_name"
|
<field name="date_field_name"
|
||||||
readonly="1"
|
readonly="1"
|
||||||
attrs="{'invisible': [('model_name', '=', False)]}"
|
invisible="not model_name"
|
||||||
/>
|
/>
|
||||||
<field name="company_field_name"
|
<field name="company_field_name"
|
||||||
readonly="1"
|
readonly="1"
|
||||||
attrs="{'invisible': [('model_name', '=', False)]}"
|
invisible="not model_name"
|
||||||
/>
|
/>
|
||||||
</group>
|
</group>
|
||||||
</group>
|
</group>
|
||||||
|
|
@ -141,7 +144,7 @@
|
||||||
<field name="active"/>
|
<field name="active"/>
|
||||||
</group>
|
</group>
|
||||||
</page>
|
</page>
|
||||||
<page string="Help" attrs="{'invisible': [('help_notes', '=', False)]}">
|
<page string="Help" invisible="not help_notes">
|
||||||
<field name="kpi_help_dummy" invisible="1"/>
|
<field name="kpi_help_dummy" invisible="1"/>
|
||||||
<field name="help_notes"/>
|
<field name="help_notes"/>
|
||||||
</page>
|
</page>
|
||||||
|
|
@ -154,21 +157,21 @@
|
||||||
<field name="name">kpi.measure.tree</field>
|
<field name="name">kpi.measure.tree</field>
|
||||||
<field name="model">kpi.measure</field>
|
<field name="model">kpi.measure</field>
|
||||||
<field name="arch" type="xml">
|
<field name="arch" type="xml">
|
||||||
<tree decoration-muted="existing_kpi != False">
|
<list decoration-muted="existing_kpi != False">
|
||||||
<field name="sequence" widget="handle"/>
|
<field name="sequence" widget="handle"/>
|
||||||
<field name='name'/>
|
<field name='name'/>
|
||||||
<field name='model_name'/>
|
<field name='model_name'/>
|
||||||
<field name='measure_type'/>
|
<field name='measure_type'/>
|
||||||
<field name="active" invisible="1"/>
|
<field name="active" invisible="1"/>
|
||||||
<field name="existing_kpi" invisible="1"/>
|
<field name="existing_kpi" invisible="1"/>
|
||||||
</tree>
|
</list>
|
||||||
</field>
|
</field>
|
||||||
</record>
|
</record>
|
||||||
<record id="kpi_measure_action" model="ir.actions.act_window">
|
<record id="kpi_measure_action" model="ir.actions.act_window">
|
||||||
<field name="name">Basic Measurements</field>
|
<field name="name">Basic Measurements</field>
|
||||||
<field name="type">ir.actions.act_window</field>
|
<field name="type">ir.actions.act_window</field>
|
||||||
<field name="res_model">kpi.measure</field>
|
<field name="res_model">kpi.measure</field>
|
||||||
<field name="view_mode">tree,form</field>
|
<field name="view_mode">list,form</field>
|
||||||
<field name="search_view_id" eval="kpi_measure_view_search"/>
|
<field name="search_view_id" eval="kpi_measure_view_search"/>
|
||||||
<field name="context">{'search_default_installed_kpis': 1}</field>
|
<field name="context">{'search_default_installed_kpis': 1}</field>
|
||||||
<field name="help" type="html">
|
<field name="help" type="html">
|
||||||
|
|
|
||||||
|
|
@ -53,7 +53,8 @@
|
||||||
widget="domain"
|
widget="domain"
|
||||||
options="{'model': 'model_name'}"
|
options="{'model': 'model_name'}"
|
||||||
style="min-height:200px !important;"
|
style="min-height:200px !important;"
|
||||||
attrs="{'invisible': ['|', ('model_name', '=', False), ('measure_type', 'not in', ['sum', 'average', 'count'])]}"
|
invisible="not model_name or measure_type not in ['sum', 'average', 'count']"
|
||||||
|
|
||||||
/>
|
/>
|
||||||
</group>
|
</group>
|
||||||
<notebook>
|
<notebook>
|
||||||
|
|
@ -68,7 +69,7 @@
|
||||||
<field name="measure_type" invisible="1"/>
|
<field name="measure_type" invisible="1"/>
|
||||||
</group>
|
</group>
|
||||||
</page>
|
</page>
|
||||||
<page string="Help" attrs="{'invisible': [('help_notes', '=', False)]}">
|
<page string="Help" invisible="not help_notes" >
|
||||||
<field name="kpi_help_dummy" invisible="1"/>
|
<field name="kpi_help_dummy" invisible="1"/>
|
||||||
<field name="help_notes"/>
|
<field name="help_notes"/>
|
||||||
</page>
|
</page>
|
||||||
|
|
@ -81,19 +82,19 @@
|
||||||
<field name="name">kpi.measure.item.tree</field>
|
<field name="name">kpi.measure.item.tree</field>
|
||||||
<field name="model">kpi.measure.item</field>
|
<field name="model">kpi.measure.item</field>
|
||||||
<field name="arch" type="xml">
|
<field name="arch" type="xml">
|
||||||
<tree>
|
<list>
|
||||||
<field name="sequence" widget="handle"/>
|
<field name="sequence" widget="handle"/>
|
||||||
<field name='name'/>
|
<field name='name'/>
|
||||||
<field name="measure_id"/>
|
<field name="measure_id"/>
|
||||||
<field name="active" invisible="1"/>
|
<field name="active" invisible="1"/>
|
||||||
</tree>
|
</list>
|
||||||
</field>
|
</field>
|
||||||
</record>
|
</record>
|
||||||
<record id="kpi_measure_item_action" model="ir.actions.act_window">
|
<record id="kpi_measure_item_action" model="ir.actions.act_window">
|
||||||
<field name="name">Measurements (Variables)</field>
|
<field name="name">Measurements (Variables)</field>
|
||||||
<field name="type">ir.actions.act_window</field>
|
<field name="type">ir.actions.act_window</field>
|
||||||
<field name="res_model">kpi.measure.item</field>
|
<field name="res_model">kpi.measure.item</field>
|
||||||
<field name="view_mode">tree,form</field>
|
<field name="view_mode">list,form</field>
|
||||||
<field name="search_view_id" eval="kpi_measure_item_view_search"/>
|
<field name="search_view_id" eval="kpi_measure_item_view_search"/>
|
||||||
<field name="domain">[('existing_kpi', '!=', False)]</field>
|
<field name="domain">[('existing_kpi', '!=', False)]</field>
|
||||||
<field name="help" type="html">
|
<field name="help" type="html">
|
||||||
|
|
|
||||||
|
|
@ -45,7 +45,7 @@
|
||||||
type="object"
|
type="object"
|
||||||
class="oe_stat_button"
|
class="oe_stat_button"
|
||||||
icon="fa-stop"
|
icon="fa-stop"
|
||||||
attrs="{'invisible': [('state', 'not in', ['open'])]}"
|
invisible="state not in ['open']"
|
||||||
>
|
>
|
||||||
Close Period
|
Close Period
|
||||||
</button>
|
</button>
|
||||||
|
|
@ -53,7 +53,7 @@
|
||||||
type="object"
|
type="object"
|
||||||
class="oe_stat_button"
|
class="oe_stat_button"
|
||||||
icon="fa-refresh"
|
icon="fa-refresh"
|
||||||
attrs="{'invisible': [('state', 'not in', ['closed'])]}"
|
invisible="state not in ['closed']"
|
||||||
>
|
>
|
||||||
Re-Open Period
|
Re-Open Period
|
||||||
</button>
|
</button>
|
||||||
|
|
@ -61,8 +61,9 @@
|
||||||
type="action"
|
type="action"
|
||||||
class="oe_stat_button"
|
class="oe_stat_button"
|
||||||
icon="fa-exchange"
|
icon="fa-exchange"
|
||||||
attrs="{'invisible': [('state', 'not in', ['open'])]}"
|
invisible="state not in ['open']"
|
||||||
context="{'default_period_id': active_id}"
|
|
||||||
|
context="{'default_period_id': id}"
|
||||||
>
|
>
|
||||||
Substitute Targets
|
Substitute Targets
|
||||||
</button>
|
</button>
|
||||||
|
|
@ -80,11 +81,12 @@
|
||||||
<div>
|
<div>
|
||||||
<field name="date_start"
|
<field name="date_start"
|
||||||
class="oe_inline"
|
class="oe_inline"
|
||||||
attrs="{'readonly': [('state', 'not in', 'open')]}"
|
readonly="state not in ['open']"
|
||||||
|
|
||||||
/> to
|
/> to
|
||||||
<field name="date_end"
|
<field name="date_end"
|
||||||
class="oe_inline"
|
class="oe_inline"
|
||||||
attrs="{'readonly': [('state', 'not in', 'open')]}"
|
readonly="state not in ['open']"
|
||||||
/>
|
/>
|
||||||
</div>
|
</div>
|
||||||
<field name="template_id"
|
<field name="template_id"
|
||||||
|
|
@ -99,12 +101,13 @@
|
||||||
<notebook invisible="context.get('quick_kpi_period')">
|
<notebook invisible="context.get('quick_kpi_period')">
|
||||||
<page string="Targets">
|
<page string="Targets">
|
||||||
<field name="line_ids"
|
<field name="line_ids"
|
||||||
attrs="{'readonly': [('state', 'not in', 'open')]}"
|
readonly="state not in ['open']"
|
||||||
|
|
||||||
>
|
>
|
||||||
<tree editable="bottom">
|
<list editable="bottom">
|
||||||
<field name="kpi_id"/>
|
<field name="kpi_id"/>
|
||||||
<field name="target_value"/>
|
<field name="target_value"/>
|
||||||
</tree>
|
</list>
|
||||||
</field>
|
</field>
|
||||||
</page>
|
</page>
|
||||||
<page string="Misc">
|
<page string="Misc">
|
||||||
|
|
@ -114,7 +117,7 @@
|
||||||
/>
|
/>
|
||||||
</group>
|
</group>
|
||||||
</page>
|
</page>
|
||||||
<page string="Help" attrs="{'invisible': [('help_notes', '=', False)]}">
|
<page string="Help" invisible="not help_notes">
|
||||||
<field name="kpi_help_dummy" invisible="1"/>
|
<field name="kpi_help_dummy" invisible="1"/>
|
||||||
<field name="help_notes"/>
|
<field name="help_notes"/>
|
||||||
</page>
|
</page>
|
||||||
|
|
@ -127,19 +130,19 @@
|
||||||
<field name="name">kpi.period.tree</field>
|
<field name="name">kpi.period.tree</field>
|
||||||
<field name="model">kpi.period</field>
|
<field name="model">kpi.period</field>
|
||||||
<field name="arch" type="xml">
|
<field name="arch" type="xml">
|
||||||
<tree decoration-muted="state == 'closed'">
|
<list decoration-muted="state == 'closed'">
|
||||||
<field name="name"/>
|
<field name="name"/>
|
||||||
<field name="date_start"/>
|
<field name="date_start"/>
|
||||||
<field name="date_end"/>
|
<field name="date_end"/>
|
||||||
<field name="state"/>
|
<field name="state"/>
|
||||||
</tree>
|
</list>
|
||||||
</field>
|
</field>
|
||||||
</record>
|
</record>
|
||||||
<record id="kpi_period_action" model="ir.actions.act_window">
|
<record id="kpi_period_action" model="ir.actions.act_window">
|
||||||
<field name="name">Periods</field>
|
<field name="name">Periods</field>
|
||||||
<field name="type">ir.actions.act_window</field>
|
<field name="type">ir.actions.act_window</field>
|
||||||
<field name="res_model">kpi.period</field>
|
<field name="res_model">kpi.period</field>
|
||||||
<field name="view_mode">tree,form</field>
|
<field name="view_mode">list,form</field>
|
||||||
<field name="search_view_id" eval="kpi_period_view_search"/>
|
<field name="search_view_id" eval="kpi_period_view_search"/>
|
||||||
<field name="context">{'search_default_open_periods': 1}</field>
|
<field name="context">{'search_default_open_periods': 1}</field>
|
||||||
<field name="help" type="html">
|
<field name="help" type="html">
|
||||||
|
|
|
||||||
|
|
@ -36,7 +36,7 @@
|
||||||
invisible="1"
|
invisible="1"
|
||||||
/>
|
/>
|
||||||
</group>
|
</group>
|
||||||
<div attrs="{'invisible': [('help_notes', '=', False)]}">
|
<div invisible="not help_notes">
|
||||||
<field name="kpi_help_dummy" invisible="1"/>
|
<field name="kpi_help_dummy" invisible="1"/>
|
||||||
<label for="help_notes" invisible="1"/>
|
<label for="help_notes" invisible="1"/>
|
||||||
<field name="help_notes"/>
|
<field name="help_notes"/>
|
||||||
|
|
@ -49,7 +49,7 @@
|
||||||
<field name="name">kpi.scorecard.line.kanban</field>
|
<field name="name">kpi.scorecard.line.kanban</field>
|
||||||
<field name="model">kpi.scorecard.line</field>
|
<field name="model">kpi.scorecard.line</field>
|
||||||
<field name="arch" type="xml">
|
<field name="arch" type="xml">
|
||||||
<kanban js_class="scorecard_kanban"
|
<kanban
|
||||||
class="kpi-kanban-view"
|
class="kpi-kanban-view"
|
||||||
group_create="0"
|
group_create="0"
|
||||||
group_delete="0"
|
group_delete="0"
|
||||||
|
|
|
||||||
|
|
@ -6,7 +6,7 @@
|
||||||
<field name="model">res.config.settings</field>
|
<field name="model">res.config.settings</field>
|
||||||
<field name="inherit_id" ref="base.res_config_settings_view_form"/>
|
<field name="inherit_id" ref="base.res_config_settings_view_form"/>
|
||||||
<field name="arch" type="xml">
|
<field name="arch" type="xml">
|
||||||
<xpath expr="//div[hasclass('settings')]" position="inside">
|
<xpath expr="//form" position="inside">
|
||||||
<div class="app_settings_block"
|
<div class="app_settings_block"
|
||||||
data-string="KPI Scorecard"
|
data-string="KPI Scorecard"
|
||||||
string="KPI Scorecard"
|
string="KPI Scorecard"
|
||||||
|
|
|
||||||
|
|
@ -1,16 +1,16 @@
|
||||||
<odoo>
|
<odoo>
|
||||||
|
|
||||||
<template id="assets_backend" name="list asssets" inherit_id="web.assets_backend">
|
<!-- <template id="assets_backend" name="list asssets" inherit_id="web.assets_backend">-->
|
||||||
<xpath expr="." position="inside">
|
<!-- <xpath expr="." position="inside">-->
|
||||||
<!-- Formula -->
|
<!-- <!– Formula –>-->
|
||||||
<script type="text/javascript" src="/kpi_scorecard/static/src/js/kpi_formula.js"/>
|
<!-- <script type="text/javascript" src="/kpi_scorecard/static/src/js/kpi_formula.js"/>-->
|
||||||
<link type="text/css" rel='stylesheet' href='/kpi_scorecard/static/src/css/kpi_widgets.css'/>
|
<!-- <link type="text/css" rel='stylesheet' href='/kpi_scorecard/static/src/css/kpi_widgets.css'/>-->
|
||||||
<!-- Kanban -->
|
<!-- <!– Kanban –>-->
|
||||||
<script type="text/javascript" src="/kpi_scorecard/static/src/js/scorecard_kanbancontroller.js"/>
|
<!-- <script type="text/javascript" src="/kpi_scorecard/static/src/js/scorecard_kanbancontroller.js"/>-->
|
||||||
<script type="text/javascript" src="/kpi_scorecard/static/src/js/scorecard_kanbanmodel.js"/>
|
<!-- <script type="text/javascript" src="/kpi_scorecard/static/src/js/scorecard_kanbanmodel.js"/>-->
|
||||||
<script type="text/javascript" src="/kpi_scorecard/static/src/js/scorecard_kanbanview.js"/>
|
<!-- <script type="text/javascript" src="/kpi_scorecard/static/src/js/scorecard_kanbanview.js"/>-->
|
||||||
<link type="text/css" rel='stylesheet' href='/kpi_scorecard/static/src/css/kpi_kanban.css'/>
|
<!-- <link type="text/css" rel='stylesheet' href='/kpi_scorecard/static/src/css/kpi_kanban.css'/>-->
|
||||||
</xpath>
|
<!-- </xpath>-->
|
||||||
</template>
|
<!-- </template>-->
|
||||||
|
|
||||||
</odoo>
|
</odoo>
|
||||||
|
|
|
||||||
|
|
@ -13,7 +13,7 @@
|
||||||
options="{'no_create_edit': 1, 'no_quick_create': 1}"
|
options="{'no_create_edit': 1, 'no_quick_create': 1}"
|
||||||
/>
|
/>
|
||||||
</group>
|
</group>
|
||||||
<div attrs="{'invisible': [('help_notes', '=', False)]}">
|
<div invisible="not help_notes">
|
||||||
<field name="kpi_help_dummy" invisible="1"/>
|
<field name="kpi_help_dummy" invisible="1"/>
|
||||||
<label for="help_notes" invisible="1"/>
|
<label for="help_notes" invisible="1"/>
|
||||||
<field name="help_notes"/>
|
<field name="help_notes"/>
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue