如何从 Odoo13 中的自定义模块生成发票?

How to generate an invoice from a custom module in Odoo13?

我正在开发自定义模块。

我尝试使用以下代码通过对象按钮添加它,但似乎不起作用

    def create_invoice(self):
        rslt = self.env['account.invoice'].create({
                    'partner_id': self.instructor.id,
                    'name': 'customer invoice',
                    'type': 'out_invoice',
                    'date_invoice': 'create_date'
                })
        return rslt

如何添加生成发票的按钮?

德苏

Odoo13开始,发票对象发生了变化,现在是account.move而不是account.invoice。你可以参考这个demo 例子。

invoice = self.env['account.move'].create({
    'type': 'out_invoice', 
    'journal_id': journal.id,
    'partner_id': product_id.id,
    'invoice_date': date_invoice,
    'date': date_invoice,
    'invoice_line_ids': [(0, 0, {
        'product_id': product_id.id,
        'quantity': 40.0,
        'name': 'product test 1',
        'discount': 10.00,
        'price_unit': 2.27,
    })]
})