Hi Joe,
Awesome experience! I’ve been in the manufacturing world for over 20 years, used various ERP, and also using Epicor for about 7 years. In E10, MRP certainly considers all the levels on a MOM. It uses a calculation to determine a parts ‘level’ or ‘low level code’. Level 0 is something that is only sold. Level 1 is something that is used to make level 0 items, level 2 is used to make level 1 and so on. Then, all level 0’s are planned/calculated first since the demand for these is driven from the sales orders. Then the level 1’s are planned and so on. MRP does backwards scheduling only.
Pull as Assembly, when selected, basically is putting the exploded BOM of a sub-assembly on the job - even if it’s stocked - so you wouldn’t just see the finished good material, but you’d see the components of it also. Even if a part is marked Stocked, if you have Pull as Assembly checked, it will make the sub-assembly on the job instead of pulling from stock.
Plan as Assembly, when selected, assumes you will fill demand from stock, however, if stock is not available within the manufacturing lead time, MRP will then plan it as a sub-assembly. This is done only when the job required date falls within the cumulative lead time; jobs outside of the cumulative lead time are created in MRP. If Clear the material requirement is fulfilled from stock and is not being planned as an assembly in MRP if not enough stock is available during the manufacturing lead time, then make sure the checkbox is cleared/unchecked.
If you are seeing different results, you may want to log a call with Epicor support to determine the issue.
Thanks for sharing your experience and questions! I hope I could help in some small way.