OdooWiki OCA HUB

HR Timesheet Sheet Attendance

hr_timesheet_sheet_attendance folder_open OCA/timesheet open_in_new
Human Resources License: AGPL-3

This module extends the functionality of hr_timesheet_sheet and help employees to manage their attendance according to timesheet period. It provide functionality to checkin/checkout directly from timesheet-sheet. It also help you/management in performace evaluation by displaing total attendance time and difference of total attendance time and total working time.

auto_awesome What this module does

AI-generated from the code · Odoo 18.0

Employees can check in and check out directly from their timesheet sheet, and the sheet shows total attendance hours and the difference versus timesheet hours. Attendance entries are automatically linked to the matching timesheet period.

This module connects attendance records with timesheet sheets so that the two stay consistent.

On a timesheet sheet, a new Attendances tab shows the employee's current attendance status and Check In / Check Out buttons, plus the list of attendance entries for that period. The sheet also displays total attendance time and the difference between attendance time and timesheet time, and a button shows how many attendances are linked.

Attendance records automatically get linked to the timesheet sheet whose dates cover the check-in date, using the employee's time zone. When a new timesheet sheet is created, existing unlinked attendances falling inside its period are attached to it.

Business rules are enforced: you cannot add or delete an attendance that belongs to a submitted or confirmed timesheet, and attendance dates must fall inside the timesheet period. A timesheet cannot be submitted while an attendance has a check-in without a check-out.

Attendance list, form and filter views now show the related timesheet sheet, and the timesheet sheet list shows total attendance and difference columns.

Depends on

hr_attendancehr_timesheet_sheet
Models and fields (2)
  • hr.attendance · extends an existing modelsheet_id (Sheet)
  • hr_timesheet.sheet · extends an existing modelattendances_ids (Attendances), attendance_count, attendance_state (Current Status), total_attendance, total_difference (Difference)

Text generated by AI (DeepSeek) from reading the Odoo 18.0 code on GitHub; it may contain mistakes, so check the code before deciding. View the code on GitHub

Availability by version

Reviewed: 2026-11-03
Confirmed (verified in repository and branch) Estimated (unverified) No information

Confirmation status: 5 confirmed, 4 with no information of 9 versions.

Sources · Odoo 16.0

Confirmed on 2026-11-03 in branch 16.0 of OCA/timesheet.

terminal Installation and usage

OCA documentation · Odoo 18.0

This module relies on:

  • The OCA module 'HR Timesheet Sheet', and can be downloaded from Github:
  • Goto Timesheets \> My Timesheet Sheets and create a timesheet
  • Goto tab Attendances on timesheet form
  • You can see there your current status checkin/checkout
  • You also can create attendance by clicking on button Check In/Check Out on right side
  • You can see your attendance that belongs to current timesheet on left side in same tab
  • 'Total Attendance' is total working time based on your attendance
  • 'Difference' is the difference betwwen total attandance time and working time (sum(attendace-time) - sum(unit amount in timessheet lines))
  • Two smart buttons are present on top-right corner of timesheet form
  • First one(with time icon) will take you list of your timesheets (by default filter timesheets related to current timesheet-sheet)
  • Second one(labeled as Attendances) will take you to list of your attendances (by default filter ateendances related to current timesheet-sheet)
  • It prevents to change in any attendance related to timesheet-sheet that already has submitted
  • It also prevents to submit such a timesheet-sheet not having equal number of checkin and checkout

No verified information in OCA: Configuration.

info

Data imported from GitHub: this sheet reflects the latest catalog review, not a live lookup. Always check the module documentation and staging before installing in production.