تخطي للذهاب إلى المحتوى
القائمة
لقد تم الإبلاغ عن هذا السؤال
3 الردود
10903 أدوات العرض

Hi,

I've got a tree view like this :

<record model="ir.ui.view" id="module_tree">
            <field name="name">module.tree</field>
            <field name="model">module</field>
            <field name="arch" type="xml">
                <tree string="Invoices" create="false" delete="false" edit="false">
                    <field name="partner_id" groups="base.group_user"/>
                    <field name="invoice_id"/>
                    <button name="look_invoice" string="" icon="gtk-go-forward" help="See invoice" type="object"/>
                </tree>
            </field>
        </record>

When i take out the button from the tree view, all display correctly. But if i put the button i've got this error :

Error: QWeb2 - template['TreeView']: Runtime Error: TypeError: dict.field.attrs.modifiers is undefined

My python function related to the button :

def look_invoice(self,cr,uid,ids,context=None):
        context = context or {}
        invoice_id = self.read(cr,uid, ids[0], ['invoice_id'])['invoice_id']
        if invoice_id:
            return {
                'type': 'ir.actions.act_window',
                'name': 'Invoice',
                'res_model': 'module',
                'res_id': invoice_id[0]
                'view_type': 'form',
                'view_mode': 'form',
                'nodestroy': True,
            }
        return False

Does somebody got any idea of where is the problem please ?

 

الصورة الرمزية
إهمال
الكاتب

Hello Jagdish, I've try your code and i've got always the error.

Can button strings be empty (in v8)?

الكاتب

Even if i put a string to the button, i get the error.

أفضل إجابة

Hi

Try this code

def look_invoice(self,cr,uid,ids,context=None):
        context = context or {}
        invoice_id = self.read(cr,uid, ids, ['invoice_id'])
        if invoice_id:
            return {
                'type': 'ir.actions.act_window',
                'name': 'Invoice',
                'res_model': 'module',
                'res_id': invoice_id[0],
                'view_type': 'form',
                'view_mode': 'form',
                'nodestroy': True,
            }
        return False

الصورة الرمزية
إهمال
أفضل إجابة

Hello,

 

Just add version="7.0" to the tree statement :

<tree string="Invoices" create="false" delete="false" edit="false" version="7.0">

الصورة الرمزية
إهمال
الكاتب أفضل إجابة

(previous answer converted as comment)

Hello Thierry Godin,

I've try your code but the error is still there...

الصورة الرمزية
إهمال
المنشورات ذات الصلة الردود أدوات العرض النشاط
1
مايو 24
1966
2
يونيو 22
2874
0
يوليو 17
4481
1
فبراير 17
5698
2
يوليو 15
6732