▶ ERP System Hierarchy and Component Organization
■ Overview
This document maps the complete hierarchical structure of the ERP system based on the
properties table. The system is organized into major modules with sub-components and controllers, creating a comprehensive business management platform.
Source:
properties.sql - Contains the complete organizational structure
Total Components: 370+ components across 13 major modules
Arabic Interface: All component names are in Arabic for localization
■ 🏗️ Complete System Hierarchy
• Level 0: Root Modules (Parent ID = 0)
▪ 1. خصائص عامه (General Properties) - ID: 1
Purpose: System-wide settings and configurations
- → القائمه (Menu) →
menuurController.php
- → إعدادات المنتج (Product Settings) →
productsettingController.php
- → مجموعات المستخدمين (User Groups) →
usergroupController.php
- → المستخدمون (Users) →
userController.php
- → شركات الشحن (Shipping Companies) →
shippercompaniesController.php
- → بوليصه الشحن (Shipping Policy) →
policyController.php
- → راس المال (Capital) →
capitalController.php
- → الأصول الثابتة (Fixed Assets) →
assetController.php
- → انواع الاصول الثابتة (Asset Types) →
assetTypeController.php
- → إعدادات البرنامج (Program Settings) →
programsettingsController.php
- → مراكز التكلفة (Cost Centers) →
costcenterController.php
- → الفروع (Branches) →
branchesController.php
- → شبكات الدفع (Payment Networks) →
paymentnetworks.php
- → شركات التأمين (Insurance Companies) →
insurancecompany.php
- → المقاسات (Measurements) →
sizecalculator.php
- → المحافظات (Governorates) →
governmentController.php
#####
1.1 الشركاء (Partners) - ID: 9
- → الشركاء (Partners) →
partnerController.php
- → مسحوبات الشركاء (Partner Withdrawals) →
partnerwithdrawalController.php
▪ 2. العملاء (Clients/Customers) - ID: 14, 166
Purpose: Complete customer relationship management
- → إدارة العملاء (Client Management) →
clientController.php ✅ DOCUMENTED
- → إيصال سداد عميل (Client Payment Receipt) →
clientPayedDeptController.php
- → معالجة حساب عميل (Client Account Processing) →
clientDeficitController.php
- → تقرير مديونية العميل (Client Debt Report) →
clientReportsController.php
- → السداد على فاتورة بصريات للعميل (Client Bill Payment) →
clientPayedDeptBillsController.php
- → الشركات - المناطق (Companies - Regions) →
clientareaController.php
- → المحافظات (Governorates) →
governmentController.php
#####
2.1 تقارير (Client Reports) - ID: 331, 360
- → تقرير عملاء ومنتجات (Clients & Products Report) →
clientsAndProductsReportController.php
- → تقرير عميل مفصل (Detailed Client Report) →
clientReportsController.php
- → كشف حساب عميل (Client Account Statement) →
clientReportsnewController.php
- → تقارير العملاء بالمناطق/الشركات (Regional Client Reports) →
clientReportsbyareaController.php
- → تقرير ربحية عميل (Client Profitability Report) →
clientProfitsController.php
- → تقرير مديونيات عملاء مجمع (Combined Client Debts Report) →
clientdebt.php
▪ 3. الموردين (Suppliers) - ID: 19
Purpose: Supplier and procurement management
- → إدارة الموردين (Supplier Management) →
supplierController.php
- → سداد ديون مورد (Supplier Payment) →
supplierPayedDeptController.php
- → معالجة عجز مورد (Supplier Deficit Processing) →
supplierDeficitController.php
- → تقرير الدفعات لمورد (Supplier Payment Report) →
supplierReportsController.php
- → تقرير مديونية مورد (Supplier Debt Report) →
supplierReportsController.php
#####
3.1 تقارير (Supplier Reports) - ID: 361
- → كشف حساب مورد (Supplier Account Statement) →
supplierReportsnewController.php
- → تقرير مشتريات مورد (Supplier Purchase Report) →
buyreport.php
- → تقرير موردين ومنتجات (Suppliers & Products Report) →
suppliersAndProductsReportController.php
▪ 4. إدارة الفواتير (Invoice Management) - ID: 31
Purpose: Complete billing and transaction management
#####
4.1 فاتورة مشتريات (Purchase Invoices) - ID: 33
- → إضافة فاتورة شراء (Add Purchase Invoice) →
buyBillController.php
- → عرض مردودات المشتريات (Purchase Returns) →
returnBuyBillController.php
- → عرض فواتير المشتريات والمردودات (Purchase Bills & Returns) →
buyAndReturnBillController.php
- → تقرير فواتير المشتريات (Purchase Invoice Report) →
buyBillreportController.php
- → تقرير فواتير مردودات المشتريات (Purchase Returns Report) →
returnBillreportController.php
#####
4.2 فاتورة المبيعات (Sales Invoices) - ID: 37
- → إضافة فاتورة مبيعات (Add Sales Invoice) →
sellbillController.php ✅ DOCUMENTED
- → عرض مردودات المبيعات (Sales Returns) →
returnsellbillController.php
- → عرض المبيعات والمردودات (Sales & Returns) →
sellbillandruternController.php
- → تقرير فواتير المبيعات (Sales Invoice Report) →
sellBillReportsController.php
- → تقرير مردودات المبيعات (Sales Returns Report) →
ReturnSellBillReportsController.php
- → تقرير نسبة بائع (Salesperson Commission Report) →
userratereportController.php
▪ 5. المنتجات (Products) - ID: 41
Purpose: Product catalog and inventory management
- → تصنيفات المنتجات (Product Categories) →
productCatController.php
- → المنتجات (Products) →
productController.php ✅ DOCUMENTED
- → طباعة السيريال (Print Serial) →
printbillserailController.php
- → وحدات القياس (Units of Measure) →
unitController.php
- → قطع الغيار (Spare Parts) →
sparePartController.php
- → إعادة الجرد (Inventory Recount) →
inventoryController.php
- → طباعة الباركود لمخزن او تصنيف (Barcode Printing) →
storeparcodeController.php
- → إضافة منتج بمقاسات او الوان (Add Product with Sizes/Colors) →
productController.php?do=addoptic
- → إضافة منتجات من اكسل (Add Products from Excel) →
productController.php?do=uploadexcel
- → إعادة جرد بالباركود (Barcode Inventory) →
inventorybybarcodeController.php
- → الوان و مقاسات (Colors & Sizes) →
sizecolorController.php
- → إرسال بريد إلكتروني بالنواقص (Email Shortages) →
productmail.php
#####
5.1 تقارير (Product Reports) - ID: 365
- → تقرير المنتجات بالمخزن اقل من الحد الأدنى (Low Stock Report) →
productlimitreportController.php
- → تقرير الأصناف بكل الأسعار (Products with All Prices) →
productReportsController.php
- → تقرير الأصناف شراء (Purchase Products Report) →
productReportsController.php
- → تقرير أرباح صنف (Category Profit Report) →
profitproductcatController.php
- → تقرير أرباح منتج (Product Profit Report) →
profitproductController.php
▪ 6. الصيانه (Maintenance) - ID: 47
Purpose: Maintenance and service management
- → استلام منتج (Product Receipt) →
productRecieveController.php
▪ 7. المصروفات والايرادات (Expenses & Income) - ID: 49
Purpose: Financial management beyond sales and purchases
#####
7.1 الخزن (Cash Management) - ID: 50
- → الخزن (Safes/Cash Boxes) →
saveController.php
- → التحويل بين الخزن (Cash Transfer) →
transfermoneyController.php
- → معالجة عجز خزنة (Cash Deficit Processing) →
settlementsaveController.php
#####
7.2 إدارة البنوك (Bank Management) - ID: 54
- → البنوك (Banks) →
bankController.php
- → حسابات البنوك (Bank Accounts) →
bankaccountController.php
- → حركة حساب (Account Movement) →
bankAccountOpController.php
#####
7.3 الشيكات (Checks) - ID: 57
- → الايداعات (Deposits) →
depositcheckController.php
- → المسحوبات (Withdrawals) →
checkwithdrawalController.php
- → الشيكات المؤجلة (Post-dated Checks) →
datedCheckedController.php
#####
7.4 Other Financial
- → الكمبيالات (Bills of Exchange) →
kempialaController.php
- → انواع المصروفات (Expense Types) →
expensesTypeController.php
- → المصروفات (Expenses) →
expensesController.php
- → تحويل نقدي (Cash Transfer) →
cashTransferController.php
- → انواع الايرادات (Income Types) →
incomeTypeController.php
- → الايرادات (Income) →
incomeController.php
▪ 8. المخازن (Warehouses) - ID: 63
Purpose: Warehouse and inventory management
- → المخازن (Warehouses) →
storeController.php
- → التحويل بين المخازن (Store Transfer) →
storemovementController.php
- → تسوية مخزن (Store Settlement) →
settlementstoreController.php
- → التحويل بين اكثر من مخزن (Multi-Store Transfer) →
otherstoremovementController.php
- → أذن تحميل بين المخازن (Store Transfer Request) →
storetransferrequestController.php
- → أذن ارتجاع بين المخازن (Store Return Request) →
storeAskedRefluxController.php
- → تالف مواد تشغيل (Raw Material Damage) →
restaurantRawDestruction.php
▪ 9. التقارير (Reports) - ID: 67
Purpose: Business intelligence and analytics
- → تقرير يومية الخزنة (Daily Cash Report) →
savedailyController.php
- → رصيد المخازن (Store Balance) →
storedetailController.php
- → تقرير حركة المخازن (Store Movement Report) →
storereportController.php
- → تقرير ارباح مدة (Period Profit Report) →
profitreportController.php
- → تقرير حسابات مجمعة (Combined Accounts Report) →
balancereportController.php
- → تقرير مبيعات مبسط (Simple Sales Report) →
productsellsreportController.php
- → تقرير حركة المستخدمين (User Activity Report) →
movementmanageController.php
- → تقرير المصروفات (Expenses Report) →
expensesReportController.php
- → تقرير عملاء ومنتجات (Clients & Products Report) →
clientsAndProductsReportController.php
- → تقرير يومية يوم (Daily Report) →
cashflowsController.php
- → تقرير ربحية الفواتير (Invoice Profitability) →
invoicesearningsreportController.php
- → كارت صنف (Product Card) →
productcardController.php
- → كشف حساب مورد (Supplier Statement) →
supplierReportsnewController.php
- → كشف حساب عميل (Client Statement) →
clientReportsnewController.php
- → تقرير العملاء بالمناطق/الشركات (Regional Client Report) →
clientReportsbyareaController.php
- → تقرير قائمة اسعار البضاعة (Product Price List) →
storedetailpriceController.php
- → تقرير المشتريات (Purchase Report) →
productBuyreportController.php
- → المنتجات الراكدة فى التصنيفات (Stagnant Products by Category) →
catsellrateReportController.php
- → المركز المالى (Financial Position) →
FinancialPositionController.php
- → الاشعارات (Notifications) →
noticesController.php
- → تقرير حركة منتج (Product Movement Report) →
productmovmentController.php
▪ 10. إدارة الموظفين (Employee Management) - ID: 96
Purpose: Human resources management
- → الموظفين (Employees) →
employeeController.php
- → الحوافز او الخصومات (Incentives/Deductions) →
employeePersonalController.php
- → المرتبات (Salaries) →
salaryReportController.php
- → مسيرات الراتب (Payroll Processing) →
marchSalaReport.php
#####
10.1 تقارير (Employee Reports) - ID:
201
- → تقرير الموظفين (Employee Report) →
employeereport.php
- → تقرير الدخول (Attendance Report) →
presenceReport.php
▪ 11. التصنيع (Manufacturing) - ID: 126, 307
Purpose: Production and manufacturing management
- → معادلات الانتاج (Production Equations) →
productionRateController.php
- → مراكز الانتاج (Production Centers) →
workstationController.php
- → اعداد العمليات (Operations Setup) →
settingOperationController.php
- → اعداد المراحل (Stages Setup) →
stageController.php
- → امر انتاج (Production Order) →
productionOrderController.php
- → معادلة الإنتاج (Production Equation) →
productionEquationController.php
- → أمر شغل (Work Order) →
taskOrderController.php
- → أمر إنتاج (Production Execution) →
productionExecutionController.php
- → إعدادات التصنيع المبسط (Simple Manufacturing Settings) →
simpleManufactureSettingsController.php
- → تقرير التكلفة (Cost Report) →
productionExecutionReportController.php
- → تقرير التكلفة مجمع (Combined Cost Report) →
productionExecutionCombinedReportController.php
▪ 12. حسابات (Accounting) - ID: 150
Purpose: Complete accounting system
- → دليل الحسابات (Chart of Accounts) →
accountstree.php
- → قيد يومية (Daily Entry) →
dailyentry.php
- → دفتر الأستاذ العام (General Ledger) →
generalledger.php
- → دفتر الأستاذ المساعد (Assistant Ledger) →
assistantledger.php
- → ميزان المراجعة (Trial Balance) →
trialbalance.php
- → تقرير المتاجرة (Trading Report) →
tradingreport.php
- → تقرير الأرباح و الخسائر (P&L Report) →
profitandlossreport.php
- → الميزانية العمومية (Balance Sheet) →
thebalancesheet.php
- → تقرير حقوق الملكية (Equity Report) →
propertyrightsreport.php
- → قيد يومية مجمع (Combined Daily Entry) →
dailyentrymany.php
- → طباعة قيد يومية (Print Daily Entry) →
propertiesController.php
▪ 13. عروض الاسعار (Price Offers) - ID: 160
Purpose: Quotation and pricing management
- → عروض الاسعار (Price Offers) →
priceoffersController.php
▪ 14. بصريات (Opticals) - ID: 162
Purpose: Specialized optical business management
- → الورش (Workshop) →
workshop.php
- → فواتير (Bills) →
bills.php
- → النقل (Transport) →
workshoptransport.php
- → العيادات (Clinics) →
rb_clinics.php
- → الاستقبال (Reception) →
rb_kashf.php
- → الكشف (Examination) →
rb_doc_kashf.php
- → مرتجعات فواتير (Bill Returns) →
billsreturn.php
- → طلب منتج من مخزن آخر (Product Request from Another Store) →
productrequest.php
- → طلبات اخري من الفروع (Other Branch Requests) →
otherrequests.php
- → تقرير سائق (Driver Report) →
driveropticreport.php
- → فاتورة شراء (Purchase Invoice) →
bills.php?do=buybill
▪ 15. إيصالات (Receipts) - ID: 198
Purpose: Receipt and payment voucher management
- → ايصالات قبض (Receipt Vouchers) →
clientreceiptController.php
- → إيصالات دفع (Payment Vouchers) →
supPayController.php
▪ 16. الايجارات (Rentals) - ID: 210
Purpose: Rental business management
- → منتجات (Rental Products) →
rentproducts.php
- → فاتورة ايجار (Rental Invoice) →
rentbill.php
- → تاريخ المنتج (Product History) →
rentproduct_history.php
- → تقرير المتاخرات (Delay Report) →
rentdelays.php
- → تقرير غير مؤجر (Non-rented Report) →
rentava.php
▪ 17. المطاعم (Restaurants) - ID: 293
Purpose: Restaurant and hospitality management
- → الصالات (Halls) →
restauranthall.php
- → الطاولات (Tables) →
restauranttable.php
- → فاتورة (Restaurant Bill) →
sellbillController.php?do=addresBill
- → طباعة المطبخ (Kitchen Printer) →
restaurantKitchenPrinter.php
- → الطابعات (Printers) →
restaurantprinters.php
- → تقرير الأوردرات (Orders Report) →
ordersreport.php
- → أوردرات الديليفري (Delivery Orders) →
orderstatusreport.php
- → تقرير أوردرات سائق (Driver Orders Report) →
orderdeliveryreport.php
▪ 18. تقارير* (Quick Reports) - ID: 317
Purpose: Fast access reports
- → تقرير ارباح عمومية (General Profit Report) →
quickprofitreports.php
- → تقرير ارباح يوم (Daily Profit Report) →
quickprofitreports.php?do=day
- → تقرير ارباح محزن باليوم (Store Daily Profit) →
quickprofitreports.php?do=storeday
• Specialized Modules (Limited Access)
▪ المشروعات (Projects) - ID: 173
Purpose: Project management
- → المشروعات (Projects) →
projectController.php
- → صرف مواد (Material Issue) →
projectoperationController.php
- → مرتجع مواد (Material Return) →
projectoperationControllerreturn.php
- → صرف مصروف (Expense Issue) →
expenseexchange.php
- → تقارير المشروعات (Project Reports) →
projectReportController.php
▪ العهد (Custody) - ID: 187
Purpose: Asset custody management
- → إدارة العهد (Custody Management) →
bind.php
- → تسوية العهد (Custody Settlement) →
bindsettlement.php
- → تقرير العهد (Custody Report) →
bindsettlement.php?do=showreport
■ 📊 System Statistics
• Module Distribution
- → Core Business: 8 major modules (Clients, Suppliers, Products, Sales, Purchases)
- → Financial: 4 modules (Expenses/Income, Accounting, Receipts, Cash/Bank)
- → Operational: 4 modules (Warehouses, Manufacturing, Maintenance, Reports)
- → Specialized: 7 modules (Opticals, Restaurants, Projects, Rentals, etc.)
- → System: 2 modules (General Properties, Employee Management)
• Controller Distribution
- → 185+ Controllers mapped across the hierarchy
- → 67 Report Controllers (largest category)
- → 31 Financial Controllers
- → 41 Product/Inventory Controllers
- → 19 Client/Supplier Controllers
• Integration Patterns
Every controller follows the integration patterns documented in
ERP_SYSTEM_FUNCTION_WORKFLOW_DOCUMENTATION.md:
- → Daily entry system (accounting)
- → Plugin routing system
- → Account tree integration
- → Session management
- → Multi-branch support
■ 🔗 Cross-Module Relationships
• Core Integration Points
- Sales → Affects: Clients (debt), Products (inventory), Cash/Bank (payment), Accounting (journal)
- Purchases → Affects: Suppliers (payables), Products (inventory), Cash/Bank (payment), Accounting (journal)
- Products → Used by: Sales, Purchases, Manufacturing, Warehouses, Reports
- Accounting → Receives from: ALL financial modules via daily entry system
- Reports → Reads from: ALL modules for business intelligence
• Data Flow Patterns
Transaction Entry → Business Logic → Account Tree Update → Journal Entry → Report Generation
• Permission Hierarchy
Each component has a
propertydefault field indicating visibility:
- →
1 = Default visible (most components)
- →
0 = Requires special permission (specialized modules)
■ 🎯 Business Process Flows
• Sales Process
Products → Sales Invoice → Client Debt → Cash/Bank → Daily Entry → Reports
• Purchase Process
Suppliers → Purchase Invoice → Inventory Update → Accounts Payable → Daily Entry → Reports
• Financial Management
Cash/Bank Operations → Daily Entry → Chart of Accounts → Financial Reports
• Inventory Management
Products → Warehouses → Store Movements → Inventory Reports → Accounting Integration
■ 🌐 Multi-Module Features
• Report Integration
The Reports module (ID: 67) provides analytics across all modules:
- → Financial reports from accounting data
- → Inventory reports from warehouse data
- → Sales reports from invoice data
- → Client reports from CRM data
• Accounting Integration
The Accounting module (ID: 150) receives data from all financial modules:
- → Automatic journal entries from sales/purchases
- → Cash flow from banking operations
- → Expense/income postings
- → Asset depreciation
• User Management
System-wide user and permission management:
- → User groups and individual users
- → Branch-based access control
- → Module-specific permissions
- → Activity tracking and reporting
This hierarchical structure provides the foundation for understanding how the ERP system is organized and how the 185+ controllers relate to each other within the business context.