Master Data Administration
Business perspective: Master Data Administration
1. Business Summary
Maintains the reference data that downstream operations depend on: brands, offices, departments, currencies, taxes, languages, subject matters, content/job types, statuses, calendar templates, holidays, custom fields, payment methods, taxes, etc.
2. Business Value
Standardizes operational vocabulary, drives validation, enables consistent reporting, supports multi-brand and multi-currency operations.
3. Users / Stakeholders
Administrators, finance, operations leads.
4. Workflows
- CRUD via scaffolded admin controllers (
AdminAppController). - Calendar definition:
CalendarTemplate(per Country) →CalendarDay/CalendarHoliday/CalendarTime. - Tax:
Tax,BrandJobTax(per brand × job-type override),OverProductionRule. - Languages:
LanguageInfojoins SourceLanguage / TargetLanguage / LanguageType / LanguageInfoSource / LanguageStatus. - Custom fields: Admin defines and binds to entities.
- Statuses & types: Many enumerations: AccountStatus, OpportunityStatus, ProjectStatus, TaskStatus, CaseStatus, PoStatus, PaymentStatus, etc.
5. Sub-Features (representative)
- Brands / Offices / Departments / Roles / JobTitles.
- Currencies / Taxes / BrandJobTaxes / OverProductionRules.
- Languages: SourceLanguage / TargetLanguage / LanguageInfo / LanguageGroup / LanguagesRegion / SubjectMatters.
- Calendars: CalendarTemplate / Day / Holiday / Time.
- Statuses & lifecycles for every operational module.
- Custom fields and entity bindings.
- Engineering/DTP/Graphics/Programming applications, layout applications.
- Checklists, ChecklistGroups, ChecklistsGroupsChecklists.
- ResourceTypes, EmployeeTypes, VendorTypes.
6. Business Rules
- Most transactional records reference master data via FKs; deletion is unsafe and typically blocked by relations.
- BrandJobTax allows brand-specific tax overrides.
- CalendarTemplate per Country; resource availability and scheduling honor template + holidays.
7. Data Entities
Each admin model under app/Plugin/admin/Model/* (≈ 200 reference tables observed).
8. Entry Points
Admin scaffolded CRUD controllers under app/Plugin/admin/Controller/.
9. Inputs & Outputs
- Inputs: admin form posts.
- Outputs: dropdown values, validation lookups, reporting dimensions.
10. Integrations
- SAP: certain master entities synchronized (Tax / Currency / Branch SAP IDs, BrandJobTax used in vendor-invoice line items).
11. Calculations / Logic
- BrandJobTax drives tax group selection in invoice generation.
- Calendar drives availability windows and deadline calculations.
12. Status Lifecycle
N/A (reference). However, many master tables themselves embed enumerations consumed elsewhere.
13. Permissions
Restricted to administrative roles.
14. Reports & KPIs
Counts and integrity reports against master tables (e.g., orphan FKs).
15. Risks & Observations
- Scaffolded CRUD provides minimal validation — broad change radius.
- Soft delete is rare; cascading deletes may orphan transactional records.
- Multi-brand parameters scattered across master tables (e.g., BrandJobTax, BrandsTemplates) require coordinated maintenance.
16. Source Code Evidence
app/Plugin/admin/Controller/*(≈ 200 controllers).app/Plugin/admin/Model/*.app/Plugin/admin/Controller/CalendarTemplatesController.php,CalendarDaysController.php,CalendarHolidaysController.php,CalendarTimesController.php.app/Plugin/admin/Controller/BrandJobTaxesController.php,OverProductionRulesController.php.app/Plugin/admin/Controller/CustomFieldsController.php,CustomFieldsEntitiesController.php.