Odoo验证代码发票

时间:2016-02-13 01:59:03

标签: openerp odoo-8 invoice

我从另一个模型创建发票,并希望获得验证而不是草稿 但是我的代码不会生成内部数字和总数。

invoice_id = self.pool.get('account.invoice').create(cr, uid,{
                                  'partner_id':self.supplier.id,
                                  'name' : 'Faltante mercaderia',
                                  'journal_id': journal_id,
                                  'account_id':account_id,
                                  'type': 'in_refund',
                                    })
self.pool.get('account.invoice.line').create(cr, uid,{
                'invoice_id' : invoice_id,
                'name' : 'Faltante mercaderia %s: %s' %(self.type,self.number),
                'quantity' : self.dif_final,
                'price_unit':self.tarifa_dif / 1000,
            })
a = self.env['account.invoice'].browse([invoice_id])
a.invoice_validate()

我也尝试添加a.action_number()

2 个答案:

答案 0 :(得分:1)

此代码适用于您:

inv_obj = self.pool.get('account.invoice')
inv_obj.button_compute(cr, uid, [invoice_id], context=context, set_total=True)
inv_obj.action_date_assign(cr, uid, invoice_id, context=context)
inv_obj.action_move_create(cr, uid, invoice_id, context=context)
inv_obj.action_number(cr, uid, invoice_id, context=context)
inv_obj.invoice_validate(cr, uid, invoice_id, context=context)

您可以通过调用上述所有方法进行检查,并告知我们。

答案 1 :(得分:0)

validate按钮向工作流程发送信号,您只需发送相同的信号:

a.signal_workflow('invoice_open')