我如何才能覆盖按钮“打印”的打印功能

时间:2018-12-25 10:54:25

标签: python-2.7 odoo-9

我正在使用odoo 9,我想修改发票上按钮打印的功能。因此,我创建了一个自定义模块来覆盖功能invoice_print以满足我的条件,但是我注意到工作流程中只有按钮打印栏已更改,按钮“动作”旁边的其他按钮打印不应用修改。我已经花了很多时间来搜索此按钮的功能,但是我不知道此按钮的功能在哪里有帮助吗?

enter image description here

这是我修改过的功能:

 @api.multi
def invoice_print(self):
 if (self.partner_id.CodeTVA == False) or (self.partner_id.street == False):
        raise UserError(
            _("vous ne pouvez pas lancer l impression. Veuillez remplir le code TVA et/ou l'adresse du partenaire" ))

    elif (self.partner_id.CodeTVA == True) and (self.partner_id.street == True):
        self.ensure_one()
        self.sent = True
    # return self.env['report'].get_action(self, 'account.report_invoice')
    return self.env['report'].get_action(self, 'bi_professional_reports_templates.report_invoice')

1 个答案:

答案 0 :(得分:1)

使用管理员凭据登录,激活开发人员模式,转到Technical settings -> Reports (Under actions section),搜索要定制的打印菜单,打开记录,查看元数据,获取xml ID并在源代码中查找该ID。如果要自定义该报告,请继承该报告记录或操作并进行自定义。