Cita: Es decir, la categoría no es un atributo propio del Producto; es una relación de pertenencia a un conjunto y todo conjunto con identidad es otra
Debes crear una tabla categorias y si sólo le asignas una categoría a un producto un campo idcategoria en la tabla producto.
Yo tampoco usaría totales, ni por línea de factura ni el de factura completa, pues eso lo saco con consultas. En resumen, con estos retoques y tras una lectura atenta a las aclaraciones de gnzsoloyo, la cosa iría bastante bien.