openerp-community-reviewer team mailing list archive
-
openerp-community-reviewer team
-
Mailing list archive
-
Message #01299
lp:~savoirfairelinux-openerp/openerp-hr/6.1-fix-hr-skill-demo-data into lp:openerp-hr/6.1
eh.dem has proposed merging lp:~savoirfairelinux-openerp/openerp-hr/6.1-fix-hr-skill-demo-data into lp:openerp-hr/6.1.
Requested reviews:
HR Core Editors (hr-core-editors)
For more details, see:
https://code.launchpad.net/~savoirfairelinux-openerp/openerp-hr/6.1-fix-hr-skill-demo-data/+merge/194763
[IMP] Add files and create report for resume
[IMP] Allow translation of some fields
[FIX] PEP8 issue
[IMP] Further hr_skill cleanup
[IMP] Resume report
[ADD] hr_resume
[IMP] Language display on the resume
[IMP] Fix typos
[ADD] hr_experience_analytic
[IMP] Cleanup hr_skill
[ADD] hr_language
[IMP] Relate with employee
[IMP] Hide fields based on category
[IMP] Model and tree view
[FIX] PEP8
[ADD] hr_experience
[IMP] Cleanup
[IMP] Merge files
[IMP] Demo data installable.
--
https://code.launchpad.net/~savoirfairelinux-openerp/openerp-hr/6.1-fix-hr-skill-demo-data/+merge/194763
Your team HR Core Editors is requested to review the proposed merge of lp:~savoirfairelinux-openerp/openerp-hr/6.1-fix-hr-skill-demo-data into lp:openerp-hr/6.1.
=== added directory 'hr_experience'
=== added file 'hr_experience/__init__.py'
--- hr_experience/__init__.py 1970-01-01 00:00:00 +0000
+++ hr_experience/__init__.py 2013-11-11 22:43:26 +0000
@@ -0,0 +1,22 @@
+# -*- encoding: utf-8 -*-
+###############################################################################
+#
+# OpenERP, Open Source Management Solution
+# Copyright (C) 2013 Savoir-faire Linux (<http://www.savoirfairelinux.com>).
+#
+# This program is free software: you can redistribute it and/or modify
+# it under the terms of the GNU Affero General Public License as
+# published by the Free Software Foundation, either version 3 of the
+# License, or (at your option) any later version.
+#
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+# GNU Affero General Public License for more details.
+#
+# You should have received a copy of the GNU Affero General Public License
+# along with this program. If not, see <http://www.gnu.org/licenses/>.
+#
+###############################################################################
+from . import hr_experience
+# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4:
=== added file 'hr_experience/__openerp__.py'
--- hr_experience/__openerp__.py 1970-01-01 00:00:00 +0000
+++ hr_experience/__openerp__.py 2013-11-11 22:43:26 +0000
@@ -0,0 +1,42 @@
+# -*- encoding: utf-8 -*-
+###############################################################################
+#
+# OpenERP, Open Source Management Solution
+# Copyright (C) 2013 Savoir-faire Linux (<http://www.savoirfairelinux.com>).
+#
+# This program is free software: you can redistribute it and/or modify
+# it under the terms of the GNU Affero General Public License as
+# published by the Free Software Foundation, either version 3 of the
+# License, or (at your option) any later version.
+#
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+# GNU Affero General Public License for more details.
+#
+# You should have received a copy of the GNU Affero General Public License
+# along with this program. If not, see <http://www.gnu.org/licenses/>.
+#
+###############################################################################
+
+{
+ "name": "Experience Management",
+ "version": "0.1",
+ "author": "Savoir-faire Linux",
+ "category": "Human Resources",
+ "website": "http://www.savoirfairelinux.com",
+ "depends": ["hr"],
+ "description": """
+This module allows you to manage your employee experiences:
+* Professional
+* Academic
+* Certification
+ """,
+ "update_xml": [
+ "security/ir.model.access.csv",
+ "hr_experience_view.xml",
+ ],
+ "active": False,
+ "installable": True
+}
+# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4:
=== added file 'hr_experience/hr_experience.py'
--- hr_experience/hr_experience.py 1970-01-01 00:00:00 +0000
+++ hr_experience/hr_experience.py 2013-11-11 22:43:26 +0000
@@ -0,0 +1,59 @@
+# -*- encoding: utf-8 -*-
+###############################################################################
+#
+# OpenERP, Open Source Management Solution
+# Copyright (C) 2013 Savoir-faire Linux (<http://www.savoirfairelinux.com>).
+#
+# This program is free software: you can redistribute it and/or modify
+# it under the terms of the GNU Affero General Public License as
+# published by the Free Software Foundation, either version 3 of the
+# License, or (at your option) any later version.
+#
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+# GNU Affero General Public License for more details.
+#
+# You should have received a copy of the GNU Affero General Public License
+# along with this program. If not, see <http://www.gnu.org/licenses/>.
+#
+###############################################################################
+from osv import osv, fields
+
+
+class hr_experience(osv.osv):
+ _name = 'hr.experience'
+ _columns = {
+ 'name': fields.char('Name', size=64, required=True, translate=True),
+ 'employee_id': fields.many2one('hr.employee', 'Employee', required=True),
+ 'category': fields.selection((('professional', 'Professional'),
+ ('academic', 'Academic'),
+ ('certification', 'Certification')),
+ 'Category', required=True),
+ 'start_date': fields.date('Start date'),
+ 'end_date': fields.date('End date'),
+ 'description': fields.text('Description', translate=True),
+ 'partner_id': fields.many2one('res.partner', 'Partner', help="Employer, School, University, Certification Authority"),
+ 'location': fields.char('Location', size=64, translate=True),
+ 'diploma': fields.char('Diploma', size=64, translate=True),
+ 'study_field': fields.char('Field of study', size=64, translate=True),
+ 'result': fields.char('Result', size=64, translate=True),
+ 'activities': fields.text('Activities and associations', translate=True),
+ 'certification': fields.char('Certification Number', size=64),
+ 'expire': fields.boolean('Expire'),
+ }
+
+ _defaults = {
+ 'category': 'professional',
+ 'expire': True,
+ }
+hr_experience()
+
+
+class hr_employee(osv.osv):
+ _inherit = 'hr.employee'
+ _columns = {
+ 'experience_ids': fields.one2many('hr.experience', 'employee_id', 'Experiences'),
+ }
+hr_employee()
+# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4:
=== added file 'hr_experience/hr_experience_view.xml'
--- hr_experience/hr_experience_view.xml 1970-01-01 00:00:00 +0000
+++ hr_experience/hr_experience_view.xml 2013-11-11 22:43:26 +0000
@@ -0,0 +1,82 @@
+<openerp>
+ <data>
+
+ <!-- Employee -->
+
+ <record model="ir.ui.view" id="view_employee_form">
+ <field name="name">hr.experience.employee.form</field>
+ <field name="model">hr.employee</field>
+ <field name="inherit_id" ref="hr.view_employee_form"/>
+ <field name="type">form</field>
+ <field name="arch" type="xml">
+ <notebook position="inside">
+ <page string="Experiences">
+ <field name="experience_ids" nolabel="1" colspan="4"/>
+ </page>
+ </notebook>
+ </field>
+ </record>
+
+ <!-- Experience -->
+
+ <record model="ir.ui.view" id="view_experience_tree">
+ <field name="name">hr.experience.tree</field>
+ <field name="model">hr.experience</field>
+ <field name="type">tree</field>
+ <field name="arch" type="xml">
+ <tree string="Experiences">
+ <field name="name"/>
+ <field name="employee_id"/>
+ <field name="category"/>
+ <field name="partner_id"/>
+ <field name="start_date"/>
+ <field name="end_date"/>
+ </tree>
+ </field>
+ </record>
+
+ <record model="ir.ui.view" id="view_experience_form">
+ <field name="name">hr.experience.form</field>
+ <field name="model">hr.experience</field>
+ <field name="type">form</field>
+ <field name="arch" type="xml">
+ <form string="Experience">
+ <field name="name"/>
+ <field name="employee_id"/>
+ <field name="category"/>
+ <separator string="Dates" colspan="4"/>
+ <field name="start_date"/>
+ <field name="expire"/>
+ <field name="end_date" attrs="{'invisible':[('expire', '=', False)]}"/>
+ <separator string="Partner information" colspan="4"/>
+ <field name="partner_id"/>
+ <field name="location"/>
+ <group attrs="{'invisible':[('category', '!=', 'academic')]}" colspan="4">
+ <separator string="Academic information" colspan="4"/>
+ <field name="diploma" attrs="{'invisible':[('category', '!=', 'academic')]}"/>
+ <field name="study_field" attrs="{'invisible':[('category', '!=', 'academic')]}"/>
+ <field name="activities" attrs="{'invisible':[('category', '!=', 'academic')]}"/>
+ </group>
+ <group attrs="{'invisible':[('category', '!=', 'certification')]}" colspan="4">
+ <separator string="Certification information" colspan="4"/>
+ <field name="certification" attrs="{'invisible':[('category', '!=', 'certification')]}"/>
+ </group>
+ <separator string="Description" colspan="4"/>
+ <field name="description" colspan="4" nolabel="1"/>
+ </form>
+ </field>
+ </record>
+
+ <record model="ir.actions.act_window" id="open_view_experience_form">
+ <field name="res_model">hr.experience</field>
+ <field name="view_type">form</field>
+ <field name="view_mode">tree,form</field>
+ </record>
+
+ <menuitem name="Experiences"
+ parent="hr.menu_hr_configuration"
+ id="menu_open_view_experience_form"
+ action="open_view_experience_form"/>
+
+ </data>
+</openerp>
=== added directory 'hr_experience/i18n'
=== added directory 'hr_experience/security'
=== added file 'hr_experience/security/ir.model.access.csv'
--- hr_experience/security/ir.model.access.csv 1970-01-01 00:00:00 +0000
+++ hr_experience/security/ir.model.access.csv 2013-11-11 22:43:26 +0000
@@ -0,0 +1,2 @@
+"id","name","model_id:id","group_id:id","perm_read","perm_write","perm_create","perm_unlink"
+"access_hr_experience","hr.experience","model_hr_experience",base.group_hr_user,1,1,1,1
=== added directory 'hr_experience_analytic'
=== added file 'hr_experience_analytic/__init__.py'
--- hr_experience_analytic/__init__.py 1970-01-01 00:00:00 +0000
+++ hr_experience_analytic/__init__.py 2013-11-11 22:43:26 +0000
@@ -0,0 +1,22 @@
+# -*- encoding: utf-8 -*-
+###############################################################################
+#
+# OpenERP, Open Source Management Solution
+# Copyright (C) 2013 Savoir-faire Linux (<http://www.savoirfairelinux.com>).
+#
+# This program is free software: you can redistribute it and/or modify
+# it under the terms of the GNU Affero General Public License as
+# published by the Free Software Foundation, either version 3 of the
+# License, or (at your option) any later version.
+#
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+# GNU Affero General Public License for more details.
+#
+# You should have received a copy of the GNU Affero General Public License
+# along with this program. If not, see <http://www.gnu.org/licenses/>.
+#
+###############################################################################
+from . import hr_experience_analytic
+# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4:
=== added file 'hr_experience_analytic/__openerp__.py'
--- hr_experience_analytic/__openerp__.py 1970-01-01 00:00:00 +0000
+++ hr_experience_analytic/__openerp__.py 2013-11-11 22:43:26 +0000
@@ -0,0 +1,44 @@
+# -*- encoding: utf-8 -*-
+###############################################################################
+#
+# OpenERP, Open Source Management Solution
+# Copyright (C) 2013 Savoir-faire Linux (<http://www.savoirfairelinux.com>).
+#
+# This program is free software: you can redistribute it and/or modify
+# it under the terms of the GNU Affero General Public License as
+# published by the Free Software Foundation, either version 3 of the
+# License, or (at your option) any later version.
+#
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+# GNU Affero General Public License for more details.
+#
+# You should have received a copy of the GNU Affero General Public License
+# along with this program. If not, see <http://www.gnu.org/licenses/>.
+#
+###############################################################################
+
+{
+ "name": "Experience and Analytic Accounting",
+ "version": "0.1",
+ "author": "Savoir-faire Linux",
+ "category": "Human Resources",
+ "website": "http://www.savoirfairelinux.com",
+ "depends": [
+ "hr",
+ "account",
+ ],
+ "description": """
+This module allows you to link your employee experiences with projects or contracts.
+
+This is useful if you want to have the same project description and metrics on all
+the resume of the employees involved in the same project or contract.
+ """,
+ "update_xml": [
+ "hr_experience_analytic_view.xml",
+ ],
+ "installable": True,
+ "auto_install": True
+}
+# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4:
=== added file 'hr_experience_analytic/hr_experience_analytic.py'
--- hr_experience_analytic/hr_experience_analytic.py 1970-01-01 00:00:00 +0000
+++ hr_experience_analytic/hr_experience_analytic.py 2013-11-11 22:43:26 +0000
@@ -0,0 +1,30 @@
+# -*- encoding: utf-8 -*-
+###############################################################################
+#
+# OpenERP, Open Source Management Solution
+# Copyright (C) 2013 Savoir-faire Linux (<http://www.savoirfairelinux.com>).
+#
+# This program is free software: you can redistribute it and/or modify
+# it under the terms of the GNU Affero General Public License as
+# published by the Free Software Foundation, either version 3 of the
+# License, or (at your option) any later version.
+#
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+# GNU Affero General Public License for more details.
+#
+# You should have received a copy of the GNU Affero General Public License
+# along with this program. If not, see <http://www.gnu.org/licenses/>.
+#
+###############################################################################
+from osv import osv, fields
+
+
+class hr_experience(osv.osv):
+ _inherit = 'hr.experience'
+ _columns = {
+ 'account_id': fields.many2one('account.analytic.account', 'Analytic Account', domain=[('type', '!=', 'view')], help="Project or Contract"),
+ }
+hr_experience()
+# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4:
=== added file 'hr_experience_analytic/hr_experience_analytic_view.xml'
--- hr_experience_analytic/hr_experience_analytic_view.xml 1970-01-01 00:00:00 +0000
+++ hr_experience_analytic/hr_experience_analytic_view.xml 2013-11-11 22:43:26 +0000
@@ -0,0 +1,17 @@
+<openerp>
+ <data>
+
+ <record model="ir.ui.view" id="view_experience_form">
+ <field name="name">hr.experience.form</field>
+ <field name="model">hr.experience</field>
+ <field name="inherit_id" ref="hr_experience.view_experience_form"/>
+ <field name="type">form</field>
+ <field name="arch" type="xml">
+ <field name="location" position="after">
+ <field name="account_id" attrs="{'invisible':[('category', '!=', 'professional')]}" groups="analytic.group_analytic_accounting"/>
+ </field>
+ </field>
+ </record>
+
+ </data>
+</openerp>
=== added directory 'hr_experience_analytic/i18n'
=== added directory 'hr_language'
=== added file 'hr_language/__init__.py'
--- hr_language/__init__.py 1970-01-01 00:00:00 +0000
+++ hr_language/__init__.py 2013-11-11 22:43:26 +0000
@@ -0,0 +1,22 @@
+# -*- encoding: utf-8 -*-
+###############################################################################
+#
+# OpenERP, Open Source Management Solution
+# Copyright (C) 2013 Savoir-faire Linux (<http://www.savoirfairelinux.com>).
+#
+# This program is free software: you can redistribute it and/or modify
+# it under the terms of the GNU Affero General Public License as
+# published by the Free Software Foundation, either version 3 of the
+# License, or (at your option) any later version.
+#
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+# GNU Affero General Public License for more details.
+#
+# You should have received a copy of the GNU Affero General Public License
+# along with this program. If not, see <http://www.gnu.org/licenses/>.
+#
+###############################################################################
+from . import hr_language
+# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4:
=== added file 'hr_language/__openerp__.py'
--- hr_language/__openerp__.py 1970-01-01 00:00:00 +0000
+++ hr_language/__openerp__.py 2013-11-11 22:43:26 +0000
@@ -0,0 +1,39 @@
+# -*- encoding: utf-8 -*-
+###############################################################################
+#
+# OpenERP, Open Source Management Solution
+# Copyright (C) 2013 Savoir-faire Linux (<http://www.savoirfairelinux.com>).
+#
+# This program is free software: you can redistribute it and/or modify
+# it under the terms of the GNU Affero General Public License as
+# published by the Free Software Foundation, either version 3 of the
+# License, or (at your option) any later version.
+#
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+# GNU Affero General Public License for more details.
+#
+# You should have received a copy of the GNU Affero General Public License
+# along with this program. If not, see <http://www.gnu.org/licenses/>.
+#
+###############################################################################
+
+{
+ "name": "Language Management",
+ "version": "0.1",
+ "author": "Savoir-faire Linux",
+ "category": "Human Resources",
+ "website": "http://www.savoirfairelinux.com",
+ "depends": ["hr"],
+ "description": """
+This module allows you to manage your employee languages.
+ """,
+ "update_xml": [
+ "security/ir.model.access.csv",
+ "hr_language_view.xml",
+ ],
+ "active": False,
+ "installable": True
+}
+# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4:
=== added file 'hr_language/hr_language.py'
--- hr_language/hr_language.py 1970-01-01 00:00:00 +0000
+++ hr_language/hr_language.py 2013-11-11 22:43:26 +0000
@@ -0,0 +1,50 @@
+# -*- encoding: utf-8 -*-
+###############################################################################
+#
+# OpenERP, Open Source Management Solution
+# Copyright (C) 2013 Savoir-faire Linux (<http://www.savoirfairelinux.com>).
+#
+# This program is free software: you can redistribute it and/or modify
+# it under the terms of the GNU Affero General Public License as
+# published by the Free Software Foundation, either version 3 of the
+# License, or (at your option) any later version.
+#
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+# GNU Affero General Public License for more details.
+#
+# You should have received a copy of the GNU Affero General Public License
+# along with this program. If not, see <http://www.gnu.org/licenses/>.
+#
+###############################################################################
+import tools
+from osv import osv, fields
+
+
+class hr_language(osv.osv):
+ _name = 'hr.language'
+ _columns = {
+ 'name': fields.selection(tools.scan_languages(), 'Language', required=True),
+ 'description': fields.char('Description', size=64, required=True, translate=True),
+ 'employee_id': fields.many2one('hr.employee', 'Employee', required=True),
+ 'read': fields.boolean('Read'),
+ 'write': fields.boolean('Write'),
+ 'speak': fields.boolean('Speak'),
+ }
+
+ _defaults = {
+ 'read': True,
+ 'write': True,
+ 'speak': True,
+ }
+hr_language()
+
+
+class hr_employee(osv.osv):
+ _inherit = 'hr.employee'
+ _columns = {
+ 'language_ids': fields.one2many('hr.language', 'employee_id', 'Languages'),
+ }
+hr_employee()
+# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4:
=== added file 'hr_language/hr_language_view.xml'
--- hr_language/hr_language_view.xml 1970-01-01 00:00:00 +0000
+++ hr_language/hr_language_view.xml 2013-11-11 22:43:26 +0000
@@ -0,0 +1,67 @@
+<openerp>
+ <data>
+
+ <!-- Employee -->
+
+ <record model="ir.ui.view" id="view_employee_form">
+ <field name="name">hr.language.employee.form</field>
+ <field name="model">hr.employee</field>
+ <field name="inherit_id" ref="hr.view_employee_form"/>
+ <field name="type">form</field>
+ <field name="arch" type="xml">
+ <notebook position="inside">
+ <page string="Languages">
+ <field name="language_ids" nolabel="1" colspan="4"/>
+ </page>
+ </notebook>
+ </field>
+ </record>
+
+ <!-- Language -->
+
+ <record model="ir.ui.view" id="view_language_tree">
+ <field name="name">hr.language.tree</field>
+ <field name="model">hr.language</field>
+ <field name="type">tree</field>
+ <field name="arch" type="xml">
+ <tree string="Languages">
+ <field name="description"/>
+ <field name="read"/>
+ <field name="write"/>
+ <field name="speak"/>
+ </tree>
+ </field>
+ </record>
+
+ <record model="ir.ui.view" id="view_language_form">
+ <field name="name">hr.language.form</field>
+ <field name="model">hr.language</field>
+ <field name="type">form</field>
+ <field name="arch" type="xml">
+ <form string="Language">
+ <field name="name"/>
+ <field name="description"/>
+ <field name="employee_id"/>
+ <newline/>
+ <field name="read"/>
+ <newline/>
+ <field name="write"/>
+ <newline/>
+ <field name="speak"/>
+ </form>
+ </field>
+ </record>
+
+ <record model="ir.actions.act_window" id="open_view_language_form">
+ <field name="res_model">hr.language</field>
+ <field name="view_type">form</field>
+ <field name="view_mode">tree,form</field>
+ </record>
+
+ <menuitem name="Languages"
+ parent="hr.menu_hr_configuration"
+ id="menu_open_view_language_form"
+ action="open_view_language_form"/>
+
+ </data>
+</openerp>
=== added directory 'hr_language/i18n'
=== added directory 'hr_language/security'
=== added file 'hr_language/security/ir.model.access.csv'
--- hr_language/security/ir.model.access.csv 1970-01-01 00:00:00 +0000
+++ hr_language/security/ir.model.access.csv 2013-11-11 22:43:26 +0000
@@ -0,0 +1,2 @@
+"id","name","model_id:id","group_id:id","perm_read","perm_write","perm_create","perm_unlink"
+"access_hr_language","hr.language","model_hr_language",base.group_hr_user,1,1,1,1
=== added directory 'hr_resume'
=== added file 'hr_resume/__init__.py'
--- hr_resume/__init__.py 1970-01-01 00:00:00 +0000
+++ hr_resume/__init__.py 2013-11-11 22:43:26 +0000
@@ -0,0 +1,23 @@
+# -*- encoding: utf-8 -*-
+###############################################################################
+#
+# OpenERP, Open Source Management Solution
+# Copyright (C) 2013 Savoir-faire Linux (<http://www.savoirfairelinux.com>).
+#
+# This program is free software: you can redistribute it and/or modify
+# it under the terms of the GNU Affero General Public License as
+# published by the Free Software Foundation, either version 3 of the
+# License, or (at your option) any later version.
+#
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+# GNU Affero General Public License for more details.
+#
+# You should have received a copy of the GNU Affero General Public License
+# along with this program. If not, see <http://www.gnu.org/licenses/>.
+#
+###############################################################################
+from . import hr_resume
+from . import report
+# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4:
=== added file 'hr_resume/__openerp__.py'
--- hr_resume/__openerp__.py 1970-01-01 00:00:00 +0000
+++ hr_resume/__openerp__.py 2013-11-11 22:43:26 +0000
@@ -0,0 +1,43 @@
+# -*- encoding: utf-8 -*-
+###############################################################################
+#
+# OpenERP, Open Source Management Solution
+# Copyright (C) 2013 Savoir-faire Linux (<http://www.savoirfairelinux.com>).
+#
+# This program is free software: you can redistribute it and/or modify
+# it under the terms of the GNU Affero General Public License as
+# published by the Free Software Foundation, either version 3 of the
+# License, or (at your option) any later version.
+#
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+# GNU Affero General Public License for more details.
+#
+# You should have received a copy of the GNU Affero General Public License
+# along with this program. If not, see <http://www.gnu.org/licenses/>.
+#
+###############################################################################
+
+{
+ "name": "Resume Management",
+ "version": "0.1",
+ "author": "Savoir-faire Linux",
+ "category": "Human Resources",
+ "website": "http://www.savoirfairelinux.com",
+ "depends": [
+ "hr_experience",
+ "hr_skill",
+ "hr_language",
+ ],
+ "description": """
+This module allows you to manage your employee resumes.
+ """,
+ "update_xml": [
+ "hr_resume_view.xml",
+ "report/report_resume.xml",
+ ],
+ "active": False,
+ "installable": True
+}
+# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4:
=== added file 'hr_resume/hr_resume.py'
--- hr_resume/hr_resume.py 1970-01-01 00:00:00 +0000
+++ hr_resume/hr_resume.py 2013-11-11 22:43:26 +0000
@@ -0,0 +1,30 @@
+# -*- encoding: utf-8 -*-
+###############################################################################
+#
+# OpenERP, Open Source Management Solution
+# Copyright (C) 2013 Savoir-faire Linux (<http://www.savoirfairelinux.com>).
+#
+# This program is free software: you can redistribute it and/or modify
+# it under the terms of the GNU Affero General Public License as
+# published by the Free Software Foundation, either version 3 of the
+# License, or (at your option) any later version.
+#
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+# GNU Affero General Public License for more details.
+#
+# You should have received a copy of the GNU Affero General Public License
+# along with this program. If not, see <http://www.gnu.org/licenses/>.
+#
+###############################################################################
+from osv import osv, fields
+
+
+class hr_employee(osv.osv):
+ _inherit = 'hr.employee'
+ _columns = {
+ 'biography': fields.text('Biography'),
+ }
+hr_employee()
+# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4:
=== added file 'hr_resume/hr_resume_view.xml'
--- hr_resume/hr_resume_view.xml 1970-01-01 00:00:00 +0000
+++ hr_resume/hr_resume_view.xml 2013-11-11 22:43:26 +0000
@@ -0,0 +1,21 @@
+<openerp>
+ <data>
+
+ <!-- Employee -->
+
+ <record model="ir.ui.view" id="view_employee_form">
+ <field name="name">hr.resume.employee.form</field>
+ <field name="model">hr.employee</field>
+ <field name="inherit_id" ref="hr.view_employee_form"/>
+ <field name="type">form</field>
+ <field name="arch" type="xml">
+ <notebook position="inside">
+ <page string="Biography">
+ <field name="biography" nolabel="1" colspan="4"/>
+ </page>
+ </notebook>
+ </field>
+ </record>
+
+ </data>
+</openerp>
=== added directory 'hr_resume/i18n'
=== added directory 'hr_resume/report'
=== added file 'hr_resume/report/__init__.py'
--- hr_resume/report/__init__.py 1970-01-01 00:00:00 +0000
+++ hr_resume/report/__init__.py 2013-11-11 22:43:26 +0000
@@ -0,0 +1,22 @@
+# -*- encoding: utf-8 -*-
+###############################################################################
+#
+# OpenERP, Open Source Management Solution
+# Copyright (C) 2013 Savoir-faire Linux (<http://www.savoirfairelinux.com>).
+#
+# This program is free software: you can redistribute it and/or modify
+# it under the terms of the GNU Affero General Public License as
+# published by the Free Software Foundation, either version 3 of the
+# License, or (at your option) any later version.
+#
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+# GNU Affero General Public License for more details.
+#
+# You should have received a copy of the GNU Affero General Public License
+# along with this program. If not, see <http://www.gnu.org/licenses/>.
+#
+###############################################################################
+from . import report_resume
+# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4:
=== added file 'hr_resume/report/report_resume.py'
--- hr_resume/report/report_resume.py 1970-01-01 00:00:00 +0000
+++ hr_resume/report/report_resume.py 2013-11-11 22:43:26 +0000
@@ -0,0 +1,49 @@
+# -*- encoding: utf-8 -*-
+###############################################################################
+#
+# OpenERP, Open Source Management Solution
+# Copyright (C) 2013 Savoir-faire Linux (<http://www.savoirfairelinux.com>).
+#
+# This program is free software: you can redistribute it and/or modify
+# it under the terms of the GNU Affero General Public License as
+# published by the Free Software Foundation, either version 3 of the
+# License, or (at your option) any later version.
+#
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+# GNU Affero General Public License for more details.
+#
+# You should have received a copy of the GNU Affero General Public License
+# along with this program. If not, see <http://www.gnu.org/licenses/>.
+#
+###############################################################################
+import time
+from report import report_sxw
+
+
+class report_resume(report_sxw.rml_parse):
+
+ def __init__(self, cr, uid, name, context):
+ super(report_resume, self).__init__(cr, uid, name, context)
+ self.localcontext.update({
+ 'time': time,
+ 'get_experience_by_category': self.get_experience_by_category,
+ })
+
+ def get_experience_by_category(self, employee_id, category):
+ self.cr.execute("SELECT exp.name, exp.start_date, exp.expire, exp.end_date, exp.location, exp.certification, \
+ exp.description, exp.diploma, exp.study_field, part.name partner_name FROM hr_experience exp \
+ LEFT JOIN res_partner part ON part.id = exp.partner_id \
+ WHERE exp.employee_id = %d AND exp.category = '%s'"%(employee_id, category))
+ return self.cr.dictfetchall()
+
+report_sxw.report_sxw(
+ 'report.hr.resume.report',
+ 'hr.employee',
+ 'addons/hr_resume/report/report_resume.rml',
+ parser=report_resume,
+ header=False
+)
+
+# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4:
=== added file 'hr_resume/report/report_resume.rml'
--- hr_resume/report/report_resume.rml 1970-01-01 00:00:00 +0000
+++ hr_resume/report/report_resume.rml 2013-11-11 22:43:26 +0000
@@ -0,0 +1,99 @@
+<?xml version="1.0"?>
+<document filename="Resume.pdf">
+ <template pageSize="(595.0,842.0)" title="Resume" author="Savoir-faire Linux" allowSplitting="20">
+ <pageTemplate id="first">
+ <frame id="first" x1="15.0" y1="42.0" width="539" height="758"/>
+ </pageTemplate>
+ </template>
+ <stylesheet>
+ <blockTableStyle id="Standard_Outline">
+ <blockAlignment value="LEFT"/>
+ <blockValign value="TOP"/>
+ </blockTableStyle>
+ <initialize>
+ <paraStyle name="all" alignment="justify"/>
+ </initialize>
+ <paraStyle name="Standard" fontName="Helvetica"/>
+ <paraStyle name="Text body" fontName="Helvetica" spaceBefore="0.0" spaceAfter="6.0"/>
+ <paraStyle name="Heading" fontName="Helvetica" fontSize="8.0" leading="10" spaceBefore="12.0" spaceAfter="6.0"/>
+ <paraStyle name="List" fontName="Helvetica" spaceBefore="0.0" spaceAfter="6.0"/>
+ <paraStyle name="Table Contents" fontName="Helvetica"/>
+ <paraStyle name="Table Heading" fontName="Helvetica" alignment="CENTER"/>
+ <paraStyle name="Caption" fontName="Helvetica" fontSize="12.0" leading="15" spaceBefore="6.0" spaceAfter="6.0"/>
+ <paraStyle name="Index" fontName="Helvetica"/>
+ <paraStyle name="terp_header" fontName="Helvetica-Bold" fontSize="15.0" leading="19" alignment="LEFT" spaceBefore="12.0" spaceAfter="6.0"/>
+ <paraStyle name="terp_default_8" fontName="Helvetica" fontSize="8.0" leading="10" alignment="LEFT" spaceBefore="0.0" spaceAfter="0.0"/>
+ <paraStyle name="terp_default_Bold_8" fontName="Helvetica-Bold" fontSize="8.0" leading="10" alignment="LEFT" spaceBefore="0.0" spaceAfter="0.0"/>
+ <paraStyle name="terp_default_Bold_9" fontName="Helvetica-Bold" fontSize="9.0" leading="11" alignment="LEFT" spaceBefore="0.0" spaceAfter="0.0"/>
+ <paraStyle name="terp_default_9" fontName="Helvetica" fontSize="9.0" leading="11" alignment="LEFT" spaceBefore="0.0" spaceAfter="0.0"/>
+ <paraStyle name="terp_tblheader_General" fontName="Helvetica-Bold" fontSize="8.0" leading="10" alignment="LEFT" spaceBefore="6.0" spaceAfter="6.0"/>
+ <paraStyle name="terp_tblheader_General_Centre" fontName="Helvetica-Bold" fontSize="8.0" leading="10" alignment="CENTER" spaceBefore="6.0" spaceAfter="6.0"/>
+ <paraStyle name="terp_default_Centre_8" fontName="Helvetica" fontSize="8.0" leading="10" alignment="CENTER" spaceBefore="0.0" spaceAfter="0.0"/>
+ <paraStyle name="terp_tblheader_Details" fontName="Helvetica-Bold" fontSize="9.0" leading="11" alignment="LEFT" spaceBefore="6.0" spaceAfter="6.0"/>
+ <paraStyle name="Footer" fontName="Helvetica"/>
+ <paraStyle name="Horizontal Line" fontName="Helvetica" fontSize="6.0" leading="8" spaceBefore="0.0" spaceAfter="14.0"/>
+ <paraStyle name="Heading 9" fontName="Helvetica-Bold" fontSize="75%" leading="NaN" spaceBefore="12.0" spaceAfter="6.0"/>
+ <paraStyle name="terp_tblheader_General_Right" fontName="Helvetica-Bold" fontSize="8.0" leading="10" alignment="RIGHT" spaceBefore="6.0" spaceAfter="6.0"/>
+ <paraStyle name="terp_tblheader_Details_Centre" fontName="Helvetica-Bold" fontSize="9.0" leading="11" alignment="CENTER" spaceBefore="6.0" spaceAfter="6.0"/>
+ <paraStyle name="terp_tblheader_Details_Right" fontName="Helvetica-Bold" fontSize="9.0" leading="11" alignment="RIGHT" spaceBefore="6.0" spaceAfter="6.0"/>
+ <paraStyle name="terp_default_Right_8" fontName="Helvetica" fontSize="8.0" leading="10" alignment="RIGHT" spaceBefore="0.0" spaceAfter="0.0"/>
+ <paraStyle name="terp_header_Right" fontName="Helvetica-Bold" fontSize="15.0" leading="19" alignment="LEFT" spaceBefore="12.0" spaceAfter="6.0"/>
+ <paraStyle name="terp_header_Centre" fontName="Helvetica-Bold" fontSize="15.0" leading="19" alignment="CENTER" spaceBefore="12.0" spaceAfter="6.0"/>
+ <paraStyle name="terp_default_address" fontName="Helvetica" fontSize="10.0" leading="13" alignment="LEFT" spaceBefore="0.0" spaceAfter="0.0"/>
+ <paraStyle name="terp_default_Centre_9" fontName="Helvetica" fontSize="9.0" leading="11" alignment="CENTER" spaceBefore="0.0" spaceAfter="0.0"/>
+ <paraStyle name="terp_default_Right_9" fontName="Helvetica" fontSize="9.0" leading="11" alignment="RIGHT" spaceBefore="0.0" spaceAfter="0.0"/>
+ <paraStyle name="terp_default_1" fontName="Helvetica" fontSize="2.0" leading="3" alignment="LEFT" spaceBefore="0.0" spaceAfter="0.0"/>
+ <paraStyle name="terp_default_Right_9_Bold" fontName="Helvetica-Bold" fontSize="9.0" leading="11" alignment="RIGHT" spaceBefore="0.0" spaceAfter="0.0"/>
+ <paraStyle name="terp_default_Italic" rightIndent="0.0" leftIndent="20.0" fontName="Helvetica-Oblique" fontSize="8.0" leading="10" alignment="LEFT" spaceBefore="0.0" spaceAfter="0.0"/>
+ <paraStyle name="Preformatted Text" fontName="Helvetica" fontSize="10.0" leading="13" spaceBefore="0.0" spaceAfter="0.0"/>
+ <paraStyle name="terp_default_Centre_9_Bold" fontName="Helvetica-Bold" fontSize="9.0" leading="11" alignment="CENTER" spaceBefore="0.0" spaceAfter="0.0"/>
+ <images/>
+ </stylesheet>
+ <story>
+ <pto>
+ <para style="terp_default_8">[[repeatIn(objects,'o')]]</para>
+ <para style="terp_default_8">[[setLang(user.context_lang)]]</para>
+ <image x="1.3cm" y="27.6cm" height="40.0" width="100" alignment="LEFT">[[ company.logo or removeParentNode('image') ]]</image>
+ <para style="terp_header_Centre">Resume</para>
+ <para style="terp_header_Centre">[[ o.name ]]</para>
+ <para style="terp_header_Centre">[[ o.job_id.name ]]</para>
+ <para style="terp_header">Biography</para>
+ <para>[[ o.biography ]]</para>
+ <para style="terp_header">Skills</para>
+ <section>
+ <para>[[repeatIn(o.skill_ids,'skill')]]</para>
+ <para>- [[ skill.name ]] </para>
+ </section>
+ <para style="terp_header">Certifications</para>
+ <section>
+ <para >[[ repeatIn(get_experience_by_category(o.id, 'certification'),'line') ]]</para>
+ <para style="terp_default_Bold_9">[[ line['name'] ]] , [[ line['partner_name'] ]]</para>
+ <para>[[ line['start_date'] ]] - [[ line['expire'] and line['end_date'] or 'Now' ]]</para>
+ <para>[[ line['location'] or removeParentNode('para') ]]</para>
+ <para>Certification Number: [[ line['certification'] or removeParentNode('para') ]]</para>
+ </section>
+ <para style="terp_header">Professional Experiences</para>
+ <section>
+ <para >[[ repeatIn(get_experience_by_category(o.id, 'professional'),'line') ]]</para>
+ <para style="terp_default_Bold_9">[[ line['name'] ]] [[ line['location'] or '' ]]</para>
+ <para>[[ line['start_date'] ]] - [[ line['expire'] and line['end_date'] or 'Now' ]]</para>
+ <para>[[ line['partner_name'] ]]</para>
+ <para>[[ line['description'] ]]</para>
+ </section>
+ <para style="terp_header">Academic Background</para>
+ <section>
+ <para >[[ repeatIn(get_experience_by_category(o.id, 'academic'),'line') ]]</para>
+ <para style="terp_default_Bold_9">[[ line['name'] ]]</para>
+ <para>[[ line['start_date'] ]] - [[ line['expire'] and line['end_date'] or 'Now' ]]</para>
+ <para>[[ line['partner_name'] ]]</para>
+ <para>Diploma: [[ line['diploma'] or removeParentNode('para') ]]</para>
+ <para>Field of Study: [[ line['study_field'] or removeParentNode('para') ]]</para>
+ </section>
+ <para style="terp_header">Languages</para>
+ <section>
+ <para>[[repeatIn(o.language_ids,'language')]]</para>
+ <para>- [[ language.description ]] : [[ language.read and 'Read' or '' ]], [[ language.write and 'Write' or '' ]], [[ language.speak and 'Speak' or '' ]]</para>
+ </section>
+ </pto>
+ </story>
+</document>
=== added file 'hr_resume/report/report_resume.xml'
--- hr_resume/report/report_resume.xml 1970-01-01 00:00:00 +0000
+++ hr_resume/report/report_resume.xml 2013-11-11 22:43:26 +0000
@@ -0,0 +1,14 @@
+<?xml version="1.0"?>
+<openerp>
+ <data>
+
+ <report id="hr_resume_report"
+ string="Print Resume"
+ model="hr.employee"
+ name="hr.resume.report"
+ rml="hr_resume/report/report_resume.rml"
+ auto="False"
+ menu="True"/>
+
+ </data>
+</openerp>
=== modified file 'hr_skill/__init__.py'
--- hr_skill/__init__.py 2009-10-15 11:25:40 +0000
+++ hr_skill/__init__.py 2013-11-11 22:43:26 +0000
@@ -1,6 +1,6 @@
# -*- encoding: utf-8 -*-
-##############################################################################
-#
+###############################################################################
+#
# OpenERP, Open Source Management Solution
# Copyright (C) 2004-2009 Tiny SPRL (<http://tiny.be>).
#
@@ -15,12 +15,10 @@
# GNU Affero General Public License for more details.
#
# You should have received a copy of the GNU Affero General Public License
-# along with this program. If not, see <http://www.gnu.org/licenses/>.
+# along with this program. If not, see <http://www.gnu.org/licenses/>.
#
-##############################################################################
-import hr_skill
-import report
-import wizard
-import hrskill
+###############################################################################
+from . import hr_skill
+# from . import report
+# from . import wizard
# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4:
-
=== renamed file 'hr_skill/__terp__.py' => 'hr_skill/__openerp__.py'
--- hr_skill/__terp__.py 2009-10-15 11:25:40 +0000
+++ hr_skill/__openerp__.py 2013-11-11 22:43:26 +0000
@@ -1,6 +1,6 @@
# -*- encoding: utf-8 -*-
-##############################################################################
-#
+###############################################################################
+#
# OpenERP, Open Source Management Solution
# Copyright (C) 2004-2009 Tiny SPRL (<http://tiny.be>).
#
@@ -15,26 +15,25 @@
# GNU Affero General Public License for more details.
#
# You should have received a copy of the GNU Affero General Public License
-# along with this program. If not, see <http://www.gnu.org/licenses/>.
+# along with this program. If not, see <http://www.gnu.org/licenses/>.
#
-##############################################################################
+###############################################################################
{
- "name" : "Skill Management",
- "version" : "0.1",
- "author" : "Tiny",
- "category" : "Generic Modules/Human Resources",
+ "name": "Skill Management",
+ "version": "0.2",
+ "author": "Tiny",
+ "category": "Human Resources",
"website": "http://www.openerp.com",
- "depends" : ["hr"],
- "description": "Generic and powerfull skill management system. This module allows you to manage your company and employees skills, interviews, ...",
-# "demo_xml" : ["hr_skill.weight.category.csv","hr_skill.weight.csv","hr_skill.skill.csv",\
-# "hr_skill.profile.csv","hr_skill.position.csv","hr_skill.experience.csv",\
-# "hr_skill.experience.category.csv","hr_skill.evaluation.category.csv"],
-# "demo_xml" : ["hr_skill.evaluation.csv"],
- "init_xml" : [],
- "update_xml" : ['security/ir.model.access.csv','hr_skill_report.xml','hr_skill_view.xml','hrskill_view.xml','lang_wiz_view.xml',],
+ "depends": ["hr"],
+ "description": """
+This module allows you to manage your company and employees skills.
+ """,
+ "update_xml": [
+ "security/ir.model.access.csv",
+ "hr_skill_view.xml",
+ ],
"active": False,
"installable": True
}
# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4:
-
=== removed file 'hr_skill/hr_skill.evaluation.category.csv'
--- hr_skill/hr_skill.evaluation.category.csv 2007-08-10 07:47:26 +0000
+++ hr_skill/hr_skill.evaluation.category.csv 1970-01-01 00:00:00 +0000
@@ -1,2 +0,0 @@
-name
-Interview
\ No newline at end of file
=== removed file 'hr_skill/hr_skill.evaluation.csv'
--- hr_skill/hr_skill.evaluation.csv 2007-08-10 07:47:26 +0000
+++ hr_skill/hr_skill.evaluation.csv 1970-01-01 00:00:00 +0000
@@ -1,2 +0,0 @@
-category_id/name,date,interviewee_name,name,interviewer_name,experience_ids/name,experience_ids/experience_id/name,experience_ids/weight_id/name,skill_ids/name,skill_ids/skill_id/name,skill_ids/weight_id/name
-Interview,2006-10-13,John,Interview,Bob,It Degree,It Degree,Fifty-fifty,Français,Français,Good
\ No newline at end of file
=== removed file 'hr_skill/hr_skill.experience.category.csv'
--- hr_skill/hr_skill.experience.category.csv 2007-08-10 07:47:26 +0000
+++ hr_skill/hr_skill.experience.category.csv 1970-01-01 00:00:00 +0000
@@ -1,5 +0,0 @@
-name
-College Degree
-Academic Degree
-Advanced Degree
-Professional Experience
=== removed file 'hr_skill/hr_skill.experience.csv'
--- hr_skill/hr_skill.experience.csv 2008-03-18 12:53:47 +0000
+++ hr_skill/hr_skill.experience.csv 1970-01-01 00:00:00 +0000
@@ -1,1 +0,0 @@
-category_id,name,skill_ids/name,skill_ids/weight_id
=== removed file 'hr_skill/hr_skill.position.csv'
--- hr_skill/hr_skill.position.csv 2007-08-10 07:47:26 +0000
+++ hr_skill/hr_skill.position.csv 1970-01-01 00:00:00 +0000
@@ -1,3 +0,0 @@
-name,profile_ids/name,profile_ids/profile_id,profile_ids/weight_id
-prof,Linguist,Linguist,Good
-Junior IT Consultant,Junior IT,Junior IT,Good
\ No newline at end of file
=== removed file 'hr_skill/hr_skill.profile.csv'
--- hr_skill/hr_skill.profile.csv 2007-08-10 07:47:26 +0000
+++ hr_skill/hr_skill.profile.csv 1970-01-01 00:00:00 +0000
@@ -1,5 +0,0 @@
-name,skill_ids/name,skill_ids/weight_id,skill_ids/skill_id
-Linguist,NL,Fifty-fifty,Lang
-,Français,Good,Lang
-Junior IT,Network,Fifty-fifty,Lang
-,Python,Good,Lang
=== modified file 'hr_skill/hr_skill.py'
--- hr_skill/hr_skill.py 2010-03-24 16:55:59 +0000
+++ hr_skill/hr_skill.py 2013-11-11 22:43:26 +0000
@@ -1,6 +1,6 @@
# -*- encoding: utf-8 -*-
-##############################################################################
-#
+###############################################################################
+#
# OpenERP, Open Source Management Solution
# Copyright (C) 2004-2009 Tiny SPRL (<http://tiny.be>).
#
@@ -15,248 +15,33 @@
# GNU Affero General Public License for more details.
#
# You should have received a copy of the GNU Affero General Public License
-# along with this program. If not, see <http://www.gnu.org/licenses/>.
+# along with this program. If not, see <http://www.gnu.org/licenses/>.
#
-##############################################################################
-
-# ON peut choisir lors de la definititon
-# d'un skill de lui associer des skills
-# de substitution et d'y associer des poids
-# (et donc plus d'arbre ..)
-
+###############################################################################
from osv import osv, fields
-# Wheight Category
-# eg: years, in english, ..
-class hr_skill_weight_category(osv.osv):
- _name ='hr_skill.weight.category'
- _columns = {
- 'name': fields.char('Name', size=64, required=True),
- }
-
-hr_skill_weight_category()
-
-
-# weight
-# eg: 0 to 1, more than 5, good, bad
-class hr_skill_weight(osv.osv):
- _name ='hr_skill.weight'
- _columns = {
- 'name': fields.char('Name', size=64,required=True),
- 'value': fields.float('Numerical value', required=True),
- 'category_id': fields.many2one('hr_skill.weight.category', 'Category', required=True, ondelete='cascade'),
- }# hr_skill.category ne passe pas (cad creation des tables) la premiere fois (hr_skill_category bien)
-
-hr_skill_weight()
-
-
-# Skill
-# eg : Spanish, OO programming (-> skill)
-# Langage, IT (->view)
-# Categories of weight
-class hr_skill_skill(osv.osv):
- _name = 'hr_skill.skill'
- _columns = {
- 'name': fields.char('Name', size=64,required=True),
- 'active': fields.boolean('Active'),
- 'weight': fields.float('Weight', required=True),
- 'weight_category_id': fields.many2one('hr_skill.weight.category','Weight Category'),
- 'parent_id': fields.many2one('hr_skill.skill', 'Parent', ondelete='cascade'),
- 'child_ids': fields.one2many('hr_skill.skill', 'parent_id', 'Children'),
- 'view': fields.selection([('view','View'), ('skill','Skill')], 'Skill', required=True),
+
+class hr_skill(osv.osv):
+ _name = 'hr.skill'
+ _columns = {
+ 'name': fields.char('Name', size=64, required=True, translate=True),
+ 'active': fields.boolean('Active'),
+ 'parent_id': fields.many2one('hr.skill', 'Parent', ondelete='cascade'),
+ 'child_ids': fields.one2many('hr.skill', 'parent_id', 'Children'),
+ 'view': fields.selection([('view', 'View'), ('skill', 'Skill')], 'Skill', required=True),
+ 'employee_ids': fields.many2many('hr.employee', 'skill_employee_rel', 'skill_id', 'employee_id', 'Employee(s)'),
}
_defaults = {
- 'view': lambda self,cr,uid,context: 'view',
- 'weight': lambda self,cr,uid,context: 0,
- 'active': lambda self,cr,uid,context: 1
- }
-hr_skill_skill()
-
-
-
-# Experience category
-# eg : a degree or a professional experience
-class hr_skill_experience_category(osv.osv):
- _name ='hr_skill.experience.category'
- _columns = {
- 'name': fields.char('Name', size=64,required=True),
- }
-hr_skill_experience_category()
-
-
-# Experience
-# eg : a specific former job position or studies
-# each experience is associated with several couple skill - weight
-class hr_skill_experience(osv.osv):
- _name ='hr_skill.experience'
- _columns = {
- 'name': fields.char('Name', size=64,required=True),
- 'skill_ids': fields.one2many('hr_skill.experience.skill','experience_id','Skills'),
- 'sequence': fields.integer('Sequence'),
- 'category_id' : fields.many2one('hr_skill.experience.category', 'Category'),
- }
-hr_skill_experience()
-
-
-# Evaluation Category
-class hr_skill_evaluation_category(osv.osv):
- _name ='hr_skill.evaluation.category'
- _columns = {
- 'name': fields.char('Name', size=64,required=True),
- }
-hr_skill_evaluation_category()
-
-# Evaluation
-class hr_skill_evaluation(osv.osv):
- _name ='hr_skill.evaluation'
- _columns = {
- 'name': fields.char('Evaluation name', size=64,required=True),
- 'date': fields.date('Date',required=True),
- 'interviewer_name': fields.char('Evaluator', size=64,required=True),
- 'interviewee_name': fields.char('Evaluated People', size=64,required=True),
- 'employee_id': fields.many2one('hr.employee', 'Evaluated Employee'),
- 'note': fields.text('Notes'),
- 'reference': fields.char('Reference', size=64),
- 'category_id': fields.many2one('hr_skill.evaluation.category', 'Category', change_default=True),
- 'experience_ids': fields.one2many('hr_skill.evaluation.experience','evaluation_id','Experience'),
- 'skill_ids': fields.one2many('hr_skill.evaluation.skill','evaluation_id','Skill'),
-
- }
- def onchange_employee_id(self, cr, uid, ids, employee_id):
- if not employee_id:
- return {}
- empl = self.pool.get('hr.employee').browse(cr, uid, employee_id)
- return {'value': {'interviewee_name':empl.name} }
-
-hr_skill_evaluation()
-
-# Profile
-# eg : management, web-dev.
-# each profile is associated with several couple skill - weight
-class hr_skill_profile(osv.osv):
- _name ='hr_skill.profile'
- _columns = {
- 'name': fields.char('Name', size=64, required=True),
- 'skill_ids': fields.one2many('hr_skill.profile.skill','profile_id','Skills'),
- }
-hr_skill_profile()
-
-
-# Position
-# eg : Senior web-dev, junior logistician
-# a position is associated to one (or several) profile
-class hr_skill_position(osv.osv):
- _name ='hr_skill.position'
- _columns = {
- 'name': fields.char('Name', size=64, required=True),
- 'employee_id': fields.many2one('hr.employee', 'Assigned Employee'),# ?? pq un many2one ?
- 'profile_ids': fields.one2many('hr_skill.position.profile', 'position_id', 'Profiles'),
- 'status': fields.selection([('open','Open'), ('assigned','Assigned'), ('unused','Unused')], 'Status'),
- }
-hr_skill_position()
-
-
-
-# definitition des relations :
-class hr_skill_position_profile(osv.osv):
- _name ='hr_skill.position.profile'
- _columns = {
- 'name': fields.char('Name', size=64),
- 'weight_id': fields.many2one('hr_skill.weight','Weight',required=True),
- 'position_id': fields.many2one('hr_skill.position','Position', ondelete='cascade',required=True),
- 'profile_id': fields.many2one('hr_skill.profile','Profile', ondelete='cascade',required=True) ,
- }
- def onchange_profile_id(self, cr, uid, ids, profile_id):
- if not profile_id:
- return {}
- prof = self.pool.get('hr_skill.profile').browse(cr, uid, profile_id)
- return {'value': {'name':prof.name} }
-hr_skill_position_profile()
-
-
-class hr_skill_experience_skill(osv.osv):
- _name ='hr_skill.experience.skill'
- _columns = {
- 'name': fields.char('Name', size=64, required=True),
- 'weight_id': fields.many2one('hr_skill.weight','Weight', required=True),
- 'skill_id': fields.many2one('hr_skill.skill','Skill', ondelete='cascade',required=True),
- 'experience_id': fields.many2one('hr_skill.experience','Experience', ondelete='cascade',required=True) ,
- }
- def onchange_skill_id(self, cr, uid, ids, skill_id):
- if not skill_id:
- return {}
- sk = self.pool.get('hr_skill.skill').browse(cr, uid, skill_id)
- return {'value': {'name':sk.name} }
-
-hr_skill_experience_skill()
-
-
-
-class hr_skill_profile_skill(osv.osv):
- _name ='hr_skill.profile.skill'
- _columns = {
- 'name': fields.char('Name', size=64),
- 'weight_id': fields.many2one('hr_skill.weight','Weight',required=True),
- 'profile_id': fields.many2one('hr_skill.profile','Profile', ondelete='cascade',required=True),
- 'skill_id': fields.many2one('hr_skill.skill','Skill', ondelete='cascade',required=True, domain=[('view','<>','view')]),
- }
-
- def onchange_skill_id(self, cr, uid, ids, skill_id):
- if not skill_id:
- return {}
- sk = self.pool.get('hr_skill.skill').browse(cr, uid, skill_id)
- return {'value': {'name':sk.name} }
-
-hr_skill_profile_skill()
-
-
-
-class hr_skill_position_profile(osv.osv):
- _name ='hr_skill.position.profile'
- _columns = {
- 'name': fields.char('Name', size=64),
- 'weight_id': fields.many2one('hr_skill.weight','Weight',required=True, ondelete='cascade'),
- 'position_id': fields.many2one('hr_skill.position','Position', ondelete='cascade',required=True),
- 'profile_id': fields.many2one('hr_skill.profile','Profile', ondelete='cascade',required=True),
- }
-hr_skill_profile_skill()
-
-
-
-class hr_skill_evaluation_experience(osv.osv):
- _name ='hr_skill.evaluation.experience'
- _columns = {
- 'name': fields.char('Name', size=64,required=True),
- 'weight_id': fields.many2one('hr_skill.weight','Weight',required=True),
- 'evaluation_id': fields.many2one('hr_skill.evaluation','Evaluation', ondelete='cascade', required=True),
- 'experience_id': fields.many2one('hr_skill.experience','Experience', ondelete='cascade', required=True),
- }
-
- def onchange_experience_id(self, cr, uid, ids, experience_id):
- if not experience_id:
- return {}
- exp = self.pool.get('hr_skill.experience').browse(cr, uid, experience_id)
- return {'value': {'name':exp.name} }
-
-hr_skill_evaluation_experience()
-
-
-
-class hr_skill_evaluation_skill(osv.osv):
- _name ='hr_skill.evaluation.skill'
- _columns = {
- 'name': fields.char('Name', size=64),
- 'weight_id': fields.many2one('hr_skill.weight','Weight',required=True),
- 'evaluation_id': fields.many2one('hr_skill.evaluation','Evaluation', ondelete='cascade', required=True),
- 'skill_id': fields.many2one('hr_skill.skill','Skill', ondelete='cascade', required=True),
- }
- def onchange_skill_id(self, cr, uid, ids, skill_id):
- if not skill_id:
- return {}
- sk = self.pool.get('hr_skill.skill').browse(cr, uid, skill_id)
- return {'value': {'name':sk.name} }
-
-hr_skill_evaluation_skill()
-
+ 'view': lambda self, cr, uid, context: 'view',
+ 'active': lambda self, cr, uid, context: 1
+ }
+hr_skill()
+
+
+class hr_employee(osv.osv):
+ _inherit = 'hr.employee'
+ _columns = {
+ 'skill_ids': fields.many2many('hr.skill', 'skill_employee_rel', 'employee_id', 'skill_id', 'Skills'),
+ }
+hr_employee()
# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4:
-
=== removed file 'hr_skill/hr_skill.skill.csv'
--- hr_skill/hr_skill.skill.csv 2008-03-18 12:53:47 +0000
+++ hr_skill/hr_skill.skill.csv 1970-01-01 00:00:00 +0000
@@ -1,12 +0,0 @@
-name,view,parent_id,active
-IT,view,,1
-Lang,view,,1
-Development,view,IT,1
-Germanique,view,Lang,1
-Latin,view,Lang,1
-Français,skill,Latin,1
-NL,skill,Germanique,1
-DE,skill,Germanique,1
-Network,skill,IT,1
-Python,skill,Development,1
-Erlang,skill,Development,1
=== removed file 'hr_skill/hr_skill.weight.category.csv'
--- hr_skill/hr_skill.weight.category.csv 2007-08-10 07:47:26 +0000
+++ hr_skill/hr_skill.weight.category.csv 1970-01-01 00:00:00 +0000
@@ -1,3 +0,0 @@
-name
-General
-Years
\ No newline at end of file
=== removed file 'hr_skill/hr_skill.weight.csv'
--- hr_skill/hr_skill.weight.csv 2007-08-10 07:47:26 +0000
+++ hr_skill/hr_skill.weight.csv 1970-01-01 00:00:00 +0000
@@ -1,8 +0,0 @@
-category_id,name,value
-General,Bad,0.01
-General,Fifty-fifty,0.5
-General,Good,1.0
-Years,None,
-Years,less than one,0.2
-Years,From 1 to 5,0.5
-Years,More than 5,0.7
\ No newline at end of file
=== removed file 'hr_skill/hr_skill_demo.xml'
--- hr_skill/hr_skill_demo.xml 2008-09-12 22:59:35 +0000
+++ hr_skill/hr_skill_demo.xml 1970-01-01 00:00:00 +0000
@@ -1,19 +0,0 @@
-<?xml version="1.0"?>
-<openerp>
-<data noupdate="1">
-
- <record id="hr_skill_wheight_category" model="hr_skill.weight.category">
- <field name="name">years</field>
- </record>
-
-<!-- <record id="stock_inventory_line_13" model="stock.inventory.line"> -->
-<!-- <field name="product_id" model="product.product" search="[('default_code','=','TOW1')]"/> -->
-<!-- <field name="product_uom" model="product.uom" search="[('name','=','Unit')]"/> -->
-<!-- <field name="inventory_id" ref="stock_inventory_0"/> -->
-<!-- <field name="product_qty">7.0</field> -->
-<!-- <field name="location_id" model="stock.location" search="[('name','=','Components')]"/> -->
-<!-- </record> -->
-
-
-</data>
-</openerp>
=== removed file 'hr_skill/hr_skill_report.xml'
--- hr_skill/hr_skill_report.xml 2008-09-12 22:59:35 +0000
+++ hr_skill/hr_skill_report.xml 1970-01-01 00:00:00 +0000
@@ -1,15 +0,0 @@
-<?xml version="1.0" encoding="iso-8859-1"?>
-<openerp>
-<data>
- <report
- id="report_evaluation"
- string="Evaluation report"
- model="hr_skill.evaluation"
- name="hr_skill.evaluation.report"
- rml="hr_skill/report/evaluation.rml"/>
-
-
-</data>
-</openerp>
-
-
=== modified file 'hr_skill/hr_skill_view.xml'
--- hr_skill/hr_skill_view.xml 2011-07-26 21:49:37 +0000
+++ hr_skill/hr_skill_view.xml 2013-11-11 22:43:26 +0000
@@ -1,40 +1,61 @@
<openerp>
-<data>
-
- <menuitem name="Skills Management" parent="hr.menu_hr_configuration" id="menu_hr_skill_mgt"/>
-
-<!-- defini le formulaire skill -->
+ <data>
+
+ <menuitem name="Skills Management"
+ parent="hr.menu_hr_configuration"
+ id="menu_hr_skill_mgt"/>
+
+ <!-- Employee -->
+
+ <record model="ir.ui.view" id="view_employee_skill_form">
+ <field name="name">hr.employee.skill.form</field>
+ <field name="model">hr.employee</field>
+ <field name="inherit_id" ref="hr.view_employee_form"/>
+ <field name="type">form</field>
+ <field name="arch" type="xml">
+ <notebook position="inside">
+ <page string="Skills">
+ <field name="skill_ids" nolabel="1" domain="[('view', '=', 'skill')]">
+ <tree>
+ <field name="name"/>
+ </tree>
+ </field>
+ </page>
+ </notebook>
+ </field>
+ </record>
+
+ <!-- Skill -->
+
<record model="ir.ui.view" id="view_skill_form">
- <field name="name">hr_skill.skill.form</field>
- <field name="model">hr_skill.skill</field>
+ <field name="name">hr.skill.form</field>
+ <field name="model">hr.skill</field>
<field name="type">form</field>
<field name="arch" type="xml">
- <form string="Skills">
+ <form string="Skill">
<field name="name" select="1" colspan="1"/>
<field name="active" select="1" />
<newline/>
<field name="parent_id" select="1"/>
- <field name="weight_category_id" select="1"/>
<field name="view" select="1"/>
</form>
</field>
</record>
-<!-- defini une action pr skill ds le menu principal -->
+
<record model="ir.actions.act_window" id="open_view_skill_form">
- <field name="res_model">hr_skill.skill</field>
+ <field name="res_model">hr.skill</field>
<field name="view_type">form</field>
- <field name="view_mode">form,tree</field>
+ <field name="view_mode">tree,form</field>
</record>
-<!-- defini l'entree skill ds le menu principal -->
-
- <menuitem name="Skills" parent="menu_hr_skill_mgt" id="menu_open_view_skill_form" action="open_view_skill_form"/>
-
-
-
-<!-- defini la vue en arbre des skills-->
+
+ <menuitem name="Skills"
+ parent="menu_hr_skill_mgt"
+ id="menu_open_view_skill_form"
+ action="open_view_skill_form"/>
+
<record model="ir.ui.view" id="view_hr_skill_tree">
- <field name="name">hr_skill.skill.tree</field>
- <field name="model">hr_skill.skill</field>
+ <field name="name">hr.skill.tree</field>
+ <field name="model">hr.skill</field>
<field name="type">tree</field>
<field name="field_parent">child_ids</field>
<field name="arch" type="xml">
@@ -44,294 +65,35 @@
</tree>
</field>
</record>
-<!-- associe la vue en arbre des skills au bouton correspondant ds le menu principal -->
+
<record model="ir.actions.act_window" id="open_view_skill_tree">
<field name="name">Skills structure</field>
- <field name="res_model">hr_skill.skill</field>
+ <field name="res_model">hr.skill</field>
<field name="view_type">tree</field>
<field name="view_id" ref="view_hr_skill_tree"/>
<field name="domain">[('parent_id','=',False)]</field>
</record>
-<!-- ajoute une entree "skill tree" dans le menu principal -->
- <menuitem name="Skills Structure" parent="menu_hr_skill_mgt" id="menu_open_view_skill_tree" action="open_view_skill_tree"/>
-
-
-
-
-<!-- defini le formulaire position -->
- <record model="ir.ui.view" id="view_position_form">
- <field name="name">hr_skill.position.form</field>
- <field name="model">hr_skill.position</field>
- <field name="type">form</field>
- <field name="arch" type="xml">
- <form string="Positions">
- <field name="name" select="1" colspan="4"/>
- <field name="profile_ids" colspan="4">
- <tree string="Profiles" editable="top">
- <field name="profile_id" on_change="onchange_profile_id(profile_id)"/>
- <field name="weight_id"/>
- <field name="name"/>
- </tree>
- </field>
- </form>
- </field>
- </record>
-<!-- defini une action pr position ds le menu principal -->
- <record model="ir.actions.act_window" id="open_view_position_form">
- <field name="res_model">hr_skill.position</field>
- <field name="view_type">form</field>
- <field name="view_mode">form,tree</field>
- </record>
-<!-- defini l'entree position ds le menu principal -->
- <menuitem name="Positions" parent="menu_hr_skill_mgt" id="menu_open_view_position_form" action="open_view_position_form"/>
-
-<!-- defini le formulaire profile -->
- <record model="ir.ui.view" id="view_profile_form">
- <field name="name">hr_skill.profile.form</field>
- <field name="model">hr_skill.profile</field>
- <field name="type">form</field>
- <field name="arch" type="xml">
- <form string="Profile">
- <field name="name" select="1" colspan="4"/>
- <field name="skill_ids" colspan="4">
- <tree string="Skills" editable="top">
- <field name="skill_id" on_change="onchange_skill_id(skill_id)"/>
- <field name="weight_id"/>
- <field name="name"/>
- </tree>
- </field>
- </form>
- </field>
- </record>
-
-<!-- defini une action pr profile ds le menu principal -->
- <record model="ir.actions.act_window" id="open_view_profile_form">
- <field name="res_model">hr_skill.profile</field>
- <field name="view_type">form</field>
- <field name="view_mode">form,tree</field>
- </record>
-<!-- defini l'entree profiles ds le menu principal -->
- <menuitem name="Profiles" parent="menu_hr_skill_mgt" id="menu_open_view_profiles_form" action="open_view_profile_form"/>
-
-
-
-<!-- defini le formulaire weight categories -->
- <record model="ir.ui.view" id="view_weight_category_form">
- <field name="name">hr_skill.weight.category.form</field>
- <field name="model">hr_skill.weight.category</field>
- <field name="type">form</field>
- <field name="arch" type="xml">
- <form string="Weight Categories">
- <field name="name" select="1" colspan="2"/>
- </form>
- </field>
- </record>
-<!-- defini une action pr weight categories ds le menu principal -->
- <record model="ir.actions.act_window" id="open_view_weight_category_form">
- <field name="res_model">hr_skill.weight.category</field>
- <field name="view_type">form</field>
- <field name="view_mode">form,tree</field>
- </record>
-<!-- defini l'entree weight categories ds le menu principal -->
- <menuitem name="Weight Categories" parent="menu_hr_skill_mgt" id="menu_open_view_weight_category_form" action="open_view_weight_category_form"/>
-
-
-<!-- defini le formulaire weight -->
- <record model="ir.ui.view" id="view_weight_form">
- <field name="name">hr_skill.weight.form</field>
- <field name="model">hr_skill.weight</field>
- <field name="type">form</field>
- <field name="arch" type="xml">
- <form string="Weight">
- <field name="name" select="1"/>
- <newline/>
- <field name="value" select="1"/>
- <field name="category_id" select="1"/>
- </form>
- </field>
-
- </record>
-<!-- defini une action pr weight categories ds le menu principal -->
- <record model="ir.actions.act_window" id="open_view_weight_form">
- <field name="res_model">hr_skill.weight</field>
- <field name="view_type">form</field>
- <field name="view_mode">form,tree</field>
- </record>
-<!-- defini l'entree weight categories ds le menu principal -->
- <menuitem name="Weights" parent="menu_hr_skill_mgt" id="menu_open_view_weight_form" action="open_view_weight_form"/>
-
-
-
-<!-- defini le formulaire experience categories -->
- <record model="ir.ui.view" id="view_experience_category_form">
- <field name="name">hr_skill.experience.category.form</field>
- <field name="model">hr_skill.experience.category</field>
- <field name="type">form</field>
- <field name="arch" type="xml">
- <form string="Experience Categories">
- <field name="name" select="1" colspan="2"/>
- </form>
- </field>
- </record>
-<!-- defini une action pr experience categories ds le menu principal -->
- <record model="ir.actions.act_window" id="open_view_experience_category_form">
- <field name="res_model">hr_skill.experience.category</field>
- <field name="view_type">form</field>
- <field name="view_mode">form,tree</field>
- </record>
-<!-- defini l'entree experience categories ds le menu principal -->
- <menuitem name="Experience Categories" parent="menu_hr_skill_mgt" id="menu_open_view_experience_category_form" action="open_view_experience_category_form"/>
-
-
-
-
-<!-- defini le formulaire experience -->
- <record model="ir.ui.view" id="view_experience_form">
- <field name="name">hr_skill.experience.form</field>
- <field name="model">hr_skill.experience</field>
- <field name="type">form</field>
- <field name="arch" type="xml">
- <form string="Experiences">
- <field name="name" select="1" />
- <field name="category_id" select="1" />
- <field name="skill_ids" colspan="4">
- <tree string="Skills" editable="top">
- <field name="skill_id" on_change="onchange_skill_id(skill_id)"/>
- <field name="weight_id"/>
- <field name="name"/>
- </tree>
- </field>
- </form>
- </field>
- </record>
-<!-- defini une action pr position ds le menu principal -->
- <record model="ir.actions.act_window" id="open_view_experience_form">
- <field name="res_model">hr_skill.experience</field>
- <field name="view_type">form</field>
- <field name="view_mode">form,tree</field>
- </record>
-<!-- defini l'entree position ds le menu principal -->
- <menuitem name="Experiences" parent="menu_hr_skill_mgt" id="menu_open_view_experience_form" action="open_view_experience_form"/>
-
-
-
-
-<!-- formulaire evaluation -->
- <record model="ir.ui.view" id="view_evalutation_form">
- <field name="name">hr_skill.evaluation.form</field>
- <field name="model">hr_skill.evaluation</field>
- <field name="type">form</field>
- <field name="arch" type="xml">
-
- <form string="Evaluation">
- <notebook>
- <page string="General Informations">
-
- <field name="name" select="1"/>
- <field name="date" select="1"/>
- <field name="interviewee_name" select="1"/>
- <field name="interviewer_name" select="1"/>
- <field name="employee_id" on_change="onchange_employee_id(employee_id)"/>
- <field name="reference" />
- <field name="category_id" />
- <field name="note" colspan="4"/>
-
-
- </page>
- <page string="Skill and experiences">
- <field name="experience_ids" colspan="4" nolabel="1">
- <tree string="Experiences"
- editable="top">
- <field name="experience_id" on_change="onchange_experience_id(experience_id)"/>
- <field name="weight_id"/>
- <field name="name"/>
- </tree>
- </field>
- <field name="skill_ids" colspan="4" nolabel="1">
- <tree string="Skills"
- editable="top">
- <field name="skill_id" on_change="onchange_skill_id(skill_id)"/>
- <field name="weight_id"/>
- <field name="name"/>
- </tree>
- </field>
-
- </page>
- </notebook>
- </form>
- </field>
- </record>
-
-
-
-<!-- arbre evaluation -->
- <record model="ir.ui.view" id="view_evalutation_tree">
- <field name="name">hr_skill.evaluation.tree</field>
- <field name="model">hr_skill.evaluation</field>
- <field name="type">tree</field>
- <field name="arch" type="xml">
- <tree string="Evaluation">
- <field name="name" select="1"/>
- <field name="date" select="1"/>
- <field name="interviewee_name" select="1"/>
- <field name="interviewer_name" select="1"/>
- <field name="category_id" />
- </tree>
- </field>
- </record>
-
-
-
-<!-- defini une action pr evaluation ds le menu principal -->
- <record model="ir.actions.act_window" id="open_view_evaluation_form">
- <field name="res_model">hr_skill.evaluation</field>
- <field name="view_type">form</field>
- <field name="view_mode">form,tree</field>
- </record>
-<!-- defini l'entree evaluations ds le menu principal -->
- <menuitem name="Evaluations" parent="menu_hr_skill_mgt" id="menu_open_view_evaluation_form" action="open_view_evaluation_form"/>
-
- <act_window name="Skill weight"
- domain="[('category_id', '=', active_id)]"
- res_model="hr_skill.weight"
- src_model="hr_skill.weight.category"
- id="act_hr_skill_weight_category_2_hr_skill_weight"/>
-
-
-</data>
+
+ <record id="hr_employee_normal_action_tree" model="ir.actions.act_window">
+ <field name="name">Employees</field>
+ <field name="type">ir.actions.act_window</field>
+ <field name="res_model">hr.employee</field>
+ <field name="view_type">form</field>
+ <field name="view_mode">tree,form</field>
+ <field name="domain">[('skill_ids','=', active_ids)]</field>
+ </record>
+
+ <record id="hr_employee_skill_open" model="ir.values">
+ <field eval="'tree_but_open'" name="key2"/>
+ <field eval="'hr.skill'" name="model"/>
+ <field name="name">Employees by Skills</field>
+ <field eval="'ir.actions.act_window,%d'%hr_employee_normal_action_tree" name="value"/>
+ </record>
+
+ <menuitem name="Skills Structure"
+ parent="menu_hr_skill_mgt"
+ id="menu_open_view_skill_tree"
+ action="open_view_skill_tree"/>
+
+ </data>
</openerp>
-
-
-
-
-
-<!-- complete le formulaire employee -->
-<!-- <record model="ir.ui.view" id="view_hr_employe"> -->
-<!-- <field name="name">hr_skill.employee.inherit.form</field> -->
-<!-- <field name="model">hr.employee</field> -->
-<!-- <field name="inherit_id" ref="hr.view_employee_form" /> -->
-<!-- <field name="type">form</field> -->
-<!-- <field name="priority" eval="64"/> -->
-<!-- <field name="arch" type="xml"> -->
-<!-- <page string="Holidays" position="after"> -->
-<!-- <page string="Skills"> -->
-<!-- <field -->
-<!-- name="experience_ids"> -->
-<!-- <form string="Employee experience"> -->
-<!-- <field name="name"/> -->
-<!-- <field name="experience_id" on_change="onchange_experience_id(experience_id)"/> -->
-<!-- <field name="weight_id" /> -->
-<!-- </form> -->
-<!-- <tree string="Employee experience" editable="top"> -->
-<!-- <field name="name" /> -->
-<!-- <field name="experience_id" on_change="onchange_experience_id(experience_id)"/> -->
-<!-- <field name="weight_id" /> -->
-<!-- </tree> -->
-
-
-<!-- </field> -->
-<!-- <field name="skill_ids" /> -->
-<!-- </page> -->
-<!-- </page> -->
-<!-- </field> -->
-<!-- </record> -->
=== removed file 'hr_skill/hrskill.py'
--- hr_skill/hrskill.py 2011-03-28 12:39:13 +0000
+++ hr_skill/hrskill.py 1970-01-01 00:00:00 +0000
@@ -1,92 +0,0 @@
-# -*- encoding: utf-8 -*-
-##############################################################################
-#
-# OpenERP, Open Source Management Solution
-# Copyright (C) 2004-2009 Tiny SPRL (<http://tiny.be>).
-#
-# This program is free software: you can redistribute it and/or modify
-# it under the terms of the GNU Affero General Public License as
-# published by the Free Software Foundation, either version 3 of the
-# License, or (at your option) any later version.
-#
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-# GNU Affero General Public License for more details.
-#
-# You should have received a copy of the GNU Affero General Public License
-# along with this program. If not, see <http://www.gnu.org/licenses/>.
-#
-##############################################################################
-
-from osv import fields,osv
-
-
-def _currency_get(self, cr, uid, context={}):
- obj = self.pool.get('res.currency')
- ids = obj.search(cr, uid, [])
- res = obj.read(cr, uid, ids, ['name'], context)
- return [(r['name'],r['name']) for r in res]
-
-def _status_get(self, cr, uid, context={}):
- obj = self.pool.get('employee.status')
- ids = obj.search(cr, uid, [])
- res = obj.read(cr, uid, ids, ['name'], context)
- return [(r['name'],r['name']) for r in res]
-
-class hr_lang(osv.osv):
- _description ='Languages'
- _name = 'hr.lang'
- _columns = {
-
- 'name':fields.char('Language',size=64),
- }
-hr_lang()
-
-class emp_lang(osv.osv):
- _description ='Languages'
- _name = 'emp.lang'
- _columns = {
- 'ii_id': fields.many2one('hr.employee','languages known'),
- 'name':fields.many2one('hr.lang','Language'),
- 'read': fields.boolean('Read'),
- 'write': fields.boolean('Write'),
- 'speak': fields.boolean('Speak'),
- }
-emp_lang()
-
-class hr_scale(osv.osv):
- _description ='Pay Scales'
- _name='hr.scale'
-
- _columns = {
- 'code' : fields.char('Code', size=64,),
- 'name' : fields.char('Name', size=64),
- 'cur' : fields.selection(_currency_get, 'Currency', method=True),
- 'min_sal' : fields.integer('Minimum Salary'),
- 'max_sal' : fields.integer('Maximum Salary'),
- 'increase' : fields.integer('Step Increase'),
-
- }
-hr_scale()
-
-class hr_employee(osv.osv):
- _description ='Employees'
- _name='hr.employee'
- _inherit='hr.employee'
- _columns = {
- 'lang_id':fields.one2many('emp.lang','ii_id','Languages Known'),
- 'leavedate' : fields.date('Leaved on'),
- 'status' : fields.selection(_status_get, 'Employee Status', method=True,),
- 'payscale':fields.many2one('hr.scale','Scale'),
- }
-hr_employee()
-
-class employee_status(osv.osv):
- _name = 'employee.status'
- _columns = {
- 'name' : fields.char('Status Name', size=128, required=True)
- }
-employee_status()
-# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4:
-
=== removed file 'hr_skill/hrskill_view.xml'
--- hr_skill/hrskill_view.xml 2008-12-20 05:27:38 +0000
+++ hr_skill/hrskill_view.xml 1970-01-01 00:00:00 +0000
@@ -1,220 +0,0 @@
-<?xml version="1.0"?>
-<openerp>
- <data>
- <record model="ir.ui.view" id="view_employee_form1">
- <field name="name">hr.employee.form</field>
- <field name="model">hr.employee</field>
- <field name="type">form</field>
- <field name="inherit_id" ref="hr.view_employee_form"/>
- <field name="arch" type="xml">
- <notebook position="inside">
- <page string="Language Details">
- <field name="lang_id" colspan="4" nolabel="1"/>
-
- </page>
- </notebook>
- </field>
- </record>
-
-<!--Employee Language View -->
- <record model="ir.ui.view" id="view_emp_lang_form">
- <field name="name">Languages</field>
- <field name="model">emp.lang</field>
- <field name="type">form</field>
- <field name="arch" type="xml">
- <form string="Language">
- <field name="name"/>
- <field name="read"/>
- <field name="write"/>
- <field name="speak"/>
- </form>
- </field>
- </record>
-
-<record model="ir.ui.view" id="view_emp_lang_tree">
- <field name="name">Languages</field>
- <field name="model">emp.lang</field>
- <field name="type">tree</field>
- <field name="arch" type="xml">
- <tree string="Language" editable="bottom">
- <field name="name"/>
- <field name="read"/>
- <field name="write"/>
- <field name="speak"/>
- </tree>
- </field>
-</record>
-
-<!-- Language View -->
-
-
-<record model="ir.ui.view" id="view_hr_lang_form">
- <field name="name">Languages</field>
- <field name="model">hr.lang</field>
- <field name="type">form</field>
- <field name="arch" type="xml">
- <form string="Language">
- <field name="name"/>
- </form>
- </field>
-</record>
-
-<record model="ir.ui.view" id="view_hr_lang_tree">
- <field name="name">Languages</field>
- <field name="model">hr.lang</field>
- <field name="type">tree</field>
- <field name="arch" type="xml">
- <tree string="Language">
- <field name="name"/>
-
- </tree>
- </field>
-</record>
-
-<record model="ir.actions.act_window" id="lang_view_id">
- <field name="res_model">hr.lang</field>
- <field name="view_type">form</field>
- <field name="view_id" ref="view_hr_lang_form" />
-</record>
-<menuitem name="Languages" parent="hr_skill.menu_hr_skill_mgt" id="menu_edit_lang" action="lang_view_id" />
-
-
-<record model="ir.ui.view" id="view_employee_grade_form1">
- <field name="name">employee.grade.form1.inherit</field>
- <field name="model">hr.employee</field>
- <field name="type">form</field>
- <field name="inherit_id" ref="hr.view_employee_form"/>
- <field name="arch" type="xml">
- <notebook position="inside">
- <page string="Pay Grade">
- <separator string="Employee Payment" colspan="4"/>
- <field name="payscale" select="1"/>
- <separator string="Employee Status" colspan="4"/>
- <field name="status"/>
- </page>
- </notebook>
- </field>
-</record>
-
-<record model="ir.ui.view" id="view_hr_scale_form">
- <field name="name">Pay Scales</field>
- <field name="model">hr.scale</field>
- <field name="type">form</field>
- <field name="arch" type="xml">
- <form string="Pay Scales">
- <field name="code" select="1"/>
- <field name="name"/>
- <field name="cur"/>
- <field name="min_sal"/>
- <field name="max_sal"/>
- <field name="increase" select="1"/>
- </form>
- </field>
-</record>
-
-<record model="ir.ui.view" id="view_hr_scale_tree">
- <field name="name">Pay Scales</field>
- <field name="model">hr.scale</field>
- <field name="type">tree</field>
- <field name="arch" type="xml">
- <tree string="Pay Scales">
- <field name="code" select="1"/>
- <field name="name"/>
- <field name="cur"/>
- <field name="min_sal"/>
- <field name="max_sal"/>
- <field name="increase" select="1"/>
- </tree>
- </field>
-</record>
-
-<record model="ir.actions.act_window" id="scale_view_id">
- <field name="res_model">hr.scale</field>
- <field name="view_type">form</field>
- <field name="view_id" ref="view_hr_scale_form" />
-</record>
-<menuitem name="Scale Grade " parent="hr_skill.menu_hr_skill_mgt" id="menu_edit_scale" action="scale_view_id" />
-
-<!-- <record model="ir.ui.view" id="view_employee_evaluation_form">-->
-<!-- <field name="name">employee.evaluation.form.inherit</field>-->
-<!-- <field name="model">hr_skill.evaluation</field>-->
-<!-- <field name="type">form</field>-->
-<!-- <field name="inherit_id" ref="hr_skill.view_evalutation_form"/> -->
-<!-- <field name="arch" type="xml">-->
-<!-- <field name="skill_ids" colspan="4" nolanel="1" position="after">-->
-<!-- <field name="quali_ids" widget="one2many_list">-->
-<!-- <tree string="Qualification"-->
-<!-- editable="top" nolabel="1" >-->
-<!-- <field name="name"/>-->
-<!-- <field name="rank"/>-->
-<!-- <field name="per"/>-->
-<!-- </tree>-->
-<!-- </field>-->
-<!-- </field>-->
-<!-- </field>-->
-<!-- </record>-->
-<!-- -->
-
-<record model="ir.ui.view" id="view_employee_status_form">
- <field name="name">employee.status.form</field>
- <field name="model">employee.status</field>
- <field name="type">form</field>
- <field name="arch" type="xml">
- <form string="Status">
- <field name="name" select="1"/>
- </form>
- </field>
-</record>
-
-<record model="ir.actions.act_window" id="open_view_employee_status">
- <field name="res_model">employee.status</field>
- <field name="view_type">form</field>
- <field name="view_mode">form</field>
- <field name="view_id" ref="view_employee_status_form"/>
-</record>
-<menuitem name="Employees Status" parent="hr_skill.menu_hr_skill_mgt" id="menu_open_view_employee_status" action="open_view_employee_status" />
-
-<!-- <record model="ir.ui.view" id="view_employee_quali_form">-->
-<!-- <field name="name">employee.quali.form</field>-->
-<!-- <field name="model">emp.quali</field>-->
-<!-- <field name="type">form</field>-->
-<!-- <field name="arch" type="xml">-->
-<!-- <form string="Qualification">-->
-<!-- <field name="name" select="1"/>-->
-<!-- </form>-->
-<!-- </field>-->
-<!-- </record>-->
-
-<!-- <record model="ir.actions.act_window" id="open_view_employee_quali">-->
-<!-- <field name="res_model">emp.quali</field>-->
-<!-- <field name="view_type">form</field>-->
-<!-- <field name="view_mode">form</field>-->
-<!-- <field name="view_id" ref="view_employee_quali_form"/>-->
-<!-- </record>-->
-<!-- <menuitem name="Human Resources/Configuration/Employees Qualification" id="menu_open_view_employee_quali" action="open_view_employee_quali" />-->
-<!-- -->
-<!-- <record model="ir.ui.view" id="view_employee_qualification_form">-->
-<!-- <field name="name">employee.qualification.form</field>-->
-<!-- <field name="model">employee.qualification</field>-->
-<!-- <field name="type">form</field>-->
-<!-- <field name="arch" type="xml">-->
-<!-- <form string="Qualification/Certification">-->
-<!-- <field name="name" select="1"/>-->
-<!-- <field name="rank"/>-->
-<!-- <field name="per"/>-->
-<!-- <field name="evaluation_id"/>-->
-<!-- </form>-->
-<!-- </field>-->
-<!-- </record>-->
-<!-- -->
-<!-- <record model="ir.actions.act_window" id="open_view_employee_qualification">-->
-<!-- <field name="res_model">employee.qualification</field>-->
-<!-- <field name="view_type">form</field>-->
-<!-- <field name="view_mode">form</field>-->
-<!-- <field name="view_id" ref="view_employee_qualification_form"/>-->
-<!-- </record>-->
-<!-- <menuitem name="Human Resources/Configuration/Skills Management/Qualification" id="menu_open_view_employee_qualification" action="open_view_employee_qualification" />-->
-<!-- -->
-
-</data>
-</openerp>
=== removed file 'hr_skill/lang_wiz_view.xml'
--- hr_skill/lang_wiz_view.xml 2008-09-12 22:59:35 +0000
+++ hr_skill/lang_wiz_view.xml 1970-01-01 00:00:00 +0000
@@ -1,31 +0,0 @@
-<?xml version="1.0"?>
-<openerp>
- <data>
-
- <wizard
- string=" Language Report"
- model="hr.employee"
- name="langget" id="lang_id"/>
-
- <report
- id="report_evaluation"
- string="Evaluation report"
- model="hr_skill.evaluation"
- name="hr_skill.evaluation.report"
- rml="hr_skill/report/evaluation.rml"/>
-
- <wizard string="Job Duration"
- model="hr.employee"
- name="employee.date.check"
- id="wizard_employee_date_check"/>
-
- <wizard
- string="Employee Skill"
- model="hr_skill.evaluation"
- name="empskill" id="skill_emp_id"/>
-
-
- </data>
-</openerp>
-
-
=== removed file 'hr_skill/old-hr_skill.skill.csv'
--- hr_skill/old-hr_skill.skill.csv 2007-08-10 07:47:26 +0000
+++ hr_skill/old-hr_skill.skill.csv 1970-01-01 00:00:00 +0000
@@ -1,12 +0,0 @@
-name,view,parent_id,
-Latin,view,Lang,
-Français,skill,Latin,
-IT,view,,
-NL,skill,Germanique,
-DE,skill,Germanique,
-Lang,view,,
-Network,skill,IT,
-Development,view,IT,
-Python,skill,Development,
-Erlang,skill,Development,
-Germanique,view,Lang,
\ No newline at end of file
=== removed file 'hr_skill/old-hr_skill_view.xml'
--- hr_skill/old-hr_skill_view.xml 2008-09-12 22:59:35 +0000
+++ hr_skill/old-hr_skill_view.xml 1970-01-01 00:00:00 +0000
@@ -1,148 +0,0 @@
-<openerp>
-<data>
-
-<!-- defini le formulaire skill -->
- <record model="ir.ui.view" id="view_skill_form">
- <field name="name">hr_skill.skill.form</field>
- <field name="model">hr_skill.skill</field>
- <field name="type">form</field>
- <field name="arch" type="xml">
- <form string="Skills">
- <field name="name" select="1" colspan="4"/>
- <field name="parent_id" select="1"/>
- <field name="view" select="1"/>
- <field name="child_ids" colspan="4"/>
- </form>
- </field>
- </record>
-<!-- defini une action pr skill ds le menu principal -->
- <record model="ir.actions.act_window" id="open_view_skill_form">
- <field name="name">hr_skill.skill</field>
- <field name="res_model">hr_skill.skill</field>
- <field name="view_type">form</field>
- <field name="view_mode">form,tree</field>
- </record>
-<!-- defini l'entree skill ds le menu principal -->
- <menuitem name="Human Resources/Configuration/Skills" id="menu_open_view_skill_form" action="open_view_skill_form"/>
-
-
-
-<!-- defini la vue en arbre des skills-->
- <record model="ir.ui.view" id="view_hr_skill_tree">
- <field name="name">hr_skill.skill.tree</field>
- <field name="model">hr_skill.skill</field>
- <field name="type">tree</field>
- <field name="field_parent">child_ids</field>
- <field name="arch" type="xml">
- <tree string="Skills">
- <field name="name"/>
- <field name="view"/>
- </tree>
- </field>
- </record>
-<!-- associe la vue en arbre des skills au bouton correspondant ds le menu principal -->
- <record model="ir.actions.act_window" id="open_view_skill_tree">
- <field name="name">hr_skill.skill.tree</field>
- <field name="res_model">hr_skill.skill</field>
- <field name="view_type">tree</field>
- <field name="view_id" ref="view_hr_skill_tree"/>
- <field name="domain">[('parent_id','=',False)]</field>
- </record>
-<!-- ajoute une entree "skill tree" dans le menu principal -->
- <menuitem name="Human Resources/Configuration/Skills Structure" id="menu_open_view_skill_tree" action="open_view_skill_tree"/>
-
-
-
-
-<!-- defini le formulaire position -->
- <record model="ir.ui.view" id="view_position_form">
- <field name="name">hr_skill.position.form</field>
- <field name="model">hr_skill.position</field>
- <field name="type">form</field>
- <field name="arch" type="xml">
- <form string="Positions">
- <field name="name" select="1" colspan="4"/>
- <field name="profile_ids" colspan="4">
- <tree string="Profiles" editable="top">
- <field name="name"/>
- <field name="weight_id"/>
- <field name="profile_id" on_change="onchange_profile_id(profile_id)"/>
- </tree>
- </field>
- </form>
- </field>
- </record>
-<!-- defini une action pr position ds le menu principal -->
- <record model="ir.actions.act_window" id="open_view_position_form">
- <field name="name">hr_skill.position</field>
- <field name="res_model">hr_skill.position</field>
- <field name="view_type">form</field>
- <field name="view_mode">form,tree</field>
- </record>
-<!-- defini l'entree position ds le menu principal -->
- <menuitem name="Human Resources/Configuration/Positions" id="menu_open_view_position_form" action="open_view_position_form"/>
-
-
-
-<!-- defini le formulaire profile -->
- <record model="ir.ui.view" id="view_profile_form">
- <field name="name">hr_skill.profile.form</field>
- <field name="model">hr_skill.profile</field>
- <field name="type">form</field>
- <field name="view_mode">form,tree</field>
- <field name="arch" type="xml">
- <form string="Profile">
- <field name="name" select="1" colspan="4"/>
- <field name="skill_ids" colspan="4">
- <tree string="Skills" editable="top">
- <field name="name"/>
- <field name="weight_id"/>
- <field name="skill_id" on_change="onchange_skill_id(skill_id)"/>
- </tree>
- </field>
- </form>
- </field>
-
- </record>
-<!-- defini une action pr profile ds le menu principal -->
- <record model="ir.actions.act_window" id="open_view_profile_form">
- <field name="name">hr_skill.profile</field>
- <field name="res_model">hr_skill.profile</field>
- <field name="view_type">form</field>
- <field name="view_mode">form,tree</field>
- </record>
-<!-- defini l'entree profiles ds le menu principal -->
- <menuitem
- name="Human Resources/Configuration/Profiles"
- id="menu_open_view_profiles_form"
- action="open_view_profile_form"/>
-
-
-
-<!-- defini le formulaire weight -->
- <record model="ir.ui.view" id="view_weight_category_form">
- <field name="name">hr_skill.weight_category.form</field>
- <field name="model">hr_skill.weight_category</field>
- <field name="type">form</field>
- <field name="view_mode">form,tree</field>
- </record>
-<!-- defini une action pr profile ds le menu principal -->
- <record model="ir.actions.act_window" id="open_view_weight_category_form">
- <field name="name">hr_skill.weight_category</field>
- <field name="res_model">hr_skill.weight_category</field>
- <field name="view_type">form</field>
- <field name="view_mode">form,tree</field>
- </record>
-<!-- defini l'entree profiles ds le menu principal -->
- <menuitem
- name="Human Resources/Configuration/Weight Wategories"
- id="menu_open_view_weight_category_form"
- action="open_view_weight_category_form"/>
-
-
-
-
-
-
-</data>
-</openerp>
=== removed directory 'hr_skill/report'
=== removed file 'hr_skill/report/__init__.py'
--- hr_skill/report/__init__.py 2009-10-15 11:25:40 +0000
+++ hr_skill/report/__init__.py 1970-01-01 00:00:00 +0000
@@ -1,25 +0,0 @@
-# -*- encoding: utf-8 -*-
-##############################################################################
-#
-# OpenERP, Open Source Management Solution
-# Copyright (C) 2004-2009 Tiny SPRL (<http://tiny.be>).
-#
-# This program is free software: you can redistribute it and/or modify
-# it under the terms of the GNU Affero General Public License as
-# published by the Free Software Foundation, either version 3 of the
-# License, or (at your option) any later version.
-#
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-# GNU Affero General Public License for more details.
-#
-# You should have received a copy of the GNU Affero General Public License
-# along with this program. If not, see <http://www.gnu.org/licenses/>.
-#
-##############################################################################
-
-import employeereport
-import skillreport
-# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4:
-
=== removed file 'hr_skill/report/datereport.rml'
--- hr_skill/report/datereport.rml 2013-09-21 03:17:07 +0000
+++ hr_skill/report/datereport.rml 1970-01-01 00:00:00 +0000
@@ -1,142 +0,0 @@
-<?xml version="1.0"?>
-<document filename="test.pdf">
- <template pageSize="(595.0,842.0)" title="Test" author="Martin Simon" allowSplitting="20">
- <pageTemplate id="first">
- <frame id="first" x1="57.0" y1="57.0" width="481" height="728"/>
- </pageTemplate>
- </template>
- <stylesheet>
- <blockTableStyle id="Standard_Outline">
- <blockAlignment value="LEFT"/>
- <blockValign value="TOP"/>
- </blockTableStyle>
- <blockTableStyle id="Table4">
- <blockAlignment value="LEFT"/>
- <blockValign value="TOP"/>
- </blockTableStyle>
- <blockTableStyle id="Table1">
- <blockAlignment value="LEFT"/>
- <blockValign value="TOP"/>
- <lineStyle kind="GRID" colorName="black"/>
- <blockBackground colorName="#b3b3b3" start="0,0" stop="0,0"/>
- <blockBackground colorName="#b3b3b3" start="1,0" stop="1,0"/>
- <blockBackground colorName="#b3b3b3" start="2,0" stop="2,0"/>
- <blockBackground colorName="#b3b3b3" start="3,0" stop="3,0"/>
- <blockBackground colorName="#ffffff" start="0,1" stop="0,1"/>
- <blockBackground colorName="#ffffff" start="1,1" stop="1,1"/>
- <blockBackground colorName="#ffffff" start="2,1" stop="2,1"/>
- <blockBackground colorName="#ffffff" start="3,1" stop="3,1"/>
- </blockTableStyle>
- <initialize>
- <paraStyle name="all" alignment="justify"/>
- </initialize>
- <paraStyle name="P1" fontName="Times-Roman" fontSize="10.0" leading="13"/>
- <paraStyle name="P2" rightIndent="-3.0" leftIndent="0.0" fontName="Times-Roman"/>
- <paraStyle name="P3" rightIndent="-3.0" leftIndent="0.0" fontName="Times-Roman" fontSize="10.0" leading="13"/>
- <paraStyle name="P4" rightIndent="-3.0" leftIndent="0.0" fontName="Times-Roman" fontSize="10.0" leading="13"/>
- <paraStyle name="P5" rightIndent="-3.0" leftIndent="0.0" fontName="Times-Roman" fontSize="18.0" leading="22"/>
- <paraStyle name="P6" fontName="Times-Roman" fontSize="11.0" leading="14" alignment="CENTER"/>
- <paraStyle name="P7" rightIndent="-3.0" leftIndent="0.0" fontName="Times-Roman" fontSize="18.0" leading="22"/>
- <paraStyle name="P8" fontName="Helvetica-Bold" fontSize="115%" leading="NaN" alignment="CENTER" spaceBefore="12.0" spaceAfter="6.0"/>
- <paraStyle name="P9" fontName="Times-Roman" fontSize="14.0" leading="17" alignment="CENTER"/>
- <paraStyle name="Standard" fontName="Times-Roman"/>
- <paraStyle name="Heading" fontName="Helvetica" fontSize="14.0" leading="17" spaceBefore="12.0" spaceAfter="6.0"/>
- <paraStyle name="Text body" fontName="Times-Roman" spaceBefore="0.0" spaceAfter="6.0"/>
- <paraStyle name="List" fontName="Times-Roman" spaceBefore="0.0" spaceAfter="6.0"/>
- <paraStyle name="Caption" fontName="Times-Italic" fontSize="12.0" leading="15" spaceBefore="6.0" spaceAfter="6.0"/>
- <paraStyle name="Index" fontName="Times-Roman"/>
- <paraStyle name="Heading 2" fontName="Helvetica-BoldOblique" fontSize="14.0" leading="17" spaceBefore="12.0" spaceAfter="6.0"/>
- <paraStyle name="Heading 1" fontName="Helvetica-Bold" fontSize="115%" leading="NaN" spaceBefore="12.0" spaceAfter="6.0"/>
- <paraStyle name="Table Contents" fontName="Times-Roman"/>
- <paraStyle name="Table Heading" fontName="Times-Roman" alignment="CENTER"/>
- </stylesheet>
- <story>
- <para style="Standard">
- <font color="white"> </font>
- </para>
- <blockTable colWidths="285.0,197.0" style="Table4">
- <tr>
- <td>
- <para style="P6">
- <font color="white"> </font>
- </para>
- </td>
- <td>
- <para style="P6">Date: [[ time.strftime('%d-%m-%Y') ]] </para>
- </td>
- </tr>
- <tr>
- <td>
- <para style="P6">
- <font color="white"> </font>
- </para>
- </td>
- <td>
- <para style="P6">Time : [[ time.strftime('%H:%M:%S') ]]</para>
- <para style="P6">
- <font color="white"> </font>
- </para>
- </td>
- </tr>
- </blockTable>
- <para style="P8">
- <font face="Times-Roman" size="20.0">Experience Report </font>
- </para>
- <para style="P5">
- <font color="white"> </font>
- </para>
- <para style="P5">
- <font color="white"> </font>
- </para>
- <para style="P5">
- <font color="white"> </font>
- </para>
- <para style="P5">
- <font color="white"> </font>
- </para>
- <para style="P4">
- <font color="white"> </font>
- </para>
- <blockTable colWidths="166.0,106.0,85.0,91.0" style="Table1">
- <tr>
- <td>
- <para style="P9">Employee Name</para>
- </td>
- <td>
- <para style="P9">Date of Joining</para>
- </td>
- <td>
- <para style="P9">Date Left </para>
- </td>
- <td>
- <para style="P9">Duration</para>
- </td>
- </tr>
- <tr>
- <td>
- <para style="P2">[[ repeatIn( get_data(data['form']['sdate'],data['form']['edate'],),'o') ]]</para>
- <para style="P2">[[ o.name ]]</para>
- <para style="Standard">
- <font color="white"> </font>
- </para>
- </td>
- <td>
- <para style="P1">[[ o.started ]]</para>
- </td>
- <td>
- <para style="P1">[[o.leavedate or ' Still Working']]</para>
- </td>
- <td>
- <para style="P4">[[get_duration(o['id'],) ]] </para>
- <para style="P3">
- <font color="white"> </font>
- </para>
- </td>
- </tr>
- </blockTable>
- <para style="P4">
- <font color="white"> </font>
- </para>
- </story>
-</document>
-
=== removed file 'hr_skill/report/datereport.sxw'
Binary files hr_skill/report/datereport.sxw 2013-09-21 03:17:07 +0000 and hr_skill/report/datereport.sxw 1970-01-01 00:00:00 +0000 differ
=== removed file 'hr_skill/report/employeereport.py'
--- hr_skill/report/employeereport.py 2009-10-15 11:25:40 +0000
+++ hr_skill/report/employeereport.py 1970-01-01 00:00:00 +0000
@@ -1,57 +0,0 @@
-# -*- encoding: utf-8 -*-
-##############################################################################
-#
-# OpenERP, Open Source Management Solution
-# Copyright (C) 2004-2009 Tiny SPRL (<http://tiny.be>).
-#
-# This program is free software: you can redistribute it and/or modify
-# it under the terms of the GNU Affero General Public License as
-# published by the Free Software Foundation, either version 3 of the
-# License, or (at your option) any later version.
-#
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-# GNU Affero General Public License for more details.
-#
-# You should have received a copy of the GNU Affero General Public License
-# along with this program. If not, see <http://www.gnu.org/licenses/>.
-#
-##############################################################################
-import datetime
-import operator
-import pooler
-import time
-from report import report_sxw
-
-
-class employeereport(report_sxw.rml_parse):
- def __init__(self, cr, uid, name, context):
- super(employeereport, self).__init__(cr, uid, name, context)
- self.localcontext.update({
- 'time': time,
- 'get_data' : self._getData,
- 'get_duration' : self._getDuration,
- })
- def _getData(self,start_date,end_date):
- employee_ids = self.pool.get('hr.employee').search(self.cr,self.uid,[('started', '>=', start_date),('started', '<=', end_date)])
- res = self.pool.get('hr.employee').browse(self.cr,self.uid,employee_ids)
- return res
-
- def _getDuration(self,eid):
- res1 = self.pool.get('hr.employee').read(self.cr,self.uid,eid,)
- sdate=datetime.datetime.strptime(res1['started'],'%Y-%m-%d')
- if res1['leavedate']:
- edate=datetime.datetime.strptime(res1['leavedate'],'%Y-%m-%d')
- else:
- edate=datetime.datetime.now()
- days=str(edate-sdate)
- days=int(days.split(" ",1)[0])
- months=days/30
- month,year=months%12,months/12
- res= str(year)+"."+str(month)+"years"
- return res
-
-report_sxw.report_sxw('report.datereport.print','hr.employee','addons/hr_skill/report/datereport.rml', parser=employeereport, header=True)
-# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4:
-
=== removed file 'hr_skill/report/evaluation.rml'
--- hr_skill/report/evaluation.rml 2007-08-10 07:47:26 +0000
+++ hr_skill/report/evaluation.rml 1970-01-01 00:00:00 +0000
@@ -1,192 +0,0 @@
-<?xml version="1.0"?>
-<document filename="test.pdf">
- <template pageSize="(595.0,842.0)" title="Test" author="Martin Simon" allowSplitting="20">
- <pageTemplate id="first">
- <frame id="first" x1="57.0" y1="57.0" width="481" height="728"/>
- </pageTemplate>
- </template>
- <stylesheet>
- <blockTableStyle id="Standard_Outline">
- <blockAlignment value="LEFT"/>
- <blockValign value="TOP"/>
- </blockTableStyle>
- <blockTableStyle id="Tableau2">
- <blockAlignment value="LEFT"/>
- <blockValign value="TOP"/>
- <lineStyle kind="GRID" colorName="black"/>
- <blockBackground colorName="#c0c0c0" start="0,0" stop="0,0"/>
- <blockBackground colorName="#c0c0c0" start="1,0" stop="1,0"/>
- <blockBackground colorName="#c0c0c0" start="2,0" stop="2,0"/>
- <blockBackground colorName="#c0c0c0" start="0,1" stop="0,1"/>
- <blockBackground colorName="#c0c0c0" start="1,1" stop="1,1"/>
- <blockBackground colorName="#c0c0c0" start="2,1" stop="2,1"/>
- </blockTableStyle>
- <blockTableStyle id="Table1">
- <blockAlignment value="LEFT"/>
- <blockValign value="TOP"/>
- <lineStyle kind="GRID" colorName="black"/>
- <blockBackground colorName="#c0c0c0" start="0,0" stop="0,0"/>
- <blockBackground colorName="#c0c0c0" start="1,0" stop="1,0"/>
- <blockBackground colorName="#c0c0c0" start="2,0" stop="2,0"/>
- <blockBackground colorName="#c0c0c0" start="0,1" stop="0,1"/>
- <blockBackground colorName="#c0c0c0" start="1,1" stop="1,1"/>
- <blockBackground colorName="#c0c0c0" start="2,1" stop="2,1"/>
- </blockTableStyle>
- <initialize>
- <paraStyle name="all" alignment="justify"/>
- </initialize>
- <paraStyle name="P1" fontName="Helvetica-Bold" fontSize="13.0" leading="16" spaceBefore="12.0" spaceAfter="6.0"/>
- <paraStyle name="P2" fontName="Times-Roman"/>
- <paraStyle name="P3" fontName="Times-Roman" alignment="CENTER"/>
- <paraStyle name="P4" fontName="Times-Roman" alignment="CENTER" spaceBefore="0.0" spaceAfter="6.0"/>
- <paraStyle name="P5" fontName="Times-Roman" alignment="CENTER"/>
- <paraStyle name="Standard" fontName="Times-Roman"/>
- <paraStyle name="Text body" fontName="Times-Roman" spaceBefore="0.0" spaceAfter="6.0"/>
- <paraStyle name="Heading" fontName="Helvetica" fontSize="14.0" leading="17" spaceBefore="12.0" spaceAfter="6.0"/>
- <paraStyle name="Heading 1" fontName="Helvetica-Bold" fontSize="115%" leading="NaN" spaceBefore="12.0" spaceAfter="6.0"/>
- <paraStyle name="Heading 2" fontName="Helvetica-BoldOblique" fontSize="14.0" leading="17" spaceBefore="12.0" spaceAfter="6.0"/>
- <paraStyle name="Heading 3" fontName="Helvetica-Bold" fontSize="14.0" leading="17" spaceBefore="12.0" spaceAfter="6.0"/>
- <paraStyle name="List" fontName="Times-Roman" spaceBefore="0.0" spaceAfter="6.0"/>
- <paraStyle name="Table Contents" fontName="Times-Roman" spaceBefore="0.0" spaceAfter="6.0"/>
- <paraStyle name="Table Heading" fontName="Times-Roman" alignment="CENTER" spaceBefore="0.0" spaceAfter="6.0"/>
- <paraStyle name="Caption" fontName="Times-Roman" fontSize="10.0" leading="13" spaceBefore="6.0" spaceAfter="6.0"/>
- <paraStyle name="Index" fontName="Times-Roman"/>
- <paraStyle name="Horizontal Line" fontName="Times-Roman" fontSize="6.0" leading="8" spaceBefore="0.0" spaceAfter="14.0"/>
- </stylesheet>
- <story>
- <para style="Standard">
- <font color="white"> </font>
- </para>
- <para style="Standard">
- <font color="white"> </font>
- </para>
- <para style="Standard">
- <font color="white"> </font>
- </para>
- <para style="Heading 1">Evaluation Report</para>
- <para style="P1">Evaluated Peoples :</para>
- <section>
- <para style="Standard">
- <font face="Times-Roman">[[ repeatIn(objects, 'o') ]] </font>
- </para>
- <para style="P2"><font face="Times-Roman"> • </font>[[o.interviewee_name ]]</para>
- <para style="Standard">
- <font color="white"> </font>
- </para>
- </section>
- <para style="Standard">
- <font color="white"> </font>
- </para>
- <para style="Standard">
- <font color="white"> </font>
- </para>
- <para style="Standard">
- <font color="white"> </font>
- </para>
- <section>
- <para style="Standard">
- <font face="Times-Roman">[[ repeatIn(objects, 'o') ]]</font>
- </para>
- <para style="P3">
- <font face="Times-Roman">Evaluated people : [[ o.interviewee_name ]]</font>
- </para>
- <blockTable colWidths="161.0,161.0,161.0" repeatRows="1" style="Tableau2">
- <tr>
- <td>
- <para style="Table Heading">
- <font color="white"> </font>
- </para>
- </td>
- <td>
- <para style="Table Heading">Experiences</para>
- </td>
- <td>
- <para style="Table Heading">
- <font color="white"> </font>
- </para>
- </td>
- </tr>
- <tr>
- <td>
- <para style="Table Heading">Expérience</para>
- </td>
- <td>
- <para style="Table Heading">level</para>
- </td>
- <td>
- <para style="Table Heading">Note</para>
- </td>
- </tr>
- <tr>
- <td>
- <para style="Table Contents"><font face="Times-Roman" size="10.0">[[repeatIn(o.experience_ids, 'e') ]]</font> [[ e.experience_id.name ]] </para>
- </td>
- <td>
- <para style="Table Contents">[[ e.weight_id.name ]]</para>
- </td>
- <td>
- <para style="Table Contents">[[ e.name ]]</para>
- </td>
- </tr>
- </blockTable>
- <para style="Standard">
- <font color="white"> </font>
- </para>
- <para style="Standard">
- <font color="white"> </font>
- </para>
- <blockTable colWidths="161.0,161.0,161.0" style="Table1">
- <tr>
- <td>
- <para style="Table Contents">
- <font color="white"> </font>
- </para>
- </td>
- <td>
- <para style="P4">Specific skills</para>
- </td>
- <td>
- <para style="Table Contents">
- <font color="white"> </font>
- </para>
- </td>
- </tr>
- <tr>
- <td>
- <para style="P4">Skill</para>
- </td>
- <td>
- <para style="P4">Level</para>
- </td>
- <td>
- <para style="P4">Note</para>
- </td>
- </tr>
- <tr>
- <td>
- <para style="Table Contents"><font face="Times-Roman" size="10.0">[[repeatIn(o.skill_ids, 's') ]]</font> [[ s.name ]] </para>
- </td>
- <td>
- <para style="Table Contents">[[ s.weight_id.name ]]</para>
- </td>
- <td>
- <para style="Table Contents">[[ s.name ]]</para>
- </td>
- </tr>
- </blockTable>
- <para style="Standard">
- <font color="white"> </font>
- </para>
- <para style="Standard">
- <font color="white"> </font>
- </para>
- <para style="P5">
- <font face="Times-Roman"/>
- </para>
- </section>
- <para style="Standard">
- <font color="white"> </font>
- </para>
- </story>
-</document>
-
=== removed file 'hr_skill/report/evaluation.sxw'
Binary files hr_skill/report/evaluation.sxw 2007-08-10 07:47:26 +0000 and hr_skill/report/evaluation.sxw 1970-01-01 00:00:00 +0000 differ
=== removed file 'hr_skill/report/langreport.py'
--- hr_skill/report/langreport.py 2009-10-15 11:25:40 +0000
+++ hr_skill/report/langreport.py 1970-01-01 00:00:00 +0000
@@ -1,112 +0,0 @@
-# -*- encoding: utf-8 -*-
-##############################################################################
-#
-# OpenERP, Open Source Management Solution
-# Copyright (C) 2004-2009 Tiny SPRL (<http://tiny.be>).
-#
-# This program is free software: you can redistribute it and/or modify
-# it under the terms of the GNU Affero General Public License as
-# published by the Free Software Foundation, either version 3 of the
-# License, or (at your option) any later version.
-#
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-# GNU Affero General Public License for more details.
-#
-# You should have received a copy of the GNU Affero General Public License
-# along with this program. If not, see <http://www.gnu.org/licenses/>.
-#
-##############################################################################
-import datetime
-import operator
-import pooler
-import time
-from report import report_sxw
-from array import array
-
-class langreport(report_sxw.rml_parse):
- def __init__(self, cr, uid, name, context):
- super(langreport, self).__init__(cr, uid, name, context)
-
- self.localcontext.update({
- 'time':time,
- 'get_data' : self._getData,
- 'get_lang':self._getLang,
-
- })
- def _getLang(self,id):
- lid=[]
- lname=[]
-
- lid.append(pooler.get_pool(self.cr.dbname).get('emp.lang').search(self.cr,self.uid,[('ii_id','=',id),]))
- for i in range (0,len(lid)):
- lname.append(pooler.get_pool(self.cr.dbname).get('emp.lang').read(self.cr,self.uid,lid[i],))
- res=lname[0]
- return res
-
- def _getData(self,form):
-
- name=0
- r=False
- s=False
- w=False
- sort_id=[]
- temp=[]
- emp_id=[]
- emp_name=[]
- count= len(form['lang'])
-
- if count==0:
- self.cr.execute("select ii_id,name,read,write,speak from emp_lang" )
- temp.append(self.cr.fetchall())
-
- else:
- for i in range(0,count):
- name=form['lang'][i][2]['name']
- r=form['lang'][i][2]['read']
- w=form['lang'][i][2]['write']
- s=form['lang'][i][2]['speak']
- whr= ""
- whr=whr + "name = %d"%(name)
- if r==1:
- r=True
- whr=whr+" and read = %s"%r
- else:
- r=False
- if s==1:
- s=True
- whr=whr+" and speak = %s"%s
- else:
- s=False
- if w==1:
- w=True
- whr=whr+" and write = %s"%w
- else:
- w=False
- self.cr.execute("select ii_id,name,read,write,speak from emp_lang where " + whr)
- temp.append(self.cr.fetchall())
-
- # This loop is for extracting employee ids
- for i in range(0,len(temp)):
- for j in range(0,len(temp[i])):
- emp_id.append(temp[i][j][0])
-
- # This loop is for extracting Unique employee ids
- if count==0:
- sort_id=[]
- for v in emp_id:
- if not v in sort_id: sort_id.append(v)
- else:
- sort_id.append(list(set([x for x in emp_id if emp_id.count(x)==count])))
- temp=[]
- temp=sort_id[0]
- sort_id=[]
- sort_id=temp
- for i in sort_id:
- emp_name.append(pooler.get_pool(self.cr.dbname).get('hr.employee').read(self.cr,self.uid,i,['name'],))
- return emp_name
-
-report_sxw.report_sxw('report.langreport','hr.employee','addons/hr_skill/report/langreport.rml',parser=langreport,)
-# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4:
-
=== removed file 'hr_skill/report/langreport.rml'
--- hr_skill/report/langreport.rml 2013-09-21 03:17:07 +0000
+++ hr_skill/report/langreport.rml 1970-01-01 00:00:00 +0000
@@ -1,175 +0,0 @@
-<?xml version="1.0"?>
-<document filename="test.pdf">
- <template pageSize="(595.0,842.0)" title="Test" author="Martin Simon" allowSplitting="20">
- <pageTemplate id="first">
- <frame id="first" x1="57.0" y1="57.0" width="481" height="728"/>
- </pageTemplate>
- </template>
- <stylesheet>
- <blockTableStyle id="Standard_Outline">
- <blockAlignment value="LEFT"/>
- <blockValign value="TOP"/>
- </blockTableStyle>
- <blockTableStyle id="Table5">
- <blockAlignment value="LEFT"/>
- <blockValign value="TOP"/>
- </blockTableStyle>
- <blockTableStyle id="Table4">
- <blockAlignment value="LEFT"/>
- <blockValign value="TOP"/>
- </blockTableStyle>
- <blockTableStyle id="Table1">
- <blockAlignment value="LEFT"/>
- <blockValign value="TOP"/>
-
- </blockTableStyle>
- <blockTableStyle id="Table3">
- <blockAlignment value="LEFT"/>
- <blockValign value="TOP"/>
- </blockTableStyle>
- <blockTableStyle id="Table2">
- <blockAlignment value="LEFT"/>
- <blockValign value="TOP"/>
- <lineStyle kind="GRID" colorName="black"/>
- </blockTableStyle>
- <initialize>
- <paraStyle name="all" alignment="justify"/>
- </initialize>
- <paraStyle name="P1" fontName="Times-Roman" fontSize="18.0" leading="22" alignment="CENTER"/>
- <paraStyle name="P2" fontName="Times-Roman" alignment="CENTER"/>
- <paraStyle name="P3" fontName="Times-Roman" fontSize="11.0" leading="14" alignment="CENTER"/>
- <paraStyle name="P4" fontName="Times-Roman" fontSize="11.0" leading="14" alignment="CENTER"/>
- <paraStyle name="P5" fontName="Times-Roman" fontSize="18.0" leading="22" alignment="LEFT"/>
- <paraStyle name="P6" fontName="Times-Roman" fontSize="18.0" leading="22" alignment="LEFT" backColor="#ffffff"/>
- <paraStyle name="P7" fontName="Times-Roman" fontSize="18.0" leading="22" alignment="LEFT"/>
- <paraStyle name="P8" fontName="Times-Roman" fontSize="18.0" leading="22" alignment="CENTER"/>
- <paraStyle name="P9" fontName="Times-Roman" fontSize="12.0" leading="15" alignment="LEFT"/>
- <paraStyle name="P10" fontName="Times-Roman" fontSize="12.0" leading="15" alignment="LEFT"/>
- <paraStyle name="P11" fontName="Times-Roman" fontSize="18.0" leading="22" alignment="LEFT"/>
- <paraStyle name="P12" fontName="Times-Roman" fontSize="18.0" leading="22" alignment="RIGHT"/>
- <paraStyle name="P13" fontName="Times-Roman" fontSize="18.0" leading="22" alignment="CENTER"/>
- <paraStyle name="P14" fontName="Times-Roman" fontSize="18.0" leading="22" alignment="LEFT"/>
- <paraStyle name="Standard" fontName="Times-Roman"/>
- <paraStyle name="Heading" fontName="Helvetica" fontSize="14.0" leading="17" spaceBefore="12.0" spaceAfter="6.0"/>
- <paraStyle name="Text body" fontName="Times-Roman" spaceBefore="0.0" spaceAfter="6.0"/>
- <paraStyle name="List" fontName="Times-Roman" spaceBefore="0.0" spaceAfter="6.0"/>
- <paraStyle name="Caption" fontName="Times-Italic" fontSize="12.0" leading="15" spaceBefore="6.0" spaceAfter="6.0"/>
- <paraStyle name="Index" fontName="Times-Roman"/>
- <paraStyle name="Table Contents" fontName="Times-Roman"/>
- <paraStyle name="Table Heading" fontName="Times-Roman" alignment="CENTER"/>
- </stylesheet>
- <story>
- <para style="P1">
- <font color="white"> </font>
- </para>
- <blockTable colWidths="482.0" style="Table5">
- <tr>
- <td>
- <para style="P4">
- <font face="Times-Roman"/>
- <font face="Times-Roman" size="18.0">Employees Language Report</font>
- </para>
- </td>
- </tr>
- </blockTable>
- <para style="P1">
- <font color="white"> </font>
- </para>
- <blockTable colWidths="285.0,197.0" style="Table4">
- <tr>
- <td>
- <para style="P3">
- <font color="white"> </font>
- </para>
- </td>
- <td>
- <para style="P3">Date: [[ time.strftime('%d-%m-%Y') ]] </para>
- </td>
- </tr>
- <tr>
- <td>
- <para style="P3">
- <font color="white"> </font>
- </para>
- </td>
- <td>
- <para style="P3">Time : [[ time.strftime('%H:%M:%S') ]]</para>
- </td>
- </tr>
- </blockTable>
- <para style="P3">
- <font color="white"> </font>
- </para>
- <section>
- <para style="P7">[[repeatIn(get_data(data['form']),'o') ]]</para>
- <para style="P8">Employee : [[ o ['name'] ]] </para>
- <para style="P11">
- <font color="white"> .........</font>
- <font color="white"> .........</font>
- <font color="white"> .........</font>
- <font color="white"> .........</font>
- <font color="white"> .........</font>
- </para>
- <para style="P7">
- <font face="Times-Roman"/>
- </para>
- <blockTable colWidths="481.0" style="Table1">
- <tr>
- <td>
- <blockTable colWidths="169.0,102.0,101.0,102.0" style="Table3">
- <tr>
- <td>
- <para style="P12">
- <font color="white"> </font>
- </para>
- </td>
- <td>
- <para style="P13">Read</para>
- </td>
- <td>
- <para style="P13">Write </para>
- </td>
- <td>
- <para style="P13">Speak</para>
- </td>
- </tr>
- </blockTable>
- <blockTable colWidths="170.0,102.0,102.0,102.0" style="Table2">
- <tr>
- <td>
- <para style="P5">[[repeatIn(get_lang(o['id']),'o1')]]</para>
- <para style="P5">[[ o1['name'] [1] ]] </para>
- </td>
- <td>
- <para style="P9">[[ o1['read'] and 'True' or 'False' ]]</para>
- </td>
- <td>
- <para style="P10">[[ o1 ['write'] and 'True' or 'False' ]]</para>
- </td>
- <td>
- <para style="P9">[[ o1['speak'] and 'True' or 'False']]</para>
- </td>
- </tr>
- </blockTable>
- <para style="P6">
- <font color="#ffffff"> </font>
- </para>
- </td>
- </tr>
- </blockTable>
- <para style="P2">
- <font color="white"> </font>
- </para>
- <para style="P1">
- <font color="white"> </font>
- </para>
- </section>
- <para style="P1">
- <font color="white"> </font>
- </para>
- <para style="P1">
- <font color="white"> </font>
- </para>
- </story>
-</document>
-
=== removed file 'hr_skill/report/langreport.sxw'
Binary files hr_skill/report/langreport.sxw 2013-09-21 03:17:07 +0000 and hr_skill/report/langreport.sxw 1970-01-01 00:00:00 +0000 differ
=== removed file 'hr_skill/report/skillreport.py'
--- hr_skill/report/skillreport.py 2009-10-15 11:25:40 +0000
+++ hr_skill/report/skillreport.py 1970-01-01 00:00:00 +0000
@@ -1,61 +0,0 @@
-# -*- encoding: utf-8 -*-
-##############################################################################
-#
-# OpenERP, Open Source Management Solution
-# Copyright (C) 2004-2009 Tiny SPRL (<http://tiny.be>).
-#
-# This program is free software: you can redistribute it and/or modify
-# it under the terms of the GNU Affero General Public License as
-# published by the Free Software Foundation, either version 3 of the
-# License, or (at your option) any later version.
-#
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-# GNU Affero General Public License for more details.
-#
-# You should have received a copy of the GNU Affero General Public License
-# along with this program. If not, see <http://www.gnu.org/licenses/>.
-#
-##############################################################################
-import datetime
-import operator
-import pooler
-import time
-from report import report_sxw
-
-class skillreport(report_sxw.rml_parse):
- def __init__(self, cr, uid, name, context):
- super(skillreport, self).__init__(cr, uid, name, context)
- self.localcontext.update({
- 'time' : time,
- 'get_data' : self._getData,
- 'get_skill':self._getskill,
-
- })
- def _getskill(self,ids):
- res=[]
- t_ids=pooler.get_pool(self.cr.dbname).get('hr_skill.evaluation.skill').search(self.cr,self.uid,[('evaluation_id','=',ids)])
- res1=pooler.get_pool(self.cr.dbname).get('hr_skill.evaluation.skill').browse(self.cr,self.uid,t_ids)
- return res1
-
- def _getData(self,form):
- res=[]
- eval_id=[]
- emp_id=[]
- final=[]
- id = form['s_ids']
- if id:
- self.cr.execute("select evaluation_id from hr_skill_evaluation_skill where skill_id=%d"%id)
- eval_id.append(self.cr.fetchall())
-
- for i in range(0,len(eval_id[0])):
- res.append(eval_id[0][i][0])
-
- for i in range(0,len(res)):
- final.append(pooler.get_pool(self.cr.dbname).get('hr_skill.evaluation').browse(self.cr,self.uid,res[i],))
- return final
-
-report_sxw.report_sxw('report.skillreport','hr_skill.evaluation','addons/hr_skill/report/skillreport.rml',parser=skillreport,)
-# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4:
-
=== removed file 'hr_skill/report/skillreport.rml'
--- hr_skill/report/skillreport.rml 2013-09-21 03:17:07 +0000
+++ hr_skill/report/skillreport.rml 1970-01-01 00:00:00 +0000
@@ -1,161 +0,0 @@
-<?xml version="1.0"?>
-<document filename="test.pdf">
- <template pageSize="(595.0,842.0)" title="Test" author="Martin Simon" allowSplitting="20">
- <pageTemplate id="first">
- <frame id="first" x1="57.0" y1="57.0" width="481" height="728"/>
- </pageTemplate>
- </template>
- <stylesheet>
- <blockTableStyle id="Standard_Outline">
- <blockAlignment value="LEFT"/>
- <blockValign value="TOP"/>
- </blockTableStyle>
- <blockTableStyle id="Table4">
- <blockAlignment value="LEFT"/>
- <blockValign value="TOP"/>
- </blockTableStyle>
- <blockTableStyle id="Table5">
- <blockAlignment value="LEFT"/>
- <blockValign value="TOP"/>
- <lineStyle kind="GRID" colorName="black"/>
- <blockBackground colorName="#b3b3b3" start="0,0" stop="0,0"/>
- <blockBackground colorName="#b3b3b3" start="1,0" stop="1,0"/>
- <blockBackground colorName="#b3b3b3" start="2,0" stop="2,0"/>
- </blockTableStyle>
- <blockTableStyle id="Table1">
- <blockAlignment value="LEFT"/>
- <blockValign value="TOP"/>
- </blockTableStyle>
- <blockTableStyle id="Table3">
- <blockAlignment value="LEFT"/>
- <blockValign value="TOP"/>
- </blockTableStyle>
- <blockTableStyle id="Table2">
- <blockAlignment value="LEFT"/>
- <blockValign value="TOP"/>
- </blockTableStyle>
- <blockTableStyle id="Table7">
- <blockAlignment value="LEFT"/>
- <blockValign value="TOP"/>
- </blockTableStyle>
- <initialize>
- <paraStyle name="all" alignment="justify"/>
- </initialize>
- <paraStyle name="P1" fontName="Times-Roman" fontSize="15.0" leading="19" alignment="CENTER"/>
- <paraStyle name="P2" fontName="Times-Roman" fontSize="11.0" leading="14" alignment="CENTER"/>
- <paraStyle name="P3" fontName="Times-Roman" fontSize="15.0" leading="19" alignment="LEFT"/>
- <paraStyle name="P4" fontName="Times-Roman" fontSize="15.0" leading="19" alignment="CENTER"/>
- <paraStyle name="P5" fontName="Times-Roman" fontSize="6.0" leading="8" alignment="LEFT"/>
- <paraStyle name="P6" fontName="Times-Roman" fontSize="20.0" leading="25" alignment="CENTER"/>
- <paraStyle name="P7" fontName="Times-Roman" fontSize="6.0" leading="8" alignment="LEFT"/>
- <paraStyle name="P8" fontName="Times-Roman" fontSize="6.0" leading="8" alignment="LEFT"/>
- <paraStyle name="P9" fontName="Times-Bold" fontSize="10.0" leading="13" alignment="CENTER"/>
- <paraStyle name="P10" fontName="Times-Roman" fontSize="8.0" leading="10" alignment="CENTER"/>
- <paraStyle name="P11" fontName="Times-Bold" fontSize="10.0" leading="13" alignment="CENTER"/>
- <paraStyle name="Standard" fontName="Times-Roman"/>
- <paraStyle name="Heading" fontName="Helvetica" fontSize="14.0" leading="17" spaceBefore="12.0" spaceAfter="6.0"/>
- <paraStyle name="Text body" fontName="Times-Roman" spaceBefore="0.0" spaceAfter="6.0"/>
- <paraStyle name="List" fontName="Times-Roman" spaceBefore="0.0" spaceAfter="6.0"/>
- <paraStyle name="Caption" fontName="Times-Italic" fontSize="12.0" leading="15" spaceBefore="6.0" spaceAfter="6.0"/>
- <paraStyle name="Index" fontName="Times-Roman"/>
- <paraStyle name="Table Contents" fontName="Times-Roman"/>
- <paraStyle name="Table Heading" fontName="Times-Roman" alignment="CENTER"/>
- </stylesheet>
- <story>
- <para style="P1">
- <font color="white"> </font>
- </para>
- <para style="P1">
- <font color="white"> </font>
- </para>
- <blockTable colWidths="285.0,197.0" style="Table4">
- <tr>
- <td>
- <para style="P2">
- <font color="white"> </font>
- </para>
- </td>
- <td>
- <para style="P2">Date: [[ time.strftime('%d-%m-%Y') ]] </para>
- </td>
- </tr>
- <tr>
- <td>
- <para style="P2">
- <font color="white"> </font>
- </para>
- </td>
- <td>
- <para style="P2">Time : [[ time.strftime('%H:%M:%S') ]]</para>
- </td>
- </tr>
- </blockTable>
- <para style="P1">
- <font color="white"> </font>
- </para>
- <para style="P6">
- <font color="white"> </font>
- </para>
- <blockTable colWidths="172.0,148.0,132.0" style="Table5">
- <tr>
- <td>
- <para style="P9">Employee </para>
- </td>
- <td>
- <para style="P9">skill </para>
- </td>
- <td>
- <para style="P9">Weight </para>
- </td>
- </tr>
- </blockTable>
- <blockTable colWidths="452.0" style="Table1">
- <tr>
- <td>
- <para style="P5">[[repeatIn(get_data(data['form']),'o')]]</para>
- <blockTable colWidths="159.0,291.0" style="Table3">
- <tr>
- <td>
- <para style="P11">[[ o.employee_id.name ]] </para>
- </td>
- <td>
- <blockTable colWidths="285.0" style="Table2">
- <tr>
- <td>
- <para style="P7">[[ repeatIn(get_skill(o.id),'o1') ]]</para>
- <blockTable colWidths="153.0,140.0" style="Table7">
- <tr>
- <td>
- <para style="P10">
- <font face="Times-Roman">[[ o1.skill_id.name ]]</font>
- </para>
- </td>
- <td>
- <para style="P10">[[ o1.weight_id.name ]]</para>
- </td>
- </tr>
- </blockTable>
- </td>
- </tr>
- </blockTable>
- </td>
- </tr>
- </blockTable>
- <para style="P8">
- <font color="white"> </font>
- </para>
- </td>
- </tr>
- </blockTable>
- <para style="P3">
- <font color="white"> </font>
- </para>
- <para style="P3">
- <font color="white"> </font>
- </para>
- <para style="P3">
- <font color="white"> </font>
- </para>
- </story>
-</document>
-
=== removed file 'hr_skill/report/skillreport.sxw'
Binary files hr_skill/report/skillreport.sxw 2013-09-21 03:17:07 +0000 and hr_skill/report/skillreport.sxw 1970-01-01 00:00:00 +0000 differ
=== modified file 'hr_skill/security/ir.model.access.csv'
--- hr_skill/security/ir.model.access.csv 2011-07-26 21:47:31 +0000
+++ hr_skill/security/ir.model.access.csv 2013-11-11 22:43:26 +0000
@@ -1,19 +1,3 @@
"id","name","model_id:id","group_id:id","perm_read","perm_write","perm_create","perm_unlink"
-"access_hr_skill_weight_category","hr_skill.weight.category","model_hr_skill_weight_category",base.group_hr_user,1,1,1,1
-"access_hr_skill_weight","hr_skill.weight","model_hr_skill_weight",base.group_hr_user,1,1,1,1
-"access_hr_skill_skill","hr_skill.skill","model_hr_skill_skill",base.group_hr_user,1,1,1,1
-"access_hr_skill_experience_category","hr_skill.experience.category","model_hr_skill_experience_category",base.group_hr_user,1,1,1,1
-"access_hr_skill_experience","hr_skill.experience","model_hr_skill_experience",base.group_hr_user,1,1,1,1
-"access_hr_skill_evaluation_category","hr_skill.evaluation.category","model_hr_skill_evaluation_category",base.group_hr_user,1,1,1,1
-"access_hr_skill_evaluation","hr_skill.evaluationy","model_hr_skill_evaluation",base.group_hr_user,1,1,1,1
-"access_hr_skill_profile","hr_skill.profile","model_hr_skill_profile",base.group_hr_user,1,1,1,1
-"access_hr_skill_position","hr_skill.position","model_hr_skill_position",base.group_hr_user,1,1,1,1
-"access_hr_skill_position_profile","hr_skill.position.profile","model_hr_skill_position_profile",base.group_hr_user,1,1,1,1
-"access_hr_skill_experience_skill","hr_skill.experience.skill","model_hr_skill_experience_skill",base.group_hr_user,1,1,1,1
-"access_hr_skill_profile_skill","hr_skill.profile.skill","model_hr_skill_profile_skill",base.group_hr_user,1,1,1,1
-"access_hr_skill_evaluation_experience","hr_skill.evaluation.experience","model_hr_skill_evaluation_experience",base.group_hr_user,1,1,1,1
-"access_hr_skill_evaluation_skill","hr_skill.evaluation.skill","model_hr_skill_evaluation_skill",base.group_hr_user,1,1,1,1
-"access_hr_lang","hr.lang","model_hr_lang",base.group_hr_user,1,1,1,1
-"access_emp_lang","emp.lang","model_emp_lang",base.group_hr_user,1,1,1,1
-"access_hr_scale","hr.scale","model_hr_scale",base.group_hr_user,1,1,1,1
-"access_employee_status","employee.status","model_employee_status",base.group_hr_user,1,1,1,1
+"access_hr_skill","hr.skill","model_hr_skill",base.group_hr_user,1,0,0,0
+"access_hr_skill","hr.skill","model_hr_skill",base.group_hr_manager,1,1,1,1
=== removed directory 'hr_skill/wizard'
=== removed file 'hr_skill/wizard/__init__.py'
--- hr_skill/wizard/__init__.py 2009-10-15 11:25:40 +0000
+++ hr_skill/wizard/__init__.py 1970-01-01 00:00:00 +0000
@@ -1,25 +0,0 @@
-# -*- encoding: utf-8 -*-
-##############################################################################
-#
-# OpenERP, Open Source Management Solution
-# Copyright (C) 2004-2009 Tiny SPRL (<http://tiny.be>).
-#
-# This program is free software: you can redistribute it and/or modify
-# it under the terms of the GNU Affero General Public License as
-# published by the Free Software Foundation, either version 3 of the
-# License, or (at your option) any later version.
-#
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-# GNU Affero General Public License for more details.
-#
-# You should have received a copy of the GNU Affero General Public License
-# along with this program. If not, see <http://www.gnu.org/licenses/>.
-#
-##############################################################################
-import lang_wiz
-import datewise
-import skill
-# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4:
-
=== removed file 'hr_skill/wizard/datewise.py'
--- hr_skill/wizard/datewise.py 2009-10-15 11:25:40 +0000
+++ hr_skill/wizard/datewise.py 1970-01-01 00:00:00 +0000
@@ -1,54 +0,0 @@
-# -*- encoding: utf-8 -*-
-##############################################################################
-#
-# OpenERP, Open Source Management Solution
-# Copyright (C) 2004-2009 Tiny SPRL (<http://tiny.be>).
-#
-# This program is free software: you can redistribute it and/or modify
-# it under the terms of the GNU Affero General Public License as
-# published by the Free Software Foundation, either version 3 of the
-# License, or (at your option) any later version.
-#
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-# GNU Affero General Public License for more details.
-#
-# You should have received a copy of the GNU Affero General Public License
-# along with this program. If not, see <http://www.gnu.org/licenses/>.
-#
-##############################################################################
-import wizard
-import pooler
-import time
-
-
-dates_form = '''<?xml version="1.0"?>
-<form string="Select period">
- <field name="sdate"/>
- <newline/>
- <field name="edate"/>
-</form>'''
-
-dates_fields ={
- 'sdate': {'string':'Start Date', 'type':'date', 'required':True, 'default': lambda *a: time.strftime('%Y-01-01')},
- 'edate': {'string':'End Date', 'type':'date', 'required':True, 'default': lambda *a: time.strftime('%Y-%m-%d')},
- }
-
-
-class datewisecheck(wizard.interface):
-
- states = {
- 'init': {
- 'actions': [],
- 'result': {'type':'form', 'arch':dates_form, 'fields':dates_fields, 'state':[('end','Cancel'),('report','Print')]}
- },
- 'report': {
- 'actions': [],
- 'result': {'type':'print', 'report':'datereport.print', 'state':'end'}
- }
- }
-datewisecheck('employee.date.check')
-
-# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4:
-
=== removed file 'hr_skill/wizard/lang_wiz.py'
--- hr_skill/wizard/lang_wiz.py 2009-10-15 11:25:40 +0000
+++ hr_skill/wizard/lang_wiz.py 1970-01-01 00:00:00 +0000
@@ -1,60 +0,0 @@
-# -*- encoding: utf-8 -*-
-##############################################################################
-#
-# OpenERP, Open Source Management Solution
-# Copyright (C) 2004-2009 Tiny SPRL (<http://tiny.be>).
-#
-# This program is free software: you can redistribute it and/or modify
-# it under the terms of the GNU Affero General Public License as
-# published by the Free Software Foundation, either version 3 of the
-# License, or (at your option) any later version.
-#
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-# GNU Affero General Public License for more details.
-#
-# You should have received a copy of the GNU Affero General Public License
-# along with this program. If not, see <http://www.gnu.org/licenses/>.
-#
-##############################################################################
-import wizard
-import time
-import pooler
-import netsvc
-from tools.misc import UpdateableStr,UpdateableDict
-
-info = '''<?xml version="1.0"?>
-<form string="Select period">
- <label string="Select Language !"/>
-</form>'''
-
-form1 = '''<?xml version="1.0"?>
-<form string="Select period">
-
- <field name="lang"/>
-
- </form>'''
-
-field1 = {
- 'lang': {'string':'Language', 'type':'one2many', 'relation':'emp.lang'},
-
- }
-
-class lang_get(wizard.interface):
- states = {
-
- 'init': {
- 'actions': [],
- 'result': {'type':'form','arch':form1, 'fields':field1, 'state':[('end','Cancel'),('rpt','Report')]}
- },
-
- 'rpt': {
- 'actions': [],
- 'result': {'type':'print','report':'langreport','state':'end'}
- },
-
- }
-lang_get('langget')
-# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4:
-
=== removed file 'hr_skill/wizard/skill.py'
--- hr_skill/wizard/skill.py 2009-10-15 11:25:40 +0000
+++ hr_skill/wizard/skill.py 1970-01-01 00:00:00 +0000
@@ -1,49 +0,0 @@
-# -*- encoding: utf-8 -*-
-##############################################################################
-#
-# OpenERP, Open Source Management Solution
-# Copyright (C) 2004-2009 Tiny SPRL (<http://tiny.be>).
-#
-# This program is free software: you can redistribute it and/or modify
-# it under the terms of the GNU Affero General Public License as
-# published by the Free Software Foundation, either version 3 of the
-# License, or (at your option) any later version.
-#
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-# GNU Affero General Public License for more details.
-#
-# You should have received a copy of the GNU Affero General Public License
-# along with this program. If not, see <http://www.gnu.org/licenses/>.
-#
-##############################################################################
-import wizard
-import pooler
-import time
-
-emp_form = '''<?xml version="1.0"?>
-<form string="Select period">
- <field name="s_ids"/>
-</form>'''
-
-emp_field ={
- 's_ids': {'name' : 'skill', 'relation':'hr_skill.skill', 'string':'Skill', 'required':'True', 'type':'many2one','domain':"[('view','=','skill')]"},
- }
-
-class skillemployee(wizard.interface):
- states = {
- 'init': {
- 'actions': [],
- 'result': {'type':'form', 'arch':emp_form, 'fields':emp_field, 'state':[('end','Cancel'),('report','Print')]}
- },
-
- 'report': {
- 'actions': [],
- 'result': {'type':'print', 'report':'skillreport', 'state':'end'}
- }
- }
-
-skillemployee('empskill')
-# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4:
-
Follow ups