Base Modules Overview¶
Netforce comes with a comprehensive set of base modules that provide the core business functionality. These modules are designed to work together seamlessly, sharing common data models and business logic patterns.
Module Architecture¶
Each base module follows a consistent structure:
- Models - Core business entities and their relationships
- Layouts - User interface definitions (forms, lists, dashboards)
- Actions - Business logic and workflows
- Reports - Data analysis and document generation
Core Module Dependencies¶
The modules have a logical dependency hierarchy:
netforce (core framework)
├── netforce_contact (contacts & addresses)
├── netforce_product (products & categories)
├── netforce_account (financial accounting)
├── netforce_stock (inventory management)
├── netforce_sale (sales processes)
├── netforce_purchase (procurement)
└── netforce_general (utilities & configuration)
Data Integration¶
All modules share common integration points:
- Contacts - Customers, suppliers, and business partners
- Products - Items that can be sold, purchased, or tracked
- Accounts - Chart of accounts for financial tracking
- Companies - Multi-company support across all modules
- Sequences - Auto-numbering for documents
- Workflows - Approval processes and state management
Module Features Summary¶
| Module | Core Purpose | Key Models | Integration Points |
|---|---|---|---|
| Contact | Customer/Supplier Management | Contact, Address, Category | All sales, purchase, accounting |
| Product | Product Catalog Management | Product, Category, Price List | All inventory, sales, purchase |
| Account | Financial Accounting | Account, Invoice, Journal Entry | All financial transactions |
| Stock | Inventory Management | Stock Move, Location, Picking | Products, sales, purchase |
| Sales | Sales Order Management | Sale Order, Quotation | Contacts, products, stock, accounting |
| Purchase | Procurement Management | Purchase Order, Receipt | Contacts, products, stock, accounting |
Development Patterns¶
All base modules follow consistent development patterns:
Model Naming Convention¶
- Main entities:
module_name(e.g.,contact,product) - Related entities:
module_name.subtype(e.g.,contact.categ,product.brand) - Transaction documents:
document.type(e.g.,sale.order,purchase.order)
State Management¶
Most business documents follow a standard state flow:
Relationship Patterns¶
- Many2One: References to master data (contact_id, product_id)
- One2Many: Document lines and related records
- Many2Many: Categories, tags, and classifications
Audit and History¶
All modules support:
- Audit logging (_audit_log = True)
- Change history (_history = True)
- Multi-company isolation (_multi_company = True)
Next Steps¶
Explore the detailed documentation for each module:
- Contacts - Customer and supplier management
- Products - Product catalog and pricing
- Accounting - Financial management (coming soon)
- Stock - Inventory and warehouse management (coming soon)
- Sales - Sales order processing (coming soon)
- Purchase - Procurement and purchasing (coming soon)
Each module page provides: - Core model definitions and field explanations - Business logic and workflow examples - Integration patterns with other modules - Best practices for customization and extension