使用Odoo获取与wkf按钮功能相关的order_id

时间:2015-03-17 21:01:50

标签: python python-2.7 odoo openerp-8 odoo-8

我有sale.order.recpay

class recieved_payments(osv.osv):
    _name = "sale.order.recpay"
    _description = "Recieved Payments"
    _columns = {
        'name_type': fields.selection([('creditcard', 'Credit Card'),('banktransfer', 'Bank Transfer'),('ccbooking', 'CC Booking'),('ccunbocked', 'CC Unbooked'),('cash', 'Cash'),('other', 'Other type')],
        'Type', required=True,),
        'reccieved_amount': fields.float('Amount', required=True,),
        'reccieved_notes': fields.char('Notes'),
        'datepay': fields.datetime('Date', select="1"),
        'payyment_id': fields.many2one('sale.order', 'Payments', ondelete='cascade', required=True, select="1"),
        'user_idpay': fields.many2one('res.users', 'Done by', required=True, select="1"),
}

    _defaults = {
        'user_idpay': lambda obj, cr, uid, context: uid,
        'datepay': lambda *a: time.strftime('%Y-%m-%d %H:%M:%S'),
}

这些模型在sale.order xml中的树视图

和工作流程按钮

<button name="signal_sale_fullpay_fnct" type="object"    states="prepaiiied,prepwaiting" class="oe_highlight" ] string="Full amount recieved"/>

和窗口的功能

def signal_sale_fullpay_fnct(self, cr, uid, ids, context=None):
    if not ids: return []
    dummy, view_id = self.pool.get('ir.model.data').get_object_reference(cr, uid, 'bcs_bus_gmbh9', 'view_payments_bcs_form_dialog')
    sale_obj = self.pool.get('sale.order')
    paym = self.browse(cr, uid, ids[0], context=context)
    return {
        'name':_("Register Payment"),
        'view_mode': 'form',
        'view_id': view_id,
        'view_type': 'form',
        'res_model': 'sale.order.recpay',
        'type': 'ir.actions.act_window',
        'nodestroy': True,
        'target': 'new',
        'domain': '[]',
        'context': {
            'payyment_id': paym.name,
        }
    }

一切正常,但是有一个问题! 主要问题是浏览(从我创建这些记录的销售订单)字段'销售订单'作为默认值

![这些是销售订单中的弹出窗口,我需要默认情况下将填写订单确认字段()] [1]

我试图使用上面的上下文,但这不起作用

任何想法?!

0 个答案:

没有答案