In short, write a utility that gets all the BOM info and then passes the info to a JSP which has code to loop through the info populating the table per the image you posted.
The JSP can be run from the WTPart's info page thus one click and you get the BOM formatted the way you want it.