Skip to content

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:

draft → confirmed → done
cancelled (from any state)

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