diff --git a/product/ERP5/skins/erp5_core/base_dialog.py b/product/ERP5/skins/erp5_core/base_dialog.py
index 19b6e9cd18ffa00e77e0f0ec5dd71ba3a9e389b4..0ec6a20b4f1527c929967bdf2e55ac99df53d0a1 100755
--- a/product/ERP5/skins/erp5_core/base_dialog.py
+++ b/product/ERP5/skins/erp5_core/base_dialog.py
@@ -48,7 +48,9 @@ try:
   if has_listbox:
     listbox_line_list = []
     listbox = getattr(request,'listbox',None)
-    for key in listbox.keys():
+    listbox_keys = listbox.keys()
+    listbox_keys.sort()
+    for key in listbox_keys:
       listbox_line = listbox[key]
       listbox_line['listbox_key'] = key
       listbox_line_list.append(listbox[key])