diff --git a/addons/account/views/account_report.xml b/addons/account/views/account_report.xml
index 605c6f7c64b..5b301a2fa80 100644
--- a/addons/account/views/account_report.xml
+++ b/addons/account/views/account_report.xml
@@ -12,6 +12,16 @@
attachment_use="True"
attachment="(object.state in ('open','paid')) and ('INV'+(object.number or '').replace('/','')+'.pdf')"
/>
+
+ (object.type == 'out_invoice' and object.state == 'draft' and 'Draft Invoice' or
+ object.type == 'out_invoice' and object.state in ('open','paid') and 'Invoice'+'-'+(object.number) or
+ object.type == 'out_refund' and object.state == 'draft' and 'Refund' or
+ object.type == 'out_refund' and 'Refund'+'-'+(object.number) or
+ object.type == 'in_invoice' and object.state == 'draft' and 'Vendor Bill' or
+ object.type == 'in_invoice' and object.state in ('open','paid') and 'Vendor Bill'+'-'+(object.number) or
+ object.type == 'in_refund' and object.state == 'draft' and 'Vendor Refund' or
+ object.type == 'in_refund' and 'Vendor Refund'+'-'+(object.number))
+
+
+ (object.type == 'out_invoice' and object.state == 'draft' and 'Duplicate Invoice' or
+ object.type == 'out_invoice' and object.state in ('open','paid') and 'Duplicate Invoice'+'-'+(object.number) or
+ object.type == 'out_refund' and object.state == 'draft' and 'Duplicate Refund' or
+ object.type == 'out_refund' and 'Duplicate Refund'+'-'+(object.number) or
+ object.type == 'in_invoice' and object.state == 'draft' and 'Duplicate Vendor Bill' or
+ object.type == 'in_invoice' and object.state in ('open','paid') and 'Duplicate Vendor Bill'+'-'+(object.number) or
+ object.type == 'in_refund' and object.state == 'draft' and 'Duplicate Vendor Refund' or
+ object.type == 'in_refund' and 'Duplicate Vendor Refund'+'-'+(object.number))
+
+
+ 'Due Payments'+'-'+(object.name)
+
+
+ 'Registration Event'+'-'+(object.name)
+
+
+ 'Print Badge'+'-'+(object.name)
+
diff --git a/addons/hr_expense/report/report_expense_sheet.xml b/addons/hr_expense/report/report_expense_sheet.xml
index dcf612fec09..e033d7920c1 100644
--- a/addons/hr_expense/report/report_expense_sheet.xml
+++ b/addons/hr_expense/report/report_expense_sheet.xml
@@ -106,5 +106,8 @@
name="hr_expense.report_expense_sheet"
file="hr_expense.report_expense_sheet"
/>
+
+ 'Expenses'+'-'+(object.employee_id.name)+'-'+(object.name)
+
\ No newline at end of file
diff --git a/addons/hr_payroll/views/hr_payroll_report.xml b/addons/hr_payroll/views/hr_payroll_report.xml
index 725375803e2..c6e02324f0a 100644
--- a/addons/hr_payroll/views/hr_payroll_report.xml
+++ b/addons/hr_payroll/views/hr_payroll_report.xml
@@ -17,6 +17,9 @@
name="hr_payroll.report_payslip"
file="hr_payroll.report_payslip"
/>
+
+ (object.employee_id.name)+'-'+'Payslip'
+
+
+ (object.name)
+
diff --git a/addons/mrp/report/mrp_report_views_main.xml b/addons/mrp/report/mrp_report_views_main.xml
index 06fece65865..cdc7d40e79e 100644
--- a/addons/mrp/report/mrp_report_views_main.xml
+++ b/addons/mrp/report/mrp_report_views_main.xml
@@ -9,6 +9,9 @@
file="mrp.report.mrp_bom_templates"
report_type="qweb-pdf"
/>
+
+ 'BOM'+'-'+(object.product_id.name or object.product_tmpl_id.name)
+
+
+ 'Production Order'+'-'+(object.name)
+
+
+ 'BOM Cost'+'-'+(object.product_id.name or object.product_tmpl_id.name)
+
diff --git a/addons/mrp_repair/report/mrp_repair_reports.xml b/addons/mrp_repair/report/mrp_repair_reports.xml
index 9a4ab10e86c..db73449155d 100644
--- a/addons/mrp_repair/report/mrp_repair_reports.xml
+++ b/addons/mrp_repair/report/mrp_repair_reports.xml
@@ -9,5 +9,8 @@
file="mrp_repair.report_mrprepairorder"
report_type="qweb-pdf"
/>
+
+ (object.state == 'draft' and 'Repair Quotation'+'-'+(object.name) or 'Repair Order'+'-'+(object.name))
+
diff --git a/addons/point_of_sale/views/point_of_sale_report.xml b/addons/point_of_sale/views/point_of_sale_report.xml
index 94ad5b1e811..b751dea87be 100644
--- a/addons/point_of_sale/views/point_of_sale_report.xml
+++ b/addons/point_of_sale/views/point_of_sale_report.xml
@@ -15,6 +15,7 @@
pos.order
qweb-pdf
point_of_sale.report_invoice
+ 'Invoice'+'-'+(object.name)
diff --git a/addons/product/report/product_reports.xml b/addons/product/report/product_reports.xml
index 11c802515e8..2c7a58336d0 100644
--- a/addons/product/report/product_reports.xml
+++ b/addons/product/report/product_reports.xml
@@ -8,6 +8,9 @@
report_type="qweb-pdf"
name="product.report_productlabel"
file="product.report_productlabel"/>
+
+ 'Products Labels'+'-'+(object.name)
+
+
+ 'Products Labels'+'-'+(object.name)
+
+
+ (object.state in ('draft', 'sent') and 'Request for Quotation'+'-'+(object.name) or 'Purchase Order'+'-'+(object.name))
+
+
+ 'Request for Quotation'+'-'+(object.name)
+
diff --git a/addons/purchase_requisition/report/purchase_requisition_report.xml b/addons/purchase_requisition/report/purchase_requisition_report.xml
index 844be7bd8e1..98b73254c11 100644
--- a/addons/purchase_requisition/report/purchase_requisition_report.xml
+++ b/addons/purchase_requisition/report/purchase_requisition_report.xml
@@ -9,5 +9,8 @@
name="purchase_requisition.report_purchaserequisitions"
file="purchase_requisition.report.report_purchaserequisitions"
/>
+
+ 'Tender'+'-'+(object.name)
+
diff --git a/addons/report/controllers/main.py b/addons/report/controllers/main.py
index aad5d3a23ea..3219d14754b 100644
--- a/addons/report/controllers/main.py
+++ b/addons/report/controllers/main.py
@@ -105,7 +105,8 @@ class ReportController(Controller):
ids = [int(x) for x in docids.split(",")]
obj = request.env[report.model].browse(ids)
if report.print_report_name and not len(obj) > 1:
- filename = safe_eval(report.print_report_name, {'object': obj, 'time': time})
+ report_name = safe_eval(report.print_report_name, {'object': obj, 'time': time})
+ filename = "%s.%s" % (report_name, "pdf")
response.headers.add('Content-Disposition', content_disposition(filename))
response.set_cookie('fileToken', token)
return response
diff --git a/addons/report_intrastat/report/report_intrastat_report.xml b/addons/report_intrastat/report/report_intrastat_report.xml
index 9c666f1b6f7..ff96ea6e315 100644
--- a/addons/report_intrastat/report/report_intrastat_report.xml
+++ b/addons/report_intrastat/report/report_intrastat_report.xml
@@ -8,4 +8,14 @@
name="report_intrastat.report_intrastatinvoice"
file="report_intrastat.report_intrastatinvoice"
/>
+
+ (object.type == 'out_invoice' and object.state == 'draft' and 'Intrastat Invoice' or
+ object.type == 'out_invoice' and object.state in ('open','paid') and 'Intrastat Invoice'+'-'+(object.number) or
+ object.type == 'out_refund' and object.state == 'draft' and 'Intrastat Refund' or
+ object.type == 'out_refund' and 'Intrastat Refund'+'-'+(object.number) or
+ object.type == 'in_invoice' and object.state == 'draft' and 'Intrastat Vendor Bill' or
+ object.type == 'in_invoice' and object.state in ('open','paid') and 'Intrastat Vendor Bill'+'-'+(object.number) or
+ object.type == 'in_refund' and object.state == 'draft' and 'Intrastat Vendor Refund' or
+ object.type == 'in_refund' and 'Intrastat Vendor Refund'+'-'+(object.number))
+
diff --git a/addons/sale/report/sale_report.xml b/addons/sale/report/sale_report.xml
index 04d9080928b..e0bad531aea 100644
--- a/addons/sale/report/sale_report.xml
+++ b/addons/sale/report/sale_report.xml
@@ -9,5 +9,8 @@
file="sale.report_saleorder"
name="sale.report_saleorder"
/>
+
+ (object.state in ('draft', 'sent') and 'Quotation'+'-'+(object.name) or 'Order'+'-'+(object.name))
+
diff --git a/addons/stock/report/stock_report_views.xml b/addons/stock/report/stock_report_views.xml
index 750918c22d2..c794b59e9be 100644
--- a/addons/stock/report/stock_report_views.xml
+++ b/addons/stock/report/stock_report_views.xml
@@ -9,6 +9,9 @@
name="stock.report_picking"
file="stock.report_picking_operations"
/>
+
+ 'Picking Operations'+'-'+(object.partner_id.name)+'-'+(object.name)
+
+
+ 'Delivery Slip'+'-'+(object.partner_id.name)+'-'+(object.name)
+
+
+ 'Inventory'+'-'+(object.name)
+
+
+ (object.name)+'-'+'Location'
+
+
+ 'Lot/Serial'+'-'+(object.name)
+
diff --git a/addons/website_quote/report/sale_order_reports.xml b/addons/website_quote/report/sale_order_reports.xml
index 9b4f6e10082..1aeaf7c6e0e 100644
--- a/addons/website_quote/report/sale_order_reports.xml
+++ b/addons/website_quote/report/sale_order_reports.xml
@@ -9,4 +9,7 @@
name="website_quote.report_quote"
menu="False"
/>
+
+ (object.state in ('draft', 'sent') and 'Quotation'+'-'+(object.name) or 'Order'+'-'+(object.name))
+