Skip to Content
Odoo Menu
  • Sign in
  • Try it free
  • Apps
    Finance
    • Accounting
    • Invoicing
    • Expenses
    • Spreadsheet (BI)
    • Documents
    • Sign
    Sales
    • CRM
    • Sales
    • POS Shop
    • POS Restaurant
    • Subscriptions
    • Rental
    Websites
    • Website Builder
    • eCommerce
    • Blog
    • Forum
    • Live Chat
    • eLearning
    Supply Chain
    • Inventory
    • Manufacturing
    • PLM
    • Purchase
    • Maintenance
    • Quality
    Human Resources
    • Employees
    • Recruitment
    • Time Off
    • Appraisals
    • Referrals
    • Fleet
    Marketing
    • Social Marketing
    • Email Marketing
    • SMS Marketing
    • Events
    • Marketing Automation
    • Surveys
    Services
    • Project
    • Timesheets
    • Field Service
    • Helpdesk
    • Planning
    • Appointments
    Productivity
    • Discuss
    • Approvals
    • IoT
    • VoIP
    • Knowledge
    • WhatsApp
    Third party apps Odoo Studio Odoo Cloud Platform
  • Industries
    Retail
    • Book Store
    • Clothing Store
    • Furniture Store
    • Grocery Store
    • Hardware Store
    • Toy Store
    Food & Hospitality
    • Bar and Pub
    • Restaurant
    • Fast Food
    • Guest House
    • Beverage Distributor
    • Hotel
    Real Estate
    • Real Estate Agency
    • Architecture Firm
    • Construction
    • Property Management
    • Gardening
    • Property Owner Association
    Consulting
    • Accounting Firm
    • Odoo Partner
    • Marketing Agency
    • Law firm
    • Talent Acquisition
    • Audit & Certification
    Manufacturing
    • Textile
    • Metal
    • Furnitures
    • Food
    • Brewery
    • Corporate Gifts
    Health & Fitness
    • Sports Club
    • Eyewear Store
    • Fitness Center
    • Wellness Practitioners
    • Pharmacy
    • Hair Salon
    Trades
    • Handyman
    • IT Hardware & Support
    • Solar Energy Systems
    • Shoe Maker
    • Cleaning Services
    • HVAC Services
    Others
    • Nonprofit Organization
    • Environmental Agency
    • Billboard Rental
    • Photography
    • Bike Leasing
    • Software Reseller
    Browse all Industries
  • Community
    Learn
    • Tutorials
    • Documentation
    • Certifications
    • Training
    • Blog
    • Podcast
    Empower Education
    • Education Program
    • Scale Up! Business Game
    • Visit Odoo
    Get the Software
    • Download
    • Compare Editions
    • Releases
    Collaborate
    • Github
    • Forum
    • Events
    • Translations
    • Become a Partner
    • Services for Partners
    • Register your Accounting Firm
    Get Services
    • Find a Partner
    • Find an Accountant
      • Get a Tailored Demo
    • Implementation Services
    • Customer References
    • Support
    • Upgrades
    Github Youtube Twitter Linkedin Instagram Facebook Spotify
    +32 2 290 34 90
    • Get a Tailored Demo
  • Pricing
  • Help
  1. APPS
  2. Employees
  3. EH HR Skills v 18.0
  4. Sales Conditions FAQ

EH HR Skills

by ERP Heritage https://www.erpheritage.com.au/
Odoo
v 18.0 Third Party 23
Download for v 18.0 Deploy on Odoo.sh
Apps purchases are linked to your Odoo account, please sign in or sign up first.
Versions 16.0 17.0 18.0 19.0
You bought this module and need support? Click here!
Availability
Odoo Online
Odoo.sh
On Premise
Odoo Apps Dependencies • Employees (hr)
• Skills Management (hr_skills)
• Discuss (mail)
Community Apps Dependencies Show
• EH HR Compatibility
• EH HR Platform Core
Lines of code 1142
Technical Name eh_hr_skills
LicenseLGPL-3
Websitehttps://www.erpheritage.com.au/
Versions 16.0 17.0 18.0 19.0
ERP Heritage · HR Platform
ERP Heritage . HR Platform

EH HR Skills

Define the skills each job needs, then see exactly where every employee stands against them.

Free · LGPL-3Odoo 18 CommunityLGPL-3v1.0.0
Required skills per job
Gap status: missing / below / met
Recompute on demand
Reads standard skill records
Color-coded gap list

Why this module

EH HR Skills

Extend, never duplicate

Built on standard Skills

Required skills hang off the native hr.job, and gaps are computed from the employee's own hr.employee skill records. No parallel skill store to keep in sync, no second source of truth to reconcile.

Honest computation

Levels compared by progress

A gap is decided by comparing the employee's current level progress against the job's required level progress. Below threshold is flagged below, no match at all is missing, at or above is met. The rule is explicit and tested.

Repeatable

Recompute is idempotent

Pressing the gap button rebuilds the rows from scratch each time. Stale rows are cleared first, so a second run never duplicates the result. Covered by an automated test that recomputes twice and asserts the same count.

Day in the life

From a vague job spec to a ranked gap list

A manager opens a job position and lists the skills it needs, each with an optional minimum level. On an employee form they press Skill gaps; the module reads that person's current skills, compares them to the role, and writes one row per requirement marked missing, below required, or met. The list opens filtered to unmet items and grouped by employee, so the conversation about training or hiring starts from facts rather than a spreadsheet.

Edge cases

The cases most modules quietly ignore.

In the shipped code today, each one a place where a cheaper module silently does the wrong thing.

Recompute idempotency

action_compute_skill_gaps deletes the employee's existing gap rows before recreating them, so running it repeatedly rebuilds rather than duplicates. An automated test recomputes twice and asserts the row count is unchanged.

Cross-version skill source

The current-skills lookup prefers current_employee_skill_ids when the field exists (Odoo 18 active versions) and falls back to employee_skill_ids otherwise, so the same code reads the right skill records across Odoo series including Odoo 18.

No job assigned

If an employee has no job position, the compute simply skips them and writes no gap rows, rather than erroring on a missing required-skills set.

Missing vs below

A required skill the employee does not hold at all is classified missing; one held but at a lower level progress than required is classified below; equal or higher is met. The unmet count excludes met rows.

Optional required level

A job can require a skill with no specific level. In that case the required progress is zero, so simply holding the skill counts as met.

Multi-company scoping

Each gap row stores a company_id related from the employee and indexed, so gap lists stay scoped per company in a multi-company database.

What is inside

Built to do the job, end to end.

  • Models this module adds. eh.hr.job.skill (a skill, with optional minimum level, that a job position requires) and eh.hr.skill.gap (one materialized row per required skill per employee, carrying status, required level and progress, and current level and progress).
  • Standard models it extends. hr.job gains a required_skill_ids matrix; hr.employee gains a read-only skill-gap list, a non-met gap count, and the action_compute_skill_gaps method behind the form smart button.
  • Views and navigation. An editable required-skills list and form, a read-only gap list with danger, warning and success row colors, a search view with Unmet and Missing filters and group-by employee, status or skill type, plus Talent menu items and an employee form smart button.
  • Security. Per-group access from the platform core: HR admin and officer get full rights on both models, employee self-service is read-only. Talent menus are gated to the HR officer group.
  • Tests. An automated suite covering the required-skills relation and stored skill type, the missing / below / met classification with its unmet count, and the recompute-replaces-rows idempotency guarantee.

Honest about the edges

What this does not do, so nothing surprises you.

  • Gap computation is triggered manually from the employee form button or the action_compute_skill_gaps method; this module ships no scheduled cron to refresh gaps automatically.
  • Gaps are computed for employees against their assigned job; the module does not score recruitment candidates or applicants.
  • Gap rows are a materialized snapshot from the last recompute, not a live computed field; they do not auto-update when an employee's skills or the job's requirements change until you recompute.
  • This module does not define skills, skill types or levels itself; those come from standard Odoo Skills (hr_skills), which it depends on and extends.
  • It targets Odoo 18 Community and depends on eh_hr_core and eh_hr_compat from the EH HR Platform, plus hr and hr_skills.
  • It does not add its own audit log, approval chain, workflow or notifications; it reads and compares standard skill data.
Search

odoo skills gap analysis, job required skills odoo, competency matrix odoo, employee skill assessment, hr_skills extension, required proficiency level, skill matrix per job position, odoo 18 talent management, skill gap report, missing skills employee, odoo community hr skills, workforce competency tracking

Work with ERP Heritage

Need this fitted to the way you work?

ERP Heritage delivers end to end Odoo work: Odoo Implementation, Customization and Development, Integration, Migration, Consultation, Support and Training. We help teams put this module into production, shape it to their process, and keep it running.

Build and tailor
Odoo Implementation, Customization and Development, scoped to your workflow.
Connect and move
Odoo Integration and Migration across systems and Odoo versions.
Run and support
Odoo Support and Training so your team stays productive after go live.
Plan and advise
Odoo Consultation and ERP Consulting, from discovery to roadmap.

We work with businesses across Australia (Melbourne, Sydney, Brisbane, Perth, Adelaide, Canberra) and the Middle East (Dubai, Abu Dhabi, Riyadh, Jeddah, Doha, Kuwait City, Muscat). Start a conversation at erpheritage.com.au or email info@erpheritage.com.au.

Languages

Available in 19 languages

The interface ships translated out of the box. Switch language in Odoo and the fields, menus, and messages follow.

ArabicChinese (Simplified)Chinese (Traditional)DutchFrenchGermanHindiIndonesianItalianJapaneseKoreanPolishPortuguese (Brazil)RussianSpanishSwedishThaiTurkishVietnamese
ERP Heritage

Production-grade Odoo HR, built to an engineering bar and documented honestly. Support: info@erpheritage.com.au
Developed by Odoo Implementation Australia • LinkedIn

v1.0.0 · LGPL-3 · Odoo 18 Community

Please log in to comment on this module

  • The author can leave a single reply to each comment.
  • This section is meant to ask simple questions or leave a rating. Every report of a problem experienced while using the module should be addressed to the author directly (refer to the following point).
  • If you want to start a discussion with the author, please use the developer contact information. They can usually be found in the description.
Community
  • Tutorials
  • Documentation
  • Forum
Open Source
  • Download
  • Github
  • Runbot
  • Translations
Services
  • Odoo.sh Hosting
  • Support
  • Upgrade
  • Custom Developments
  • Education
  • Find an Accountant
  • Find a Partner
  • Become a Partner
About us
  • Our company
  • Brand Assets
  • Contact us
  • Jobs
  • Events
  • Podcast
  • Blog
  • Customers
  • Legal • Privacy
  • Security

Odoo is a suite of open source business apps that cover all your company needs: CRM, eCommerce, accounting, inventory, point of sale, project management, etc.

Odoo's unique value proposition is to be at the same time very easy to use and fully integrated.

Website made with