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

I have a wizard that generates an Excel report. The report generation is working fine, but I want to automatically close the wizard window after the user downloads the report. Currently, after the report is downloaded, the wizard window remains open, and the user has to manually close it.


Here's the relevant code snippet from my action_generate_excel_report method:


def action_generate_excel_report(self):
    # ... (code to generate the Excel report and create an ir.attachment record)

    # Return an action to download the Excel report
    return {
        'type': 'ir.actions.act_url',
        'url': 'web/content/%s?download=true' % (doc.id),
        'target': 'self',
    }


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

This approach utilizes Python code within your wizard's confirmation button method.

def button_confirm(self): 

​# Your code to generate the Excel report... 

​# After successful report generation 

​return {'type': 'ir.actions.act_window_close'}

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

You need edit your code:
def action_generate_excel_report(self):
   # ... (code to generate the Excel report and create an ir.attachment record)
data = { content of excel }
report_action = self.env.ref('your_module.your_id_report_action').report_action(self, data)
​report_action.update({'close_on_report_download': True})
​return report_action
Hope to help you!


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

This works for pdf report not for excel report.

المنشورات ذات الصلة الردود أدوات العرض النشاط
2
يوليو 25
316
1
ديسمبر 21
4557
0
أبريل 18
6276
1
مايو 25
1115
0
نوفمبر 24
1290