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



Dears, How can I hide conditionally the print button in menu bar, e.g. if state == draft: then hide print button .

Note that I have user fields_view_get() to remove the print menu, it works but I need to hide print for specific quotation (only draft). I cannot access the instance of quotation from api.model.

@api.model
def fields_view_get(..):

    res = super(sale_order_cust, self).fields_view_get(
            view_id=view_id,
            view_type=view_type,
            toolbar=toolbar,
            submenu=submenu)  
        #remove print from tree view to avoid download unapproved quote
        if view_type == 'tree':
            toolbar_dic = res['toolbar']
            del toolbar_dic['print']

return res










الصورة الرمزية
إهمال

I think you would need to go for web/js code.

الكاتب أفضل إجابة

I have used the Wizard in order to have access to object instance (quotation: active_id), and add my additional control  before printing the report (if quotation is draft => don't allow to print), since it's very difficult to control the print menu bar button from python. However, I used the above function (def fields_view_get)  to remove the print button entirely from quotation page, since the printing the reports is moved to the wizard.

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

Hello  Salim,
please refer this Link

https://www.odoo.com/forum/help-1/question/view-or-hide-one-report-menu-based-on-condition-in-odoo-8-128946#answer-129476


it will help you.

Thanks

الصورة الرمزية
إهمال
المنشورات ذات الصلة الردود أدوات العرض النشاط
2
يناير 20
15237
16
أغسطس 19
10206
1
يناير 19
5457
0
سبتمبر 17
2486
0
فبراير 17
3012