It looks like in your example it’s not really a Cartesian product because dates
02/01/2017
03/01/2017
05/01/2017
are missing for Part Number “A”.
I assume you still need a Cartesian product here. The idiomatic way for obtaining it is adding a dummy column in each dataset and then do left/full join on that dummy column.
To interpolate stock numbers for the new rows use Fill Down and Shift columns. See the project below:
stock interpolation.morph (6.8 KB)
See also: Generating Multiple Rows with one Row