diff --git a/bt5/erp5_invoicing/SkinTemplateItem/portal_skins/erp5_invoicing/InvoiceTransaction_postGenerationActivity.xml b/bt5/erp5_invoicing/SkinTemplateItem/portal_skins/erp5_invoicing/InvoiceTransaction_postGenerationActivity.xml
index 8c338fddef2e18b9e82a263500f15a5c064e78d8..bf428bf73c551d392238d89e2d957a558bbd27c1 100644
--- a/bt5/erp5_invoicing/SkinTemplateItem/portal_skins/erp5_invoicing/InvoiceTransaction_postGenerationActivity.xml
+++ b/bt5/erp5_invoicing/SkinTemplateItem/portal_skins/erp5_invoicing/InvoiceTransaction_postGenerationActivity.xml
@@ -80,7 +80,6 @@ related_packing_list = invoice.getDefaultCausalityValue()\n
 \n
 # XXX this use of currency is completly bogus, it should be set on simulation movements.\n
 # get a price_currency from the packing list, or the order\n
-context.log(related_packing_list)\n
 price_currency = related_packing_list.getPriceCurrency()\n
 if price_currency:\n
   invoice.edit(\n
@@ -102,7 +101,7 @@ if not context.getSpecialise():\n
     context.edit(specialise=related_order.getSpecialise())\n
 \n
 # copy title, if not updating a new delivery\n
-if not invoice.getTitle():\n
+if not invoice.hasTitle() and related_packing_list.hasTitle():\n
   invoice.setTitle(related_packing_list.getTitle())\n
 \n
 # initialize accounting_workflow to planned state\n
diff --git a/bt5/erp5_invoicing/bt/revision b/bt5/erp5_invoicing/bt/revision
index cb37cb5c1fb749a2eaad380460a926969564408e..0947c3313659827e4a73ff591c1fdcbccf9ed12f 100644
--- a/bt5/erp5_invoicing/bt/revision
+++ b/bt5/erp5_invoicing/bt/revision
@@ -1 +1 @@
-186
\ No newline at end of file
+188
\ No newline at end of file