[ADD] stock_mrp_kit_product_short_availability

This commit is contained in:
Renzo Meister
2020-11-03 16:59:00 +01:00
parent 7106bebf24
commit c319dd7c87
470 changed files with 87638 additions and 0 deletions

View File

@@ -0,0 +1,35 @@
<odoo>
<data>
<record model="ir.ui.view" id="ks_dashboard_ninja_action">
<field name="name">ks_dashboard_ninja_item action</field>
<field name="model">ks_ninja_dashboard.item_action</field>
<field name="arch" type="xml">
<form string="Dashboard Item Action">
<group>
<group>
<field name="ks_dashboard_item_ids" invisible="1"/>
<field name="ks_dashboard_item" invisible='1'/>
<field name="ks_dashboard_ninja_id"
options="{'no_create': True, 'no_create_edit':True, 'no_open': True}"
attrs="{'required' :[('ks_action','=','move')],'invisible':[('ks_action','=','duplicate')]}"/>
<field name="ks_dashboard_ninja_ids"
options="{'no_create': True, 'no_create_edit':True, 'no_open': True}"
attrs="{'required' :[('ks_action','=','duplicate')],'invisible':[('ks_action','=','move')]}"
widget="many2many_tags"/>
</group>
<group>
<field name="ks_action" required="1"/>
</group>
</group>
<footer>
<button string='Save' name="action_item_move_copy_action" type="object" class="btn-primary"/>
<button string="Cancel" class="btn-secondary" special="cancel"/>
</footer>
</form>
</field>
</record>
</data>
</odoo>

View File

@@ -0,0 +1,36 @@
<?xml version="1.0" encoding="utf-8"?>
<odoo>
<template id="assets_backend" name="Ks MyDashboard assets" inherit_id="web.assets_backend">
<xpath expr="." position="inside">
<link rel="stylesheet" href="/ks_dashboard_ninja/static/src/css/ks_dashboard_ninja.css"/>
<link rel="stylesheet" href="/ks_dashboard_ninja/static/src/css/ks_dashboard_ninja_item.css"/>
<link rel="stylesheet" href="/ks_dashboard_ninja/static/src/css/ks_icon_container_modal.css"/>
<link rel="stylesheet" href="/ks_dashboard_ninja/static/src/css/ks_dashboard_item_theme.css"/>
<link rel="stylesheet" href="/ks_dashboard_ninja/static/src/css/ks_toggle_icon.css"/>
<link rel="stylesheet" href="/ks_dashboard_ninja/static/src/css/ks_dashboard_options.css"/>
<link rel="stylesheet" href="/ks_dashboard_ninja/static/src/less/ks_dn_grid_stack.less"/>
<script type="text/javascript" src="/ks_dashboard_ninja/static/src/js/ks_dashboard_ninja.js"/>
<script type="text/javascript" src="/ks_dashboard_ninja/static/src/js/ks_color_picker.js"/>
<script type="text/javascript" src="/ks_dashboard_ninja/static/src/js/ks_dashboard_ninja_item_preview.js"/>
<script type="text/javascript" src="/ks_dashboard_ninja/static/src/js/ks_image_basic_widget.js"/>
<script type="text/javascript" src="/ks_dashboard_ninja/static/src/js/ks_dashboard_item_theme.js"/>
<script type="text/javascript" src="/ks_dashboard_ninja/static/src/js/ks_dashboard_ninja_kpi_preview.js"/>
<script type="text/javascript" src="/ks_dashboard_ninja/static/src/js/ks_import_dashboard.js"/>
<script type="text/javascript" src="/ks_dashboard_ninja/static/src/js/ks_domain_fix.js"/>
<script type="text/javascript" src="/ks_dashboard_ninja/static/src/js/ks_widget_toggle.js"/>
<script type="text/javascript" src="/ks_dashboard_ninja/static/src/js/ks_quick_edit_view.js"/>
<script type="text/javascript" src="/ks_dashboard_ninja/static/src/js/ks_global_functions.js"/>
<script type="text/javascript" src="/ks_dashboard_ninja/static/lib/js/gridstack.min.js"/>
<script type="text/javascript" src="/ks_dashboard_ninja/static/lib/js/gridstack.jQueryUI.min.js"/>
<!-- for some reason gridstack css is not laoding from the js. #FIXME-->
<link rel="stylesheet" href="/ks_dashboard_ninja/static/lib/css/gridstack.min.css"/>
<link rel="stylesheet" href="/ks_dashboard_ninja/static/src/css/ks_dashboard_ninja_pro.css"/>
<link rel="stylesheet" href="/ks_dashboard_ninja/static/src/css/ks_dashboard_gridstack.css"/>
<script type="text/javascript"
src="/ks_dashboard_ninja/static/src/js/ks_dashboard_ninja_graph_preview.js"/>
<script type="text/javascript"
src="/ks_dashboard_ninja/static/src/js/ks_dashboard_ninja_list_view_preview.js"/>
</xpath>
</template>
</odoo>

View File

@@ -0,0 +1,518 @@
<odoo>
<data>
<!--Tree View Dashboard Items-->
<record model="ir.ui.view" id="ks_dashboard_ninja.item">
<field name="name">Dashboard Items</field>
<field name="model">ks_dashboard_ninja.item</field>
<field name="arch" type="xml">
<tree create="false" >
<field name="id"/>
<field name="name"/>
<field name="ks_dashboard_ninja_board_id" string="Dashboard"/>
<field name="ks_dashboard_item_type"/>
<field name="ks_model_id"/>
<field name="ks_date_filter_field"/>
<field name="ks_date_filter_selection"/>
<field name="ks_item_start_date"/>
<field name="ks_item_end_date"/>
<field name="ks_compare_period"/>
<field name="ks_year_period"/>
<field name="ks_update_items_data"/>
</tree>
</field>
</record>
<record model="ir.ui.view" id="ks_dashboard_ninja.item_quick_edit_form_view">
<field name="name">ks_dashboard_ninja_item form</field>
<field name="model">ks_dashboard_ninja.item</field>
<field name="priority">20</field>
<field name="arch" type="xml">
<form create="false" delete="false" class="ks_qe_form_view">
<field name="ks_chart_data" invisible="1"/>
<field name="ks_kpi_data" invisible="1"/>
<field name="ks_domain_extension" invisible="1"/>
<field name="ks_model_id_2" invisible="1"/>
<field name="ks_sort_by_field" invisible="1"/>
<field name="ks_chart_measure_field" invisible="1"/>
<field name="ks_chart_measure_field_2" invisible="1"/>
<field name="ks_sort_by_order" invisible="1"/>
<field name="ks_chart_relation_sub_groupby" invisible="1"/>
<field name="ks_chart_date_sub_groupby" invisible="1"/>
<field name="ks_default_icon_color" invisible="1"/>
<field name="ks_default_icon" invisible="1"/>
<field name="ks_date_filter_field" invisible="1"/>
<field name="ks_domain_temp" invisible="1"/>
<field name="ks_font_color" invisible="1"/>
<field name="ks_date_filter_field" invisible="1"/>
<field name="ks_many2many_field_ordering" invisible="1"/>
<field name="ks_background_color" invisible="1"/>
<field name="ks_icon" invisible="1"/>
<field name="ks_icon_select" invisible="1"/>
<field name="ks_list_view_data" invisible="1"/>
<field name="ks_model_name" invisible="1"/>
<field name="ks_goal_enable" invisible="1"/>
<field name="ks_target_view" invisible="1"/>
<field name="ks_previous_period" invisible="1"/>
<field name="ks_date_filter_selection" invisible="1"/>
<field name="ks_data_comparison" invisible="1"/>
<field name="ks_standard_goal_value" invisible="1"/>
<field name="ks_goal_lines" invisible="1"/>
<field name="ks_goal_bar_line" invisible="1"/>
<field name="ks_kpi_type" invisible="1"/>
<field name="ks_kpi_preview" invisible="1"/>
<field name="ks_date_filter_selection_2" invisible="1"/>
<field name="ks_domain_2" invisible="1"/>
<field name="ks_item_start_date_2" invisible="1"/>
<field name="ks_item_end_date_2" invisible="1"/>
<field name="ks_date_filter_field_2" invisible="1"/>
<field name="ks_item_start_date" invisible="1"/>
<field name="ks_item_end_date" invisible="1"/>
<field name="ks_record_field_2" invisible="1"/>
<field name="ks_record_count_type_2" invisible="1"/>
<field name="ks_model_name_2" invisible="1"/>
<field name="ks_actions" invisible="1"/>
<field name="ks_model_id_2" invisible="1"/>
<field name="ks_action_lines" invisible="1"/>
<label for="name" class="oe_edit_only"/>
<field name="name" placeholder="Name..."/>
<label for="ks_model_id" class="oe_edit_only"/>
<field class="ks_display" name="ks_model_id" placeholder="Model..."
options="{'no_create': True, 'no_create_edit':True, 'no_open': True, 'limit': 10}"/>
<field name="ks_dashboard_item_type" invisible="1"/>
<label for="ks_update_items_data" class="oe_edit_only"/>
<field name="ks_update_items_data" placeholder="Item Update Interval.."/>
<div name="chart_settings" attrs="{'invisible':[('ks_dashboard_item_type','!=','ks_tile'),('ks_dashboard_item_type','!=','ks_kpi')]}">
<label for="ks_record_count_type" class="oe_edit_only"
attrs="{'invisible':[('ks_model_id','=',False)]}"/>
<field name="ks_record_count_type"
attrs="{'invisible':[('ks_model_id','=',False)],
'required':[('ks_model_id','!=',False),'|',('ks_dashboard_item_type','=','ks_tile'),('ks_dashboard_item_type','=','ks_kpi')]}"/>
<label for="ks_record_field" class="oe_edit_only"
attrs="{'invisible':[('ks_record_count_type','=','count'),'|',('ks_dashboard_item_type','!=','ks_kpi'),('ks_dashboard_item_type','!=','ks_tile')]}"/>
<field name="ks_record_field"
options="{'no_create': True, 'no_create_edit':True, 'no_open': True}"
attrs="{'invisible':[('ks_record_count_type','=','count'),'|',('ks_dashboard_item_type','!=','ks_kpi'),('ks_dashboard_item_type','!=','ks_tile')],
'required':['|',('ks_dashboard_item_type','=','ks_kpi'),('ks_record_count_type','!=','count'),('ks_dashboard_item_type','=','ks_tile')]}"/>
<label for="ks_record_count" class="oe_edit_only"
attrs="{'invisible':['|',('ks_dashboard_item_type','!=','ks_tile'),('ks_model_id','=',False)]}"/>
<field name="ks_record_count" class="ks_display"
string="Record Value"
attrs="{'invisible':['|',('ks_dashboard_item_type','!=','ks_tile'),('ks_model_id','=',False)]}"/>
<label for="ks_dashboard_item_theme" class="oe_edit_only ks_display"
attrs="{'invisible':[('ks_dashboard_item_type','!=','ks_tile')]}"/>
<field name="ks_dashboard_item_theme" widget="ks_dashboard_item_theme" class="ks_display"
attrs="{'invisible':[('ks_dashboard_item_type','!=','ks_tile')]}"/>
</div>
<div attrs="{'invisible':[('ks_dashboard_item_type','!=','ks_tile')]}">
<label for="ks_layout" class="oe_edit_only ks_display"
attrs="{'invisible':[('ks_dashboard_item_type','!=','ks_tile')]}"/>
<field name="ks_layout" class="ks_display"
attrs="{'invisible':[('ks_dashboard_item_type','!=','ks_tile')]}"/>
</div>
<div name="list_view_fields" attrs="{'invisible':[('ks_dashboard_item_type','!=','ks_list_view')]}">
<label for="ks_list_view_type" class="oe_edit_only"
attrs="{'invisible':[('ks_dashboard_item_type','!=','ks_list_view')]}"/>
<field name="ks_list_view_type" attrs="{'invisible':[('ks_dashboard_item_type','!=','ks_list_view')],
'required':[('ks_dashboard_item_type','=','ks_list_view')]}"/>
<label for="ks_list_view_fields" class="oe_edit_only"
attrs="{'invisible':[('ks_list_view_type','!=','ungrouped')],'required':[('ks_dashboard_item_type','=','ks_list_view'),('ks_list_view_type','=','ungrouped')]}"/>
<field name="ks_list_view_fields" string="Fields to show in list"
widget='many2many_tags' style="width: -webkit-fill-available;"
options="{'no_create': True, 'no_create_edit':True, 'no_open': True}"
attrs="{'invisible':[('ks_list_view_type','!=','ungrouped')],'required':[('ks_dashboard_item_type','=','ks_list_view'),('ks_list_view_type','=','ungrouped')]}"/>
<label for="ks_list_view_group_fields" class="oe_edit_only"
attrs="{'invisible':['|',('ks_dashboard_item_type','!=','ks_list_view'),('ks_list_view_type','!=','grouped')],'required':[('ks_dashboard_item_type','=','ks_list_view'),('ks_list_view_type','=','grouped')]}"/>
<field name="ks_list_view_group_fields" string="Fields to show in list"
widget='many2many_tags'
options="{'no_create': True, 'no_create_edit':True, 'no_open': True}"
attrs="{'invisible':['|',('ks_dashboard_item_type','!=','ks_list_view'),('ks_list_view_type','!=','grouped')],'required':[('ks_dashboard_item_type','=','ks_list_view'),('ks_list_view_type','=','grouped')]}"/>
</div>
<div attrs="{'invisible':['|','|',('ks_dashboard_item_type','=','ks_tile'),('ks_dashboard_item_type','=','ks_kpi'),('ks_dashboard_item_type','=','ks_list_view')]}">
<label for="ks_chart_data_count_type" class="oe_edit_only"
attrs="{'invisible':['|','|',('ks_model_id','=',False),('ks_dashboard_item_type','=','ks_tile'),('ks_dashboard_item_type','=','ks_list_view')]}"/>
<field name="ks_chart_data_count_type" string="Data Type" class="ks_display" attrs="{'invisible':['|','|',('ks_model_id','=',False),('ks_dashboard_item_type','=','ks_list_view')],
'required':[('ks_dashboard_item_type','!=','ks_tile'),('ks_dashboard_item_type','!=','ks_list_view')]}"/>
<label for="ks_chart_measure_field" class="oe_edit_only" string="Measures"
attrs="{'invisible':['|','|','|',('ks_dashboard_item_type','=','ks_tile'),('ks_chart_data_count_type','=','count'),('ks_model_id','=',False),('ks_dashboard_item_type','=','ks_list_view')]}"/>
<field name="ks_chart_measure_field" string="Measures" widget='many2many_tags'
style="display:flex;"
options="{'no_create': True, 'no_create_edit':True, 'no_open': True}"
attrs="{'invisible':['|','|','|',('ks_dashboard_item_type','=','ks_tile'),('ks_chart_data_count_type','=','count'),('ks_model_id','=',False),('ks_dashboard_item_type','=','ks_list_view')],'required':[('ks_dashboard_item_type','!=','ks_tile'),('ks_dashboard_item_type','!=','ks_kpi'),('ks_dashboard_item_type','!=','ks_list_view'),('ks_chart_data_count_type','!=','count')]}"/>
<label for="ks_chart_measure_field_2" class="oe_edit_only " string="Line Measure"
attrs="{'invisible':['|','|','|',('ks_chart_data_count_type','=','count'),('ks_model_id','=',False),('ks_dashboard_item_type','=','ks_list_view'),('ks_dashboard_item_type','!=','ks_bar_chart')]}"/>
<field name="ks_chart_measure_field_2" string="Line Measure" widget='many2many_tags'
style="display:flex;"
options="{'no_create': True, 'no_create_edit':True, 'no_open': True}"
attrs="{'invisible':['|','|','|',('ks_chart_data_count_type','=','count'),('ks_model_id','=',False),('ks_dashboard_item_type','=','ks_list_view'),('ks_dashboard_item_type','!=','ks_bar_chart')]}"/>
</div>
<div name="groups_dimension" attrs="{'invisible':['|',('ks_dashboard_item_type','=','ks_tile'),('ks_dashboard_item_type','=','ks_kpi')]}">
<field name="ks_chart_groupby_type" invisible="1"/>
<label for="ks_chart_relation_groupby" class="oe_edit_only"
attrs="{'invisible':['|',('ks_model_id','=',False),('ks_dashboard_item_type','=','ks_list_view'),('ks_list_view_type','=','ungrouped')],'required':[('ks_dashboard_item_type','!=','ks_tile'),('ks_dashboard_item_type','!=','ks_kpi'),'|',('ks_dashboard_item_type','!=','ks_list_view'),('ks_list_view_type','=','grouped')]}"/>
<field name="ks_chart_relation_groupby" string="Group By" style="display:inline;"
options="{'no_create': True, 'no_create_edit':True, 'no_open': True}"
attrs="{'invisible':['|',('ks_model_id','=',False),('ks_dashboard_item_type','=','ks_list_view'),('ks_list_view_type','=','ungrouped')],'required':[('ks_dashboard_item_type','!=','ks_tile'),('ks_dashboard_item_type','!=','ks_kpi'),'|',('ks_dashboard_item_type','!=','ks_list_view'),('ks_list_view_type','=','grouped')]}"/>
<label for="ks_chart_date_groupby" class="oe_edit_only"
attrs="{'invisible':['|',('ks_chart_groupby_type','!=','date_type'),'&amp;',('ks_dashboard_item_type','=','ks_list_view'),('ks_list_view_type','=','ungrouped')],'required':[('ks_dashboard_item_type','!=','ks_tile'),('ks_dashboard_item_type','!=','ks_kpi'),('ks_chart_groupby_type','=','date_type')]}"/>
<field name="ks_chart_date_groupby" string="Group By Date"
attrs="{'invisible':['|',('ks_chart_groupby_type','!=','date_type'),'&amp;',('ks_dashboard_item_type','=','ks_list_view'),('ks_list_view_type','=','ungrouped')],'required':[('ks_dashboard_item_type','!=','ks_tile'),('ks_dashboard_item_type','!=','ks_kpi'),('ks_chart_groupby_type','=','date_type')]}"/>
</div>
</form>
</field>
</record>
<record model="ir.ui.view" id="ks_dashboard_ninja.item_form_view">
<field name="name">ks_dashboard_ninja_item form</field>
<field name="model">ks_dashboard_ninja.item</field>
<field name="priority">10</field>
<field name="arch" type="xml">
<form create="false" delete="false">
<group>
<group>
<field name="ks_chart_data" invisible="1"/>
<field name="ks_list_view_data" invisible="1"/>
<field name="ks_model_name" invisible="1"/>
<field name="ks_domain_temp" invisible="1"/>
<field name="ks_kpi_data" invisible="1"/>
<field name="name"/>
<field name="ks_model_id"
options="{'no_create': True, 'no_create_edit':True, 'no_open': True}"
context="{'current_id': id}"/>
<field name="ks_company_id"
options="{'no_create': True, 'no_create_edit':True, 'no_open': True}"/>
<field name="ks_dashboard_item_type" string="Type" context="{'current_id': id}"/>
<field name="ks_update_items_data"/>
<field name="ks_bar_chart_stacked" string="Stacked Bar Chart"
context="{'current_id': id}"
attrs="{'invisible':[('ks_dashboard_item_type','!=','ks_bar_chart'),('ks_dashboard_item_type','!=','ks_horizontalBar_chart')]}"/>
<field name="ks_show_records"/>
<field name="ks_hide_legend" context="{'current_id': id}" attrs="{'invisible':[('ks_dashboard_item_type','in',['ks_tile', 'ks_kpi', 'ks_list_view'])]}"/>
<field name="ks_semi_circle_chart"
context="{'current_id': id}"
attrs="{'invisible':['|','|','|',('ks_chart_data_count_type','=','count'),('ks_model_id','=',False),('ks_dashboard_item_type','=','ks_list_view'),('ks_dashboard_item_type','!=','ks_doughnut_chart'),('ks_dashboard_item_type','!=','ks_pie_chart')]}"/>
</group>
<div>
<field name="ks_preview" widget="ks_dashboard_item_preview"
attrs="{'invisible':[('ks_dashboard_item_type','!=','ks_tile')]}"
class="oe_horizontal_separator oe_clear"/>
<field name="ks_graph_preview"
class="ks_dn_graph_preview oe_horizontal_separator oe_clear"
widget="ks_dashboard_graph_preview"
attrs="{'invisible':['|','|',('ks_dashboard_item_type','=','ks_tile'),('ks_dashboard_item_type','=','ks_list_view'),('ks_dashboard_item_type','=','ks_kpi')]}"/>
<field name="ks_list_view_preview"
class="ks_dn_graph_preview oe_horizontal_separator oe_clear"
widget="ks_dashboard_list_view_preview"
attrs="{'invisible':[('ks_dashboard_item_type','!=','ks_list_view')]}"/>
<field name="ks_kpi_preview"
widget="ks_dashboard_kpi_preview"
attrs="{'invisible' : [('ks_dashboard_item_type','!=','ks_kpi')]}"/>
</div>
</group>
<notebook>
<page string="Data" name="data_sets">
<group>
<group attrs="{'invisible':[('ks_dashboard_item_type','!=','ks_tile'),('ks_dashboard_item_type','!=','ks_kpi')]}">
<field name="ks_record_count_type"
attrs="{'invisible':['|',('ks_model_id','=',False)],
'required':[('ks_model_id','!=',False),'|',('ks_dashboard_item_type','=','ks_tile'),('ks_dashboard_item_type','=','ks_kpi')]}"/>
<field name="ks_record_field"
options="{'no_create': True, 'no_create_edit':True, 'no_open': True}"
attrs="{'invisible':[('ks_record_count_type','=','count'),'|',('ks_dashboard_item_type','!=','ks_kpi'),('ks_dashboard_item_type','!=','ks_tile')],
'required':[('ks_record_count_type','!=','count'),'|',('ks_dashboard_item_type','=','ks_kpi'),('ks_dashboard_item_type','=','ks_tile')]}"/>
<field name="ks_record_count" string="Record Value"/>
<field name="ks_previous_period"
attrs="{'invisible' : ['|','|',('ks_model_id_2','!=', False),('ks_dashboard_item_type','!=','ks_kpi'), ('ks_date_filter_selection', 'not in',['l_none', 'l_day', 't_week','t_month','t_quarter','t_year'])]}"/>
</group>
<group attrs="{'invisible':['|',('ks_dashboard_item_type','=','ks_tile'),('ks_dashboard_item_type','=','ks_kpi')]}">
<field name="ks_chart_measure_field" string="Measures" widget='many2many_tags'
options="{'no_create': True, 'no_create_edit':True, 'no_open': True}"
context="{'current_id': id}"
attrs="{'invisible':['|','|',('ks_chart_data_count_type','=','count'),('ks_model_id','=',False),('ks_dashboard_item_type','=','ks_list_view')],'required':[('ks_dashboard_item_type','!=','ks_kpi'),('ks_dashboard_item_type','!=','ks_tile'),('ks_dashboard_item_type','!=','ks_list_view'),('ks_chart_data_count_type','!=','count')]}"/>
<field name="ks_chart_measure_field_2" string="Line Measure"
widget='many2many_tags'
options="{'no_create': True, 'no_create_edit':True, 'no_open': True}"
context="{'current_id': id}"
attrs="{'invisible':['|','|','|',('ks_chart_data_count_type','=','count'),('ks_model_id','=',False),('ks_dashboard_item_type','=','ks_list_view'),('ks_dashboard_item_type','!=','ks_bar_chart')]}"/>
<field name="ks_list_view_type" attrs="{'invisible':[('ks_dashboard_item_type','!=','ks_list_view')],
'required':[('ks_dashboard_item_type','=','ks_list_view')]}"/>
<field name="ks_many2many_field_ordering" invisible="1"/>
<field name="ks_list_view_fields" string="Fields to show in list"
widget='many2many_tags'
options="{'no_create': True, 'no_create_edit':True, 'no_open': True}"
attrs="{'invisible':['|',('ks_dashboard_item_type','!=','ks_list_view'),('ks_list_view_type','!=','ungrouped')],'required':[('ks_dashboard_item_type','=','ks_list_view'),('ks_list_view_type','=','ungrouped')]}"/>
<field name="ks_list_view_group_fields" string="Fields to show in list"
widget='many2many_tags'
options="{'no_create': True, 'no_create_edit':True, 'no_open': True}"
attrs="{'invisible':['|',('ks_dashboard_item_type','!=','ks_list_view'),('ks_list_view_type','!=','grouped')],'required':[('ks_dashboard_item_type','=','ks_list_view'),('ks_list_view_type','=','grouped')]}"/>
<field name="ks_list_target_deviation_field" string="Deviation Field"
options="{'no_create': True, 'no_create_edit':True, 'no_open': True}"
context="{'current_id': id}"
attrs="{'invisible':['|','|','|',('ks_dashboard_item_type','!=','ks_list_view'),('ks_list_view_type','!=','grouped'),('ks_goal_enable','=',False),('ks_chart_groupby_type','!=','date_type')]}"/>
</group>
<group>
<field name="ks_chart_data_count_type" string="Data Type" context="{'current_id': id}"
attrs="{'invisible':['|','|','|',('ks_model_id','=',False),('ks_dashboard_item_type','=','ks_tile'),('ks_dashboard_item_type','=','ks_list_view'),('ks_dashboard_item_type','=','ks_kpi')],
'required':[('ks_dashboard_item_type','!=','ks_kpi'),('ks_dashboard_item_type','!=','ks_tile'),('ks_dashboard_item_type','!=','ks_list_view')]}"/>
</group>
</group>
<group>
<group string="Groups/Dimensions" name="group_dimension"
attrs="{'invisible':['|',('ks_dashboard_item_type','=','ks_tile'),('ks_dashboard_item_type','=','ks_kpi')]}">
<field name="ks_chart_groupby_type" invisible="1"/>
<field name="ks_chart_sub_groupby_type" invisible="1"/>
<field name="ks_chart_relation_groupby" string="Group By"
context="{'current_id': id}"
options="{'no_create': True, 'no_create_edit':True, 'no_open': True}"
attrs="{'invisible':['|',('ks_model_id','=',False),('ks_dashboard_item_type','=','ks_list_view'),('ks_list_view_type','=','ungrouped')],'required':[('ks_dashboard_item_type','!=','ks_kpi'),('ks_dashboard_item_type','!=','ks_tile'),'|',('ks_dashboard_item_type','!=','ks_list_view'),('ks_list_view_type','=','grouped')]}"/>
<field name="ks_chart_date_groupby" string="Group By Date"
context="{'current_id': id}"
attrs="{'invisible':['|','&amp;',('ks_dashboard_item_type','=','ks_list_view'),('ks_list_view_type','=','ungrouped'),('ks_chart_groupby_type','!=','date_type')],'required':[('ks_chart_groupby_type','=','date_type'),'|','&amp;',('ks_dashboard_item_type','=','ks_list_view'),('ks_list_view_type','=','grouped'),'&amp;','&amp;',('ks_dashboard_item_type','!=','ks_kpi'),('ks_dashboard_item_type','!=','ks_tile'),('ks_dashboard_item_type','!=','ks_list_view')]}"/>
<field name="ks_chart_relation_sub_groupby"
options="{'no_create': True, 'no_create_edit':True, 'no_open': True}"
attrs="{'invisible':['|','|',('ks_model_id','=',False),('ks_dashboard_item_type','=','ks_list_view'),'|',('ks_chart_relation_groupby','=',False),'&amp;',('ks_chart_groupby_type','=','date_type'),('ks_chart_date_groupby','=',False)]}"
/>
<field name="ks_chart_date_sub_groupby" string="Sub Group By Date"
attrs="{'invisible':['|','|',('ks_chart_sub_groupby_type','!=','date_type'),('ks_dashboard_item_type','=','ks_list_view'),('ks_chart_relation_sub_groupby','=',False)],'required':[('ks_dashboard_item_type','!=','ks_tile'),('ks_chart_sub_groupby_type','=','date_type'),('ks_chart_relation_sub_groupby','!=',False)]}"/>
<field name="ks_sort_by_field" context="{'current_id': id}"
options="{'no_create': True, 'no_create_edit':True, 'no_open': True}"
attrs="{'invisible':['|','|',('ks_chart_data_count_type','=','count'),('ks_chart_relation_sub_groupby','!=',False),'&amp;',('ks_goal_lines','!=',[]),('ks_goal_enable','=',True)]}"/>
<field name="ks_sort_by_order" context="{'current_id': id}"
attrs="{'invisible':['|',('ks_chart_relation_sub_groupby','!=',False),'&amp;',('ks_goal_lines','!=',[]),('ks_goal_enable','=',True)]}"/>
<field name="ks_record_data_limit" context="{'current_id': id}"
/>
</group>
<group string="Filter">
<field name="ks_domain" widget="domain" class="ks_domain_content"
context="{'current_id': id}"
options="{'model': 'ks_model_name', 'in_dialog': True}"/>
<field name="ks_domain_extension"/>
<field name="ks_date_filter_field" context="{'current_id': id}"
options="{'no_create': True, 'no_create_edit':True, 'no_open': True}"
attrs="{'invisible':[('ks_model_id','=',False)]}"/>
<field name="ks_date_filter_selection"
attrs="{'invisible':[('ks_model_id','=',False)]}"/>
<field name="ks_item_start_date"
attrs="{'invisible':['|',('ks_model_id','=',False),('ks_date_filter_selection','!=','l_custom')], 'required':[('ks_model_id','!=',False),('ks_date_filter_selection','=','l_custom')]}"/>
<field name="ks_item_end_date"
attrs="{'invisible':['|',('ks_model_id','=',False),('ks_date_filter_selection','!=','l_custom')], 'required':[('ks_model_id','!=',False),('ks_date_filter_selection','=','l_custom')]}"/>
<field name="ks_compare_period"
attrs="{'invisible':['|',('ks_model_id','=',False),('ks_date_filter_selection','in',['ls_past_until_now', 'ls_pastwithout_now', 'n_future_starting_now', 'n_futurestarting_tomorrow','l_none', 'l_custom'])]}"/>
<field name="ks_year_period"
attrs="{'invisible':['|',('ks_model_id','=',False),('ks_date_filter_selection','in',['ls_past_until_now', 'ls_pastwithout_now', 'n_future_starting_now', 'n_futurestarting_tomorrow','l_none', 'l_custom'])]}"/>
</group>
</group>
</page>
<page string="Data #2" name="data_model_2"
attrs="{'invisible':[('ks_dashboard_item_type','!=','ks_kpi')]}">
<group>
<group>
<field name="ks_model_name_2" invisible="1"/>
<field name="ks_model_id_2"
options="{'no_create': True, 'no_create_edit':True, 'no_open': True}"
context="{'current_id': id}"/>
<field name="ks_record_count_type_2"
attrs="{'invisible' : [('ks_model_id_2','=', False)],
'required' : [('ks_model_id_2','!=', False)]}"
context="{'current_id': id}"/>
<field name="ks_record_field_2"
attrs="{'invisible' : ['|',('ks_model_id_2','=', False),('ks_record_count_type_2','=','count')],
'required' : [('ks_model_id_2','!=', False),('ks_record_count_type_2','!=','count')]}"
options="{'no_create': True, 'no_create_edit':True, 'no_open': True}"
context="{'current_id': id}"/>
<field name="ks_record_count_2"
string="Record Value" force_save="True"/>
<field name="ks_data_comparison" widget="ks_widget_toggle_kpi"
string="Data Calculation"
attrs="{'invisible' : ['|',('ks_dashboard_item_type','!=','ks_kpi'),('ks_model_id_2','=',False)]}"/>
</group>
</group>
<group>
<group string="Filter">
<field name="ks_domain_2" widget="domain" class="ks_domain_content"
context="{'current_id': id}"
options="{'model': 'ks_model_name_2', 'in_dialog': True}"/>
<field name="ks_domain_extension_2" string="Domain Extension"/>
<field name="ks_date_filter_field_2" context="{'current_id': id}"
options="{'no_create': True, 'no_create_edit':True, 'no_open': True}"
attrs="{'invisible':[('ks_model_id_2','=',False)]}"/>
<field name="ks_date_filter_selection_2"
attrs="{'invisible':[('ks_model_id_2','=',False)]}"/>
<field name="ks_item_start_date_2"
attrs="{'invisible':['|',('ks_model_id_2','=',False),('ks_date_filter_selection_2','!=','l_custom')], 'required':[('ks_model_id_2','!=',False),('ks_date_filter_selection_2','=','l_custom')]}"/>
<field name="ks_item_end_date_2"
attrs="{'invisible':['|',('ks_model_id_2','=',False),('ks_date_filter_selection_2','!=','l_custom')], 'required':[('ks_model_id_2','!=',False),('ks_date_filter_selection_2','=','l_custom')]}"/>
<field name="ks_compare_period_2" string="Include Period"
attrs="{'invisible':['|',('ks_model_id_2','=',False),('ks_date_filter_selection_2','in',['ls_past_until_now', 'ls_pastwithout_now', 'n_future_starting_now', 'n_futurestarting_tomorrow','l_none', 'l_custom'])]}"/>
<field name="ks_year_period_2" string="Same Period Previous Years"
attrs="{'invisible':['|',('ks_model_id_2','=',False),('ks_date_filter_selection_2','in',['ls_past_until_now', 'ls_pastwithout_now', 'n_future_starting_now', 'n_futurestarting_tomorrow','l_none', 'l_custom'])]}"/>
</group>
</group>
</page>
<page string="Display" name="display_settings"
attrs="{'invisible':[('ks_dashboard_item_type','=','ks_list_view')]}">
<group>
<group attrs="{'invisible':[('ks_dashboard_item_type','!=','ks_tile'),('ks_dashboard_item_type','!=','ks_kpi')]}">
<field name="ks_layout"
attrs="{'invisible':[('ks_dashboard_item_type','!=','ks_tile')]}"/>
<field name="ks_dashboard_item_theme" widget="ks_dashboard_item_theme"/>
<field name="ks_background_color" widget="ks_color_dashboard_picker"
/>
<field name="ks_font_color" widget="ks_color_dashboard_picker"
/>
<field name="ks_icon_select" widget="ks_widget_toggle"/>
<field name="ks_icon" widget="image" class="ks_item_icon"
attrs="{'invisible':[('ks_icon_select','=','Default')]}"/>
<field name="ks_default_icon" widget="ks_image_widget" class="ks_item_icon"
attrs="{'invisible':[('ks_icon_select','=','Custom')]}"/>
<field name="ks_default_icon_color" widget="ks_color_dashboard_picker"
attrs="{'invisible':['|',('ks_icon_select','=','Custom'),('ks_default_icon','=',False)]}"/>
</group>
<group attrs="{'invisible':['|','|',('ks_dashboard_item_type','=','ks_tile'),('ks_dashboard_item_type','=','ks_list_view'),('ks_dashboard_item_type','=','ks_kpi')]}">
<field name="ks_chart_item_color" string="Chart Color Palette"
context="{'current_id': id}"
attrs="{'required':[('ks_dashboard_item_type','!=','ks_tile'),('ks_dashboard_item_type','!=','ks_list_view'),('ks_dashboard_item_type','!=','ks_kpi')]}"/>
<field name="ks_show_data_value"/>
<field name="ks_unit"/>
<field name="ks_unit_selection" attrs="{'invisible':[('ks_unit','=',False)],
'required':[('ks_unit','=',True)]}"/>
<field name="ks_chart_unit" attrs="{'invisible':['|',('ks_unit_selection','!=','custom'),('ks_unit','=',False)],
'required':[('ks_unit_selection','=','custom')]}"/>
</group>
</group>
</page>
<page string="Actions" name="action_settings"
attrs="{'invisible':['&amp;',('ks_list_view_type','=','ungrouped'),('ks_dashboard_item_type','=','ks_list_view')]}">
<field name="ks_action_lines" required="1"
attrs="{'invisible':[('ks_dashboard_item_type','not in',['ks_bar_chart','ks_horizontalBar_chart','ks_line_chart','ks_area_chart','ks_pie_chart','ks_doughnut_chart','ks_polarArea_chart','ks_list_view'])]}">
<tree editable="bottom">
<field name="sequence" widget="handle"/>
<field name="ks_item_action_field" required="1"
options="{'no_create': True, 'no_create_edit':True, 'no_open': True}"/>
<field name="ks_item_action_date_groupby" force_save="1" attrs="{'required': [('ks_item_action_field_type','=','date_type')],
'readonly':[('ks_item_action_field_type','!=','date_type')]}"/>
<field name="ks_item_action_field_type" invisible="1"/>
<field name="ks_chart_type" required="1"/>
<field name="ks_dashboard_item_id" invisible="1"/>
<field name="ks_model_id" invisible="1"/>
<field name="ks_sort_by_field"/>
<field name="ks_sort_by_order"/>
<field name="ks_record_limit"/>
</tree>
</field>
<group attrs="{'invisible':[('ks_dashboard_item_type','not in',['ks_bar_chart','ks_horizontalBar_chart','ks_line_chart','ks_area_chart','ks_pie_chart','ks_doughnut_chart','ks_polarArea_chart'])]}">
<div >
Below action will be performed at the end of the Drill Down Action
</div>
</group>
<group>
<group>
<field name="ks_actions" string="Item Action"
options="{'no_create': True, 'no_create_edit':True, 'no_open': True}"
attrs="{'invisible':[('ks_dashboard_item_type','=','ks_list_view')]}"/>
</group>
</group>
</page>
<page string="Target" name="target_settings"
attrs="{'invisible':['|',('ks_dashboard_item_type','not in',['ks_bar_chart','ks_horizontalBar_chart','ks_line_chart','ks_area_chart','ks_list_view']),('ks_chart_groupby_type','!=','date_type'),'|',('ks_dashboard_item_type','!=','ks_kpi'),('ks_model_id','=',False)]}">
<group>
<field name="ks_goal_enable" context="{'current_id': id}"/>
<field name="ks_goal_bar_line"
context="{'current_id': id}"
attrs="{'invisible' : ['|',('ks_goal_enable','=',False),('ks_dashboard_item_type','!=','ks_bar_chart')]}"/>
<field name="ks_standard_goal_value"
attrs="{'invisible' : [('ks_goal_enable','=',False)]}"/>
<field name="ks_target_view" widget="ks_widget_toggle_kpi_target"
attrs="{'invisible' : ['|',('ks_goal_enable','=',False),('ks_dashboard_item_type','!=','ks_kpi')]}"/>
</group>
<div attrs="{'invisible' : ['|','|',('ks_goal_enable','=',False),('ks_dashboard_item_type','=','ks_kpi'),('ks_chart_relation_sub_groupby','!=',False)]}">
All Target Lines Changes Will be reflected on Chart after saving the record.
</div>
<field name="ks_goal_lines"
attrs="{'invisible' : ['|','|',('ks_goal_enable','=',False),('ks_dashboard_item_type','=','ks_kpi'),('ks_chart_relation_sub_groupby','!=',False)]}">
<tree string="Goal Lines"
editable="top"
widget="section_and_note_one2many">
<field name="ks_goal_date" required="1"/>
<field name="ks_goal_value"/>
</tree>
</field>
</page>
</notebook>
</form>
</field>
</record>
<!-- Duplicate Button in action menu-->
<record model="ir.actions.server" id="ks_duplicate_dashboard">
<field name="name">Duplicate</field>
<field name="model_id" ref="model_ks_dashboard_ninja_item"/>
<field name="binding_model_id" ref="model_ks_dashboard_ninja_item"/>
<field name="state">code</field>
<field name="code">
action = {
'type': 'ir.actions.act_window',
'name' : 'Dashboard Item Action',
'context': {'default_ks_dashboard_item_ids': records.ids, 'default_ks_action':'duplicate'},
'view_mode': 'form',
'res_model': 'ks_ninja_dashboard.item_action',
'target':'new'
}
</field>
</record>
<!-- Move Button in action menu-->
<record model="ir.actions.server" id="ks_move_dashboard">
<field name="name">Move</field>
<field name="model_id" ref="model_ks_dashboard_ninja_item"/>
<field name="binding_model_id" ref="model_ks_dashboard_ninja_item"/>
<field name="state">code</field>
<field name="code">
action = {
'type': 'ir.actions.act_window',
'name' : 'Dashboard Item Action',
'context': {'default_ks_dashboard_item_ids': records.ids, 'default_ks_action':'move'},
'view_mode': 'form',
'res_model': 'ks_ninja_dashboard.item_action',
'target':'new'
}
</field>
</record>
<record model="ir.actions.act_window" id="ks_dashboard_ninja.item_action_window">
<field name="name">Ks Dashboard item Action</field>
<field name="res_model">ks_dashboard_ninja.item</field>
<field name="view_mode">tree,form</field>
</record>
</data>
</odoo>

View File

@@ -0,0 +1,105 @@
<odoo>
<data>
<record model="ir.ui.view" id="ks_dashboard_ninja.board_form">
<field name="name">ks_dashboard_ninja View</field>
<field name="model">ks_dashboard_ninja.board</field>
<field name="arch" type="xml">
<form string="Dashboards">
<sheet>
<group>
<group>
<field name="ks_dashboard_state" invisible="1"/>
<field name="name" attrs="{'readonly':[('ks_dashboard_state','=','Locked')]}"/>
<field name="ks_dashboard_menu_name" attrs="{'readonly':[('ks_dashboard_state','=','Locked')],
'required':[('ks_dashboard_state','!=','Locked')]}"/>
<field name="ks_dashboard_top_menu_id"
options="{'no_create': True, 'no_create_edit':True, 'no_open': True}" attrs="{'readonly':['|',('id','>', 0),('ks_dashboard_state','=','Locked')],
'required':[('ks_dashboard_state','!=','Locked')]}"/>
<field name="ks_dashboard_active"
attrs="{'readonly':[('ks_dashboard_state','=','Locked')]}"/>
</group>
</group>
</sheet>
</form>
</field>
</record>
<record model="ir.ui.view" id="ks_dashboard_ninja.board_tree">
<field name="name">ks_dashboard_ninja View</field>
<field name="model">ks_dashboard_ninja.board</field>
<field name="arch" type="xml">
<tree string="My Dashboard" editable="top">
<field name="ks_dashboard_state" invisible="1"/>
<field name="id" invisible="1"/>
<field name="name"/>
<field name="ks_dashboard_menu_name"
attrs="{'required':[('ks_dashboard_state','!=','Locked')]}"/>
<field name="ks_dashboard_menu_sequence"/>
<field name="ks_dashboard_top_menu_id"
options="{'no_create': True, 'no_create_edit':True, 'no_open': True}" attrs="{'readonly':[('ks_dashboard_state','=','Locked')],
'required':[('ks_dashboard_state','!=','Locked')]}"/>
<field name="ks_dashboard_active" attrs="{'readonly':[('ks_dashboard_state','=','Locked')]}"/>
<field name="ks_dashboard_default_template" attrs="{'readonly':[('id','>', 0)], 'required':[('id','&lt;', 1)]}"
options="{'no_create': True, 'no_create_edit':True, 'no_open': True}"/>
<field name="ks_set_interval"/>
<field name="ks_date_filter_selection" string="Default Date Filter" required="1"/>
<field name="ks_dashboard_start_date" string="Start Date" attrs="{'readonly':[('ks_date_filter_selection','!=','l_custom')], 'required':[('ks_date_filter_selection','=','l_custom')]}"/>
<field name="ks_dashboard_end_date" string="End Date" attrs="{'readonly':[('ks_date_filter_selection','!=','l_custom')], 'required':[('ks_date_filter_selection','=','l_custom')]}"/>
<field name="ks_dashboard_group_access" widget="many2many_tags"/>
<button name="ks_view_items_view" string="View Items" type="object" class="btn-primary"/>
</tree>
</field>
</record>
<!-- Search View Of Dashboard Items-->
<record id="ks_item_search_view" model="ir.ui.view">
<field name="name">dashboard.items.search.view</field>
<field name="model">ks_dashboard_ninja.item</field>
<field name="arch" type="xml">
<search string="Search Items">
<field name="name" filter_domain="[('name','ilike',self)]"/>
<field name="ks_dashboard_item_type"/>
<field name="ks_model_id" filter_domain="[('ks_model_id.model', 'ilike', self)]"/>
<field name="ks_dashboard_ninja_board_id"/>
<!--TODO : Add more filter and groupby-->
</search>
</field>
</record>
<!-- Dashboard -->
<record id="ks_dashboard_ninja.board_dashboard_action_window" model="ir.actions.client">
<field name="name">My Dashboard</field>
<field name="tag">ks_dashboard_ninja</field>
<field name="params" eval="{'ks_dashboard_id': ref('ks_dashboard_ninja.ks_my_default_dashboard_board')}"/>
<field name="res_model">ks_dashboard_ninja.board</field>
</record>
<record model="ir.actions.act_window" id="ks_dashboard_ninja.board_form_tree_action_window">
<field name="name">Dashboards</field>
<field name="res_model">ks_dashboard_ninja.board</field>
<field name="view_mode">tree,form</field>
<field name="context">{'form_view_ref':'ks_dashboard_ninja.board_form',
'tree_view_ref':'ks_dashboard_ninja.board_tree'}
</field>
</record>
<menuitem name="My Dashboard" id="ks_dashboard_ninja.board_menu_root" web_icon="ks_dashboard_ninja,static/description/icon.png"
action="ks_dashboard_ninja.board_dashboard_action_window"/>
<menuitem name="Configuration" id="ks_dashboard_ninja.configuration_menu" parent="ks_dashboard_ninja.board_menu_root"
groups="ks_dashboard_ninja_group_manager" sequence="100"/>
<menuitem name="Dashboards" id="ks_dashboard_ninja.dashboard_menu" parent="ks_dashboard_ninja.configuration_menu"
action="ks_dashboard_ninja.board_form_tree_action_window" groups="ks_dashboard_ninja_group_manager"/>
<record id="ks_dashboard_ninja.dashboard_menu" model="ir.ui.menu">
<field name="name">Dashboards</field>
</record>
</data>
</odoo>