I have successfully used the code below to hide the internal reference on a printed sales quote/order, but it does not work on a printed invoice, even though the xml structure of both views is essentially the same (unless I'm missing something). Thoughts? Odoo v11 CE
Note: if I change the "l.name" code to "l.product_id.name" directly in the report_invoice_layouted QWeb view in the Settings interface, I get the desired response (i.e. product name without the int reference).
<odoo><data>
<template id="report_invoice_product_code" inherit_id="sale.report_invoice_layouted">
<xpath expr="//span[@t-field='l.name']" position="replace">
<span t-field="l.product_id.name"/>
</xpath>
</template>
</data>
</odoo>