Engineering Change Orders, BOM Versioning, Approval Workflow — Built for Manufacturers
XERPIUM PLM adalah ekosistem modul manajemen siklus produk yang dibangun di atas XERPIUM 18 — mencakup Engineering Change Orders (ECO), BOM Revision Control, Approval Workflow, Document Management, dan KPI Dashboard.
xerpium.plm.eco adalah model utama yang mengelola seluruh siklus perubahan engineering — dari draft, review, approval, hingga apply.
Setiap stage ECO dapat memiliki approval templates dengan tipe mandatory, optional, atau comment-only. Stage advance diblokir sampai semua mandatory approvals terpenuhi.
| Field | Deskripsi |
|---|---|
| name | Role / nama approval (e.g. "Engineering Manager") |
| sequence | Urutan approval dalam stage |
| approval_type | mandatory / optional / comment |
| user_ids | Users yang dapat approve (restricted to PLM User group) |
| stage_id | Stage dimana template ini berlaku |
| Field | Deskripsi |
|---|---|
| eco_id | ECO yang direquest approval |
| approval_template_id | Template reference |
| status | none / comment / approved / rejected |
| user_id | Siapa yang approved/rejected |
| approval_date | Timestamp approval |
| is_closed | Approval ditutup saat stage change |
Framework stage configurable untuk ECO — dengan Python hooks, server actions, RBAC groups, dan approval template integration.
| Stage | State | Confirm | Back | Apply |
|---|---|---|---|---|
| Draft | confirmed | ✓ | ✗ | ✗ |
| In Review | progress | ✓ | ✓ | ✗ |
| Approved | progress | ✗ | ✓ | ✓ |
| Applied | done | ✗ | ✗ | ✗ |
Modul integrasi yang menambahkan approval_template_ids ke xerpium.dynamic.stage dan meng-sync ECO stage setelah action_new_revision() dan action_apply().
xerpium.plm.document — sistem dokumen polimorfik yang dapat menempel pada ECO, BOM, Product, atau routing operation.
| Target | Field | Keterangan |
|---|---|---|
| ECO | res_model + res_id | Dokumen pendukung perubahan |
| BOM | bom_id | Dokumen teknik BOM |
| Product | product_tmpl_id | Spec sheet, datasheet |
| Operation | bom_operation_id | SOP per routing operation |
| Both BOM & Product | attached_on_mrp | Dokumen shared |
Sistem versioning terintegrasi untuk BOM dan Product — setiap ECO apply dapat menaikkan versi secara otomatis.
| Field | Tipe | Deskripsi |
|---|---|---|
| version | Integer | Version number, auto-increment pada revision |
| previous_bom_id | Many2one | Link ke BOM versi sebelumnya |
| is_revision | Boolean | True jika BOM adalah working copy dari ECO |
| eco_ids | One2many | ECO yang me-reference BOM ini |
| document_ids | One2many | Dokumen teknik terkait |
| Field | Tipe | Deskripsi |
|---|---|---|
| version | Integer | Product version, auto-increment pada ECO apply (change_type='product') |
| eco_ids | One2many | ECO yang me-reference product ini |
| eco_count | Integer | Jumlah ECO terkait (computed) |
ECO otomatis mengkomputasi perbedaan antara BOM lama dan BOM baru menggunakan _get_difference_bom_lines():
xerpium_dashboard_plm — Dashboard KPI dengan 6 widget, dual data source (ORM + SQL), auto-refresh setiap 5 menit.
| Widget | Tipe | Warna | Source |
|---|---|---|---|
| Total ECOs | KPI Tile | Blue | ORM |
| Pending Approvals | KPI Tile | Orange | SQL |
| Active BOMs | KPI Tile | Green | SQL |
| Versioned Products | KPI Tile | Purple | SQL |
| ECOs by Stage | Pie Chart | Blue | SQL |
| ECO Trend (12 months) | Line Chart | Green | SQL |
PLM terintegrasi penuh dengan ekosistem manufaktur XERPIUM.
Two-tier access control dengan multi-company isolation dan granular per-model permissions.
| Group | Implies | Hak Akses |
|---|---|---|
| PLM User | MRP User | R W C (no delete) pada ECO & Document |
| PLM Manager | PLM User | Full CRUD semua model PLM |
| Model | PLM User | PLM Manager |
|---|---|---|
| xerpium.plm.eco | R W C | Full CRUD |
| xerpium.plm.eco.type | Read only | Full CRUD |
| xerpium.plm.eco.approval | R W | Full CRUD |
| xerpium.plm.eco.approval.template | Read only | Full CRUD |
| xerpium.plm.eco.bom.change | Read only | Full CRUD |
| xerpium.plm.eco.routing.change | Read only | Full CRUD |
| xerpium.plm.eco.tag | Read only | Full CRUD |
| xerpium.plm.document | R W C | Full CRUD |
| vit.dashboard | Read only | Full CRUD |
Grouped by stage, drag-and-drop, priority widget, responsible avatar
Code, name, product, BOM, responsible, tags, stage, state, effectivity date
Header buttons, stat buttons, notebooks for changes, approvals, documents
7 model PLM + 4 inherited model dengan integrasi penuh ke MRP ecosystem.
| Model | Deskripsi |
|---|---|
| xerpium.plm.eco | Engineering Change Order — model utama |
| xerpium.plm.eco.type | ECO Type dengan mail alias |
| xerpium.plm.eco.approval | Approval record per ECO |
| xerpium.plm.eco.approval.template | Template approval per stage |
| xerpium.plm.eco.bom.change | BOM line/byproduct change tracking |
| xerpium.plm.eco.routing.change | Routing/operation change tracking |
| xerpium.plm.eco.tag | ECO tag dengan color |
| xerpium.plm.document | Polymorphic document (file/link/text) |
| Model | Field Tambahan |
|---|---|
| product.template | version, eco_ids, eco_count |
| product.product | eco_ids, eco_count |
| mrp.bom | version, previous_bom_id, is_revision, eco_ids, document_ids |
| mrp.bom.line | _get_sync_values() untuk diffing |
| mrp.bom.byproduct | _get_sync_values() untuk diffing |
| mrp.routing.workcenter | document_ids, document_count |
| mrp.production | eco_ids, eco_count, action_create_eco() |
| xerpium.dynamic.stage | approval_template_ids (via _plm module) |
| Aspek | Competitor PLM | XERPIUM PLM |
|---|---|---|
| Lisensi | Per-user / add-on fee | SaaS / On Premise |
| ECO Workflow | Enterprise only | ✓ Included |
| BOM Version Control | Enterprise only | ✓ Full versioning |
| Approval Workflow | Limited / Enterprise | ✓ Role-based, stage-gated |
| Dynamic Stage | ✗ Hard-coded | ✓ Configurable per model |
| Document Management | Separate module | ✓ Built-in (file/link/text) |
| Manufacturing Integration | Limited | ✓ One-click ECO from MO |
| Change Impact Analysis | Manual | ✓ Auto-diff BOM lines |
| KPI Dashboard | ✗ Not available | ✓ 6 widgets, auto-refresh |
| Mail Alias | ✗ Not available | ✓ Email-to-ECO |
| Multi-Company | Enterprise only | ✓ Included |
| Rebase & Conflict | ✗ Not available | ✓ State: rebase / conflict |
| User Guide | External documentation | ✓ Built-in HTML guide |