From 08919cf18c740ff4fa7b342baf581f2d5084f304 Mon Sep 17 00:00:00 2001 From: IX-BOT <137874481+IX-BOT@users.noreply.github.com> Date: Fri, 31 May 2024 21:06:25 +0200 Subject: [PATCH] Export not works with connection with Mongo DB. (#405) * Create draft PR for #404 * Changed TakeLast to Order().Take * Changed Excel exporter * Improved sorting in data exporters --------- Co-authored-by: Branko Zachemsky Co-authored-by: Peter Kurhajec <61538034+PTKu@users.noreply.github.com> --- .../AxoDataExchange/DataExchangeView.razor | 2 +- src/data/src/AXOpen.Data/ExportImport/BaseDataExporter.cs | 6 +++--- .../AXOpen.Data.Exporters.Excel/ExcelDataExporter.cs | 6 +++--- 3 files changed, 7 insertions(+), 7 deletions(-) diff --git a/src/data/src/AXOpen.Data.Blazor/AxoDataExchange/DataExchangeView.razor b/src/data/src/AXOpen.Data.Blazor/AxoDataExchange/DataExchangeView.razor index c107e178d..87d40792f 100644 --- a/src/data/src/AXOpen.Data.Blazor/AxoDataExchange/DataExchangeView.razor +++ b/src/data/src/AXOpen.Data.Blazor/AxoDataExchange/DataExchangeView.razor @@ -22,7 +22,7 @@ else @if (CanExport) { - + } } diff --git a/src/data/src/AXOpen.Data/ExportImport/BaseDataExporter.cs b/src/data/src/AXOpen.Data/ExportImport/BaseDataExporter.cs index cdb84cdf9..e56f721b4 100644 --- a/src/data/src/AXOpen.Data/ExportImport/BaseDataExporter.cs +++ b/src/data/src/AXOpen.Data/ExportImport/BaseDataExporter.cs @@ -30,13 +30,13 @@ public BaseDataExporter() switch (exportMode) { case eExportMode.First: - exportables = dataRepository.Queryable.Where(expression).Take(firstNumber); + exportables = dataRepository.Queryable.Where(expression).Skip((int)dataRepository.Count - firstNumber).Take(firstNumber).OrderByDescending(e => e.RecordId); break; case eExportMode.Last: - exportables = dataRepository.Queryable.Where(expression).TakeLast(firstNumber); + exportables = dataRepository.Queryable.Where(expression).Take(firstNumber).OrderByDescending(e => e.RecordId); break; case eExportMode.Exact: - exportables = dataRepository.Queryable.Where(expression).Skip(firstNumber - 1).Take(secondNumber - firstNumber + 1); + exportables = dataRepository.Queryable.Where(expression).Skip(firstNumber - 1).Take(secondNumber - firstNumber + 1).OrderByDescending(e => e.RecordId); break; } diff --git a/src/data/src/exporters/AXOpen.Data.Exporters.Excel/ExcelDataExporter.cs b/src/data/src/exporters/AXOpen.Data.Exporters.Excel/ExcelDataExporter.cs index ebf662b4f..f86689cd4 100644 --- a/src/data/src/exporters/AXOpen.Data.Exporters.Excel/ExcelDataExporter.cs +++ b/src/data/src/exporters/AXOpen.Data.Exporters.Excel/ExcelDataExporter.cs @@ -100,13 +100,13 @@ public ExcelDataExporter() switch (exportMode) { case eExportMode.First: - exportables = dataRepository.Queryable.Where(expression).Take(firstNumber); + exportables = dataRepository.Queryable.Where(expression).Skip((int)dataRepository.Count - firstNumber).Take(firstNumber).OrderByDescending(e => e.RecordId); break; case eExportMode.Last: - exportables = dataRepository.Queryable.Where(expression).TakeLast(firstNumber); + exportables = dataRepository.Queryable.Where(expression).Take(firstNumber).OrderByDescending(e => e.RecordId); break; case eExportMode.Exact: - exportables = dataRepository.Queryable.Where(expression).Skip(firstNumber - 1).Take(secondNumber - firstNumber + 1); + exportables = dataRepository.Queryable.Where(expression).Skip(firstNumber - 1).Take(secondNumber - firstNumber + 1).OrderByDescending(e => e.RecordId); break; }