RE: For Specific Customer if we add Part A to SO then BC always add Part B and C
I would create another page.
Something similar to the item cross-reference table.
A new table 'Customer/ complimentary Items.'
The fields of this new table could be: Customer No., Item No. , if the item is a 'Parent' or 'Child', Quantity(Base) and, maybe, valid-from and valid-to date.
You will define a combination of customer/ parent items and minimum quantities that trigger the addition of the child items and their quantity when the parent item is added to the order.
I cannot help you with the code. But from a solution point of view, that could be a starting point.