Complete reference for DTG Base module utilities and helpers. DTGBase is an abstract model providing common utility methods for date/time handling, barcode generation, timezone conversion, file operations, and more.
Complete reference for DTG Base module utilities and helpers. DTGBase is an abstract model providing common utility methods for date/time handling, barcode generation, timezone conversion, file operations, and more.
Complete reference for DTG Base module utilities and helpers. DTGBase is an abstract model providing common utility methods for date/time handling, barcode generation, timezone conversion, file operations, and more.
globs
**/addons_customs/erp/**/*.py
license
MIT
author
UncleCat
version
1.0.0
DTG Base Skill
Complete reference for DTG Base module utilities and helpers in Odoo 18.
What is DTG Base?
DTG Base is a custom abstract model (dtg_base.DTGBase) that provides common utility methods for Odoo development. It's designed to be inherited by other models to gain access to helpful utilities.
from odoo import models
classMyModel(models.Model):
_name = 'my.model'
_inherit = ['dtg_base.dtg_base']
defmy_method(self):
# Now you have access to all DTGBase utilities
first_date = self.find_first_date_of_period('2024-01-15', 'month')
utc_date = self.convert_local_to_utc('2024-01-15 10:00:00')
File Structure
agent-skills/skills/dtg-base/
├── SKILL.md # This file - master index
├── odoo-18-dtg-base-guide.md # Complete DTG Base utilities reference
└── README.md # Skill overview
Utilities Overview
Date & Period Utilities
find_first_date_of_period(date, period_type) - Get first date of period
find_last_date_of_period(date, period_type) - Get last date of period
period_iter(start_date, end_date, period_type) - Iterate over periods
Timezone Conversion
convert_local_to_utc(local_dt, tz=None) - Convert local datetime to UTC
convert_utc_to_local(utc_dt, tz=None) - Convert UTC datetime to local
Barcode Utilities
barcode_exists(barcode, exclude_id=0) - Check if barcode already exists
get_ean13 barcode) - Generate/check EAN13 barcode
Batch Processing
splittor(limit=None) - Split recordset into batches for processing
String & Text Utilities
strip_accents(text) - Remove Vietnamese accents
_no_accent_vietnamese(text) - Convert Vietnamese text
File Utilities
zip_dir(source_dir, output_file) - Zip a directory
zip_dirs(dirs, output_file) - Zip multiple directories
_get_file_size(file_path) - Get human-readable file size
Number Utilities
round_decimal(value, decimal_places) - Round to specific decimal places