如何自动创建发票以验证 "Enter Transfer Details" 视图
how to create invoice automatically validating the "Enter Transfer Details" view
我需要在点击所附屏幕截图中视图的指定按钮后自动创建客户发票。我已经创建了一个覆盖按钮行为的模块(它实际上只是从 super 调用方法,即 stock.transfer_details' 方法 do_detailed_transfer() ),但我不知道如何创建自动开具发票(在下一个视图中完成。单击按钮后,odoo 显示创建发票视图,我希望 ro 跳过该视图并从代码自动执行)
有什么想法吗??
编辑:
早上好,我通过检查从 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
我只是将该方法放在 class 中并从该方法中调用它:
do_detailed_transfer()
以防有人需要。
答案在编辑中
我还有另一个显示表单的模块,我通过重写负责该表单的方法将其停用。
我需要在点击所附屏幕截图中视图的指定按钮后自动创建客户发票。我已经创建了一个覆盖按钮行为的模块(它实际上只是从 super 调用方法,即 stock.transfer_details' 方法 do_detailed_transfer() ),但我不知道如何创建自动开具发票(在下一个视图中完成。单击按钮后,odoo 显示创建发票视图,我希望 ro 跳过该视图并从代码自动执行)
有什么想法吗??
编辑:
早上好,我通过检查从 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
我只是将该方法放在 class 中并从该方法中调用它: do_detailed_transfer()
以防有人需要。
答案在编辑中
我还有另一个显示表单的模块,我通过重写负责该表单的方法将其停用。