【问题标题】:how to create invoice automatically validating the "Enter Transfer Details" view如何创建自动验证“输入转移详细信息”视图的发票
【发布时间】:2016-01-09 15:08:44
【问题描述】:

点击所附屏幕截图中视图的指定按钮后,我需要自动创建客户发票。我已经创建了一个覆盖按钮行为的模块(它实际上只是从 super 调用该方法,即 stock.transfer_details 的方法 do_detailed_transfer() ),但我不知道如何自动创建发票(已完成在下一个视图中。单击按钮后,odoo 显示 Create Invoice 视图,我想跳过该视图并从代码中自动执行)

Enter Transfer Details view

有什么想法吗??

编辑:

早上好,我通过检查从 stock_account 模块创建发票的代码找到了如何做到这一点,这是我的尝试:

def create_invoice(self, cr, uid, ids, context=None):
        picking_pool = self.pool.get('stock.picking')
        inv_ship_obj = self.pool.get('stock.invoice.onshipping')
        data = inv_ship_obj.browse(cr, uid, ids[0], context)
        context['date_inv'] = data.invoice_date
        inv_type = 'out_invoice'
        context['inv_type'] = inv_type
        active_ids = context.get('active_ids', [])
        res = picking_pool.action_invoice_create(cr, uid, active_ids,
                                                 journal_id = data.journal_id.id,
                                                 group = data.group,
                                                 type = inv_type,
                                                 context=context)
        return res

我只是将该方法放在一个类中并从该方法中调用它: do_detailed_transfer()

以防万一有人需要。

【问题讨论】:

    标签: openerp invoice


    【解决方案1】:

    答案在编辑中

    我还有另一个模块显示了一个表单,我通过覆盖负责该表单的方法停用了该表单。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2016-11-07
      • 1970-01-01
      • 2012-08-10
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2022-08-22
      相关资源
      最近更新 更多