Maybe this will help guide your setup.
 
Shariq, your use case is rich and well-detailed — and it aligns closely with the type of advanced product configuration and dynamic pricing that Business Central can support with some customization and structured setup.
 
Let me break this down by your main requirements and provide practical recommendations:
 
 
---
 
1. Managing Complex Product Variants and Parent Codes
 
Standard BC Variants are limited to size/color-type scenarios. For sectional sofas and configurable products, you should consider creating:
 
A custom “Parent Item” structure, where each component is an inventory item, and the parent code (e.g., Unit #2) is a non-inventory or assembly item that references the configuration.
 
Use custom fields or dimension combinations to build unique codes at the time of PO creation.
 
 
For dynamic code generation, implement a codeunit that builds the variant/parent code string using selected attributes (e.g., brand + material + finish + collection).
 
 
 
---
 
2. Dynamic Item and Code Generation at PO Level
 
This will require custom AL logic triggered when a PO line is created.
 
The logic would:
 
Check if the variant with the given attributes exists.
 
If not, auto-create a new item or variant with a generated code.
 
Assign the new item/variant to the PO line and link it to a parent via a common code or table.
 
 
 
 
---
 
3. Dynamic Pricing Based on Category and Customization
 
Use a custom pricing engine or table that maps:
 
Material category → Base price
 
Finish/customization → Add-ons
 
 
This can be implemented with a price matrix stored in a table and applied using an OnInsert trigger on sales or purchase lines to calculate final price.
 
You can also utilize extended price logic using the Sales Price & Line Discount features, combined with dimensions or item attributes.
 
 
 
---
 
4. Inventory Tracking at Component and Parent Level
 
Track inventory at the component level (real items).
 
The parent code can be managed as a non-inventory item for grouping purposes or via BOM/Assembly Items if needed.
 
Use Item Attributes or Dimensions to help with tracking custom configurations.
 
 
 
---
 
5. Recommendations
 
Set up a custom configuration table to manage possible combinations and prevent duplicates.
 
Consider using Production BOM or Assembly BOM for grouping components, depending on whether you manufacture or assemble in-house.
 
If your POs are complex, consider developing a custom PO entry interface or page extension where users select from dropdowns (brand, material, finish), and the system generates item and parent codes accordingly.
 
 
 
---
 
To get this working effectively:
 
You’ll likely need a Microsoft Partner or AL developer to help implement:
 
Auto-generation logic for item/parent codes
 
Custom pricing matrix logic
 
Custom pages to simplify order entry and configuration
 
 
This is a very common setup in furniture and luxury retail, and with the right design, BC can handle it smoothly.
 
 
 
---
 
Let me know if you'd like a sample AL structure for dynamic item code creation or pricing logic.
 
Mark this as the verified answer if it helps.