2017-12-21 4 views
2

저는 Odoo v8과 함께 작업하고 있습니다. 제대로 작동하는 서버 작업을 만들었지 만 새로운 API에서 많은 시도를 한 후에 이전 API에서 작성해야한다는 것을 관리하기 위해 서버 작업을 만들었습니다. 이전 API에서 새 API로 서버 작업 코드를 이동하는 방법은 무엇입니까?

지금 노력하고 있습니다 내 코드, 된 API의 하나입니다 :

파이썬

def open_action_alt_picking_type_views(self, cr, uid, ids, context=None): 
    res = { 
     'view_type': 'form', 
     'view_mode': 'kanban', 
     'res_model': 'stock.picking.type', 
     'type': 'ir.actions.act_window', 
     'target': 'current', 
    } 
    return res 

XML

<record id="server_action_alt_picking_type_views" model="ir.actions.server"> 
    <field name="name">Picking types</field> 
    <field name="condition">True</field> 
    <field name="type">ir.actions.server</field> 
    <field name="model_id" ref="model_stock_picking_type"/> 
    <field name="state">code</field> 
    <field name="code">action = self.open_action_alt_picking_type_views(cr, uid, context.get('active_ids', []), context=context)</field> 
</record> 

그리고 이것은 하나입니다 시도 시도 중 새로운 API 작동하지 않는 :

파이썬

@api.model 
def open_action_alt_picking_type_views(self): 
    res = { 
     'view_type': 'form', 
     'view_mode': 'kanban', 
     'res_model': 'stock.picking.type', 
     'type': 'ir.actions.act_window', 
     'target': 'current', 
    } 
    return res 

XML

<record id="server_action_alt_picking_type_views" model="ir.actions.server"> 
    <field name="name">Picking types</field> 
    <field name="condition">True</field> 
    <field name="type">ir.actions.server</field> 
    <field name="model_id" ref="model_stock_picking_type"/> 
    <field name="state">code</field> 
    <field name="code">action = self.open_action_alt_picking_type_views()</field> 
</record> 

내가 더 데코레이터, @api.multi과 노력의 XML codereturn 전에 드 메서드 호출을 추가 필드 등

아무도 이것을 달성하는 방법을 알고 있습니까?

+0

당신이 일에 대해 더 구체적으로 수 –

+0

아무것도하지 않고 오류도 내지 않고 ... 서버 작업을 호출하는 menuitem을 클릭하면보기가 열리지 않습니다. – forvas

답변

2

나는 당신이 그렇게 같은 방법으로 호출에 모델을 지정해야합니다 생각 : "작동하지 않는 수단"

<field name="code">action = env['stock.picking.type'].open_action_alt_picking_type_views()</field> 
+0

대단히 고맙습니다. @ 루카스, 그게 문제였습니다! 'get'이 작동하지 않아 모델 호출 만 편집했습니다. – forvas

관련 문제