# How to override logic in the OOB step BOM from wizard assemble?

**URL:** <https://community.criticalmanufacturing.com/t/how-to-override-logic-in-the-oob-step-bom-from-wizard-assemble/608>\
**Category:** Extensibility\
**Tags:** ui, v11.3\
**Created:** [March 13, 2026, 1:02pm UTC](https://community.criticalmanufacturing.com/t/how-to-override-logic-in-the-oob-step-bom-from-wizard-assemble/608 "2026-03-13T13:02:28Z")\
**Posts on this page:** 1\
**Page:** 1

<div class="post-metadata">

**Author:** ![tan\_vu](https://avatars.discourse-cdn.com/v4/letter/t/b9e5f3/32.png) [@tan\_vu](https://community.criticalmanufacturing.com/u/tan_vu)\
**Post date:** [March 13, 2026, 1:02pm UTC](https://community.criticalmanufacturing.com/t/how-to-override-logic-in-the-oob-step-bom-from-wizard-assemble/608/1 "2026-03-13T13:02:28Z")

</div>

Hi,  
I would like to customize the step BOM in the material WizardAssemble because I need to change some logic on the Material search form, so I try to do some ways:

- Create a new component that extends WizardAssembleStepBOM

- Clone code WizardAssembleStepBOM from node\_modules

With this config to replace the OOB component to a new one.

{

id: ‘cmf-core-controls-wizard’,

context: ‘cmf-mes-material-wizardassemble’,

subComponentsToRemove: [

{

target: {

element: ‘cmf-core-controls-wizard-step[maintitle=“BOM”]’

}

}

]

,

subComponentsToAdd: [{

target: {

anchor: ‘cmf-core-controls-wizard-step’,

index: 0,

location: FlexComponentLocation.NextTo

},

components: [

{

component: () =\> import(

/\* webpackExports: “WizardCustomAssembleStepBOMComponent” \*/

‘cmf-custom-global-html’).then(m =\> m.WizardCustomAssembleStepBOMComponent),

subComponent: ‘cmf-core-controls-wizard-step’

}

]

}]

}

But with both ways, the @Input params cannot be populated from the parent component (or somewhere I don’t know).

Also, the UI and behavior is not the same with OOB although I didn’t change anything after extending or cloning.

Anyone can help or give me some suggestions/examples to implement the best practice?

Thank you so much.
