recompute_script.py 677 B

1234567891011121314151617181920212223242526272829
  1. #!/usr/bin/env python3
  2. import sys
  3. import os
  4. # Add Odoo path
  5. sys.path.append('/var/odoo/stg2.mcteam.run/src')
  6. import odoo
  7. from odoo import api, SUPERUSER_ID
  8. from odoo.tools import config
  9. # Initialize Odoo
  10. odoo.cli.server.main()
  11. # Get environment
  12. env = api.Environment(cr, SUPERUSER_ID, {})
  13. # Get all hr.efficiency records
  14. records = env['hr.efficiency'].search([('active', '=', True)])
  15. print(f"Found {len(records)} records to update")
  16. # Force recompute
  17. for record in records:
  18. record._compute_expected_hours_to_date()
  19. print(f"Updated {record.employee_id.name} - {record.month_year}: {record.expected_hours_to_date}")
  20. # Commit changes
  21. env.cr.commit()
  22. print("Done!")