2017-09-15 7 views
1

新しいモジュールを作成しましたが、Odooのアプリケーションストアからインストールできません。Odooのアプリケーションをインテルにしようとするとエラーが発生する

 File "/opt/odoo/openerp/addons/base/ir/ir_model.py", line 950, in xmlid_lookup 
     raise ValueError('External ID not found in the system: %s' % (xmlid)) 
    ParseError: "External ID not found in the system: my_model.action_order_cancel" while parsing /home/pruf/addons/my_model/views/my_model_view.xml:6, near 
    <record model="ir.ui.view" id="view_my_model_form"> 

私のXML部分:

<record model="ir.ui.view" id="view_my_model_form"> 
       <field name="name">my.model.form</field> 
       <field name="model">my.model</field> 
       <field name="arch" type="xml"> 
        <form> 
        <header> 
         <button name="%(action_order_cancel)d" attrs="{'invisible': [('state','not in', ('to_approve_first', 'create_order'))]}" string="Cancel" groups="my_model.group_my__manager" type="action"/> 
         <button name="button_to_approve_first" states="draft" string="Request approval" type="object" class="oe_highlight" groups="my_model.group_my_model_user"/> 
         <button name="button_approved" states="to_approve_first" string="Approve" type="object" class="oe_highlight" groups="my_model.group_my_model_manager"/> 

のpythonコード:

class PurchaseRequest(models.Model): 
    _name = 'my.model' 
    _inherit = ['mail.thread', 'ir.needaction_mixin'] 
    cancel_id = fields.One2many('order.cancel', 'my_model_id') 



class OrderCancel(models.TransientModel): 
    _name = 'order.cancel' 
    my_model_id = fields.Many2one('my.model') 

action_order_cancelボタンでは、私は、ウィザードを呼び出していますクリックしてください、私はエラーを得たことをやろうとしたとき。

私のモデル構造:

__init__.py 
__openerp__.py 
models 
----__init__.py 
----my_model.py 
security 
----ir.model.access.csv 
----my_model.xml 
views 
----my_model_view.xml 
wizard 
----__init__.py 
----order.py 
----order_view.xml 

問題がどこにあるか、私は見つけることができません。

答えて

2

XMLの順番は問題でその上から下へXMLを解析するなど、あなたはaction_sale_order_cancelは、モジュールで使用できないようだ、まだ解析されていません/

+0

を与える必要は申し訳ありませんが、私は何をする必要があります理解していません。 – fueggit

+0

ロードされる前にmy_model.action_order_cancelにアクセスしようとしています。 – StefanE

+0

私はいくつかのコードで質問を更新しました – fueggit

0

宣言したアクションを参照しているん。 あなたには、いくつかの他のモジュールのアクションを使用する場合は、そのモジュールの参照に

<button name="%(other_module_name.action_sale_order_cancel)d" attrs="{'invisible': [('state','not in', ('to_approve_first', 'create_order'))]}" string="Cancel" groups="my_model.group_my__manager" type="action"/> 
関連する問題