diff --git a/beat/web/reports/static/reports/app/directives/reportItemView.js b/beat/web/reports/static/reports/app/directives/reportItemView.js
index 9920cb50e1c5d0af9d1cfcc3def5f06e84c44ae5..23420bd102221c3295d2690c76cf38187457d510 100644
--- a/beat/web/reports/static/reports/app/directives/reportItemView.js
+++ b/beat/web/reports/static/reports/app/directives/reportItemView.js
@@ -1428,13 +1428,13 @@ app.directive("sortdata", function($compile)
                    {
                        //total execution time information
                        var block_name = the_parent.sorted_experiments_keys_tables_sortkey[table_id].split("execution_time.")[1];
-                       var total_time = 0;
 
                        angular.forEach(report_experiments, function(value, key)
                        {
                             var local_sort_dict = {};
                             local_sort_dict["experiment"] = key;
                             var itemValue = "";
+                            var total_time = 0;
 
                             if(Object.keys(report_experiments[key].execution_info).length === 0)
                             {
@@ -1523,14 +1523,14 @@ app.directive("sortdata", function($compile)
                    {
                         local_sort_list.sort(function(a, b)
                         {
-                             return a.value > b.value;
+                             return a.value - b.value;
                         });
                    }
                    else
                    {
                         local_sort_list.sort(function(a, b)
                         {
-                             return a.value < b.value;
+                             return b.value - a.value;
                         });
                    }
 
@@ -1555,13 +1555,20 @@ app.directive("sortdata", function($compile)
                         var experiment_alias = the_parent.report_experiments_alias[experiment_name];
                         experiments_aliases.push(experiment_alias);
                     }
+
                     if(the_parent.sorted_experiments_keys_reverse[table_id])
                     {
-                        experiments_aliases.sort();
+                        experiments_aliases.sort(function(a, b)
+                        {
+                             return a.value - b.value;
+                        });
                     }
                     else
                     {
-                        experiments_aliases.reverse();
+                        experiments_aliases.reverse(function(a, b)
+                        {
+                             return b.value - a.value;
+                        });
                     }
 
                     the_parent.sorted_experiments_keys_tables[table_id] = [];
diff --git a/setup.py b/setup.py
index 22c50fb12c9bfc3110fcbdba20a12d6c398abeba..c4213207ad3810ad3879fad57d20168aba7a4f74 100644
--- a/setup.py
+++ b/setup.py
@@ -32,7 +32,7 @@ from setuptools import setup, find_packages
 setup(
 
     name='beat.web',
-    version='1.0.4rc1',
+    version='1.0.4rc2',
     description='Biometrics Evaluation and Testing Platform (Web Modules)',
     url='https://gitlab.idiap.ch/beat/beat.web',
     license='AGPLv3',