Membuat printout di odoo consist dalam 3 hal.

  1. Membuat paper format
  2. Mendaftarkan report action nya
  3. Membuat Qweb Layout nya, dan sedikit code html dan css.

Ini adalah contoh code dari printout invoice:

  1. blok code record paling atas adalah define paperformat
  2. blok code record paling bawah adalah report action nya
  3. [this area where you edit the page]
<?xml version="1.0" encoding="UTF-8"?>

<odoo>
    <data noupdate="1">
        <record id="hit_invoice_paper_format" model="report.paperformat">
            <field name="name">CDV Paperformat</field>
            <field name="format">A4</field>
            <field name="orientation">Portrait</field>
            <field name="margin_top">35</field>
            <field name="margin_bottom">20</field>
            <field name="margin_left">15</field>
            <field name="margin_right">15</field>
            <field name="header_line" eval="False"/>
            <field name="header_spacing">20</field>
            <field name="dpi">120</field>
        </record>
    </data>
    <data>
        <template id="hit_invoice_printout">
            <t t-call="web.html_container">
                <t t-set="paperformat" t-value="env.ref('hit_tr_accounting.hit_invoice_paper_format')"/>
                <t t-foreach="docs" t-as="doc">
                    <t t-call="web.basic_layout">
                    
                    [This area where you edit the page]
                    
                    </t>
                </t>
            </t>
        </template>

        <record id="action_custom_invoice_report" model="ir.actions.report">
            <field name="name">Print Invoice</field>
            <field name="model">account.move</field>
            <field name="report_name">hit_tr_accounting.hit_invoice_printout</field>
            <field name="report_file">hit_tr_accounting.hit_invoice_printout</field>
            <field name="report_type">qweb-pdf</field>
            <field name="binding_model_id" ref="hit_tr_accounting.model_account_move"/>
            <field name="binding_type">report</field>
            <field name="paperformat_id" ref="hit_tr_accounting.hit_invoice_paper_format"/>
            <field name="print_report_name">('Invoice_%s' % (object.name or 'Draft')).replace('/', '_')</field>
        </record>
    </data>
</odoo>

Related Links: Instalasi Odoo Apa Itu Odoo Mengatasi Table Border di Hasil Printout