diff --git a/bt5/erp5_item/SkinTemplateItem/portal_skins/erp5_item/DeliveryLine_selectItemList.xml b/bt5/erp5_item/SkinTemplateItem/portal_skins/erp5_item/DeliveryLine_selectItemList.xml
index 500b0c7b315646ca66d3cff5c461f3413a8717c0..e68de86d4fe72e9ebbd59c5563218c1c9c1de7cf 100644
--- a/bt5/erp5_item/SkinTemplateItem/portal_skins/erp5_item/DeliveryLine_selectItemList.xml
+++ b/bt5/erp5_item/SkinTemplateItem/portal_skins/erp5_item/DeliveryLine_selectItemList.xml
@@ -96,9 +96,20 @@ for item_uid in uids:\n
     if cell_found is not None:\n
       movement_to_update = cell_found\n
     else:\n
+      if not context.hasInRange(base_id=\'movement\', *item_variation):\n
+        # update line variation category list, if not already containing this one\n
+        variation_category_list = context.getVariationCategoryList()\n
+        for variation in item_variation:\n
+          if variation not in variation_category_list:\n
+            variation_category_list.append(variation)\n
+        context.setVariationCategoryList(variation_category_list)\n
+\n
       movement_to_update = context.newCell(base_id=\'movement\',\n
                                            portal_type=cell_portal_type,\n
                                            *item_variation)\n
+      movement_to_update.edit(mapped_value_property_list=(\'quantity\', \'price\'),\n
+                              variation_category_list=item_variation,)\n
+\n
   else:\n
     # no variation, we\'ll update the line itself\n
     movement_to_update = context\n
@@ -182,6 +193,8 @@ return context.Base_redirect(form_id, keep_items=dict(\n
                             <string>cell</string>
                             <string>movement_to_update</string>
                             <string>_apply_</string>
+                            <string>variation_category_list</string>
+                            <string>variation</string>
                             <string>dict</string>
                           </tuple>
                         </value>
diff --git a/bt5/erp5_item/bt/revision b/bt5/erp5_item/bt/revision
index 0973804c41c39805888c4929d03b076c4e5a2247..eafdfb06c55856bbcc9bb2b69ed9d055f6ae0557 100644
--- a/bt5/erp5_item/bt/revision
+++ b/bt5/erp5_item/bt/revision
@@ -1 +1 @@
-137
\ No newline at end of file
+138
\ No newline at end of file