diff --git a/openbis/source/java/ch/systemsx/cisd/openbis/generic/client/web/client/application/ui/data/AbstractExternalDataGrid.java b/openbis/source/java/ch/systemsx/cisd/openbis/generic/client/web/client/application/ui/data/AbstractExternalDataGrid.java
index db657dfa08237b4054b88c45d964843a9191ed11..9453dd789d0c6c32acac9671846bf70bcbb5ccfc 100644
--- a/openbis/source/java/ch/systemsx/cisd/openbis/generic/client/web/client/application/ui/data/AbstractExternalDataGrid.java
+++ b/openbis/source/java/ch/systemsx/cisd/openbis/generic/client/web/client/application/ui/data/AbstractExternalDataGrid.java
@@ -127,7 +127,7 @@ public abstract class AbstractExternalDataGrid
                                         IBrowserGridActionInvoker invoker)
                                 {
                                     return new DataSetUploadConfirmationDialog(dataSets,
-                                            getSelectedAndDisplayedItemsAction(), getCount(),
+                                            getSelectedAndDisplayedItemsAction(), getTotalCount(),
                                             viewContext);
                                 }
                             });
@@ -278,7 +278,7 @@ public abstract class AbstractExternalDataGrid
                 public SelectedAndDisplayedItems execute()
                 {
                     return new SelectedAndDisplayedItems(getSelectedBaseObjects(),
-                            createTableExportCriteria(), getCount());
+                            createTableExportCriteria(), getTotalCount());
                 }
             };
     }
diff --git a/openbis/source/java/ch/systemsx/cisd/openbis/generic/client/web/client/application/ui/experiment/ExperimentBrowserGrid.java b/openbis/source/java/ch/systemsx/cisd/openbis/generic/client/web/client/application/ui/experiment/ExperimentBrowserGrid.java
index 2a53c23d9140b37d5a862992412ca9857f3660f6..768035818bf4de9e029c42a9901f032946c333ac 100644
--- a/openbis/source/java/ch/systemsx/cisd/openbis/generic/client/web/client/application/ui/experiment/ExperimentBrowserGrid.java
+++ b/openbis/source/java/ch/systemsx/cisd/openbis/generic/client/web/client/application/ui/experiment/ExperimentBrowserGrid.java
@@ -349,7 +349,7 @@ public class ExperimentBrowserGrid extends
                 public DisplayedAndSelectedExperiments execute()
                 {
                     return new DisplayedAndSelectedExperiments(getSelectedBaseObjects(),
-                            createTableExportCriteria(), getCount());
+                            createTableExportCriteria(), getTotalCount());
                 }
             };
     }
diff --git a/openbis/source/java/ch/systemsx/cisd/openbis/generic/client/web/client/application/ui/grid/AbstractBrowserGrid.java b/openbis/source/java/ch/systemsx/cisd/openbis/generic/client/web/client/application/ui/grid/AbstractBrowserGrid.java
index 2ed8a820ffea1ca4862b56b3846065c26db4b6f5..0f1479a0f45922c902efd5eb88bc151088851d0c 100644
--- a/openbis/source/java/ch/systemsx/cisd/openbis/generic/client/web/client/application/ui/grid/AbstractBrowserGrid.java
+++ b/openbis/source/java/ch/systemsx/cisd/openbis/generic/client/web/client/application/ui/grid/AbstractBrowserGrid.java
@@ -194,6 +194,9 @@ public abstract class AbstractBrowserGrid<T/* Entity */, M extends BaseEntityMod
     // result set key of the last refreshed data
     private String resultSetKey;
 
+    /** the number of all objects cached in the browser */
+    private int totalCount;
+
     private IDataRefreshCallback refreshCallback;
 
     protected AbstractBrowserGrid(final IViewContext<ICommonClientServiceAsync> viewContext,
@@ -644,6 +647,7 @@ public abstract class AbstractBrowserGrid<T/* Entity */, M extends BaseEntityMod
             // save the key of the result, later we can refer to the result in the cache using this
             // key
             saveCacheKey(result.getResultSetKey());
+            totalCount = result.getTotalLength();
             // convert the result to the model data for the grid control
             final List<M> models = createModels(result.getList());
             final PagingLoadResult<M> loadResult =
@@ -1238,9 +1242,12 @@ public abstract class AbstractBrowserGrid<T/* Entity */, M extends BaseEntityMod
     }
 
     /** @return the number of all objects cached in the browser */
-    public int getCount()
+    public int getTotalCount()
     {
-        return grid.getStore().getCount(); // FIXME takes only displayed items count
+        // NOTE: Maybe there is a better way to get this value without keeping it on field variable.
+        // Bottom toolbar displays it so there has to be access to this, but e.g.
+        // grid.getStore().getCount() returns only number of items displayed on the current page.
+        return totalCount;
     }
 
     private void refreshColumnsSettings()
@@ -1559,7 +1566,7 @@ public abstract class AbstractBrowserGrid<T/* Entity */, M extends BaseEntityMod
         {
             // > 0 entity selected - show dialog with all/selected radio
             new ShowRelatedDatasetsDialog(viewContext, selectedEntities, displayedEntities, browser
-                    .getCount()).show();
+                    .getTotalCount()).show();
         }
     }
 }
diff --git a/openbis/source/java/ch/systemsx/cisd/openbis/generic/client/web/client/application/ui/sample/SampleBrowserGrid.java b/openbis/source/java/ch/systemsx/cisd/openbis/generic/client/web/client/application/ui/sample/SampleBrowserGrid.java
index a8231fdecadb77d4a173212217188d50f244314c..797a5a27405264eec5efc04d3f913db5d29469a5 100644
--- a/openbis/source/java/ch/systemsx/cisd/openbis/generic/client/web/client/application/ui/sample/SampleBrowserGrid.java
+++ b/openbis/source/java/ch/systemsx/cisd/openbis/generic/client/web/client/application/ui/sample/SampleBrowserGrid.java
@@ -648,7 +648,7 @@ public class SampleBrowserGrid extends
                 public DisplayedAndSelectedSamples execute()
                 {
                     return new DisplayedAndSelectedSamples(getSelectedBaseObjects(),
-                            createTableExportCriteria(), getCount());
+                            createTableExportCriteria(), getTotalCount());
                 }
             };
     }