Decompose the single SYSPRO inventory master into the D365 product, released product and dimension-group model, carrying planning, costing, inventory, lot and quality attributes deliberately rather than as one row.
The SYSPRO inventory master is the busiest record in the estate. It is consumed by manufacturing, by distribution, by planning, by costing and by quality, and it holds — on one record — the attributes each of those consumers needs.
The important property is that the group constructs are shared and small in number. A well-designed estate might have half a dozen storage dimension groups, a handful of tracking groups, and a modest set of item model groups. That is not a limitation;
Start with an extract of the inventory master carrying, per item: item code, description, classification codes, unit of measure, stocking behaviour, whether it is manufactured or purchased or both, whether it is lot or serial controlled, costing method, planning parameters, warehouses it is stocked in, transaction volume over a…
Mid-market estates frequently express variants as separate item codes, because that is what the source made easy. The target offers product masters with variant dimensions — colour, size, style and configuration — that generate variants from a definition.
Units are unglamorous and they gate everything. The playbook puts them before products explicitly.
A SYSPRO item classification code typically carries several meanings simultaneously, because the source provided one obvious place to put them:
SYSPRO's Manufacturing pillar includes a product configurator, and the gap register rates its parity as a medium-severity item with an ISV disposition attached, because complex configuration logic may exceed native D365 product configuration.
The dependency order for this domain is fixed by the target, and violating it produces rework rather than delay.
One SYSPRO inventory master record becomes a product plus a released product, with attributes allocated deliberately between shared and entity-specific layers. The target expresses behaviour through shared group structures. Find the families in the source; do not generate a group per item.