diff --git a/packages/web/src/datagrid/DataGridCore.svelte b/packages/web/src/datagrid/DataGridCore.svelte index 12108a512..51307d601 100644 --- a/packages/web/src/datagrid/DataGridCore.svelte +++ b/packages/web/src/datagrid/DataGridCore.svelte @@ -243,6 +243,7 @@ import { clearLastFocusedFormView } from '../formview/FormView.svelte'; import openReferenceForm, { openPrimaryKeyForm } from '../formview/openReferenceForm'; import openNewTab from '../utility/openNewTab'; + import ErrorInfo from '../elements/ErrorInfo.svelte'; export let onLoadNextData = undefined; export let grider = undefined; @@ -261,6 +262,7 @@ export let onOpenQuery = null; export let onOpenActiveChart = null; export let formViewAvailable = false; + export let errorMessage = undefined; export let isLoadedAll; export let loadedTime; @@ -1002,142 +1004,154 @@ } -
- { - lastFocusedDataGrid = instance; - clearLastFocusedFormView(); - invalidateCommands(); - }} - on:paste={handlePaste} - /> - +{:else if errorMessage} + +{:else if grider.errors && grider.errors.length > 0} +
+ {#each grider.errors as err} + + {/each} +
+{:else} +
-
- - - {/each} - - {#if display.filterable} + { + lastFocusedDataGrid = instance; + clearLastFocusedFormView(); + invalidateCommands(); + }} + on:paste={handlePaste} + /> +
- {#each visibleRealColumns as col (col.uniqueName)} - - display.setSort(col.uniqueName, order) : null} - order={display.getSortOrder(col.uniqueName)} - on:resizeSplitter={e => { - // @ts-ignore - display.resizeColumn(col.uniqueName, col.width, e.detail); - }} - setGrouping={display.sortable ? groupFunc => display.setGrouping(col.uniqueName, groupFunc) : null} - grouping={display.getGrouping(col.uniqueName)} - /> -
+ + /> {#each visibleRealColumns as col (col.uniqueName)} {/each} - {/if} - - - {#each _.range(firstVisibleRowScrollIndex, Math.min(firstVisibleRowScrollIndex + visibleRowCountUpperBound, grider.rowCount)) as rowIndex (rowIndex)} - - {/each} - -
- {#if display.filterCount > 0} - display.clearFilters()} square> - - - {/if} - - display.setFilter(col.uniqueName, value)} - showResizeSplitter + display.setSort(col.uniqueName, order) : null} + order={display.getSortOrder(col.uniqueName)} on:resizeSplitter={e => { // @ts-ignore display.resizeColumn(col.uniqueName, col.width, e.detail); }} + setGrouping={display.sortable ? groupFunc => display.setGrouping(col.uniqueName, groupFunc) : null} + grouping={display.getGrouping(col.uniqueName)} />
- (firstVisibleColumnScrollIndex = e.detail)} - bind:this={domHorizontalScroll} - /> - (firstVisibleRowScrollIndex = e.detail)} - bind:this={domVerticalScroll} - /> - {#if allRowCount} -
- {getRowCountInfo(selectedCells, grider, realColumnUniqueNames, getSelectedRowData(), allRowCount)} -
- {/if} + {#if display.filterable} + + + {#if display.filterCount > 0} + display.clearFilters()} square> + + + {/if} + + {#each visibleRealColumns as col (col.uniqueName)} + + display.setFilter(col.uniqueName, value)} + showResizeSplitter + on:resizeSplitter={e => { + // @ts-ignore + display.resizeColumn(col.uniqueName, col.width, e.detail); + }} + /> + + {/each} + + {/if} + + + {#each _.range(firstVisibleRowScrollIndex, Math.min(firstVisibleRowScrollIndex + visibleRowCountUpperBound, grider.rowCount)) as rowIndex (rowIndex)} + + {/each} + + + (firstVisibleColumnScrollIndex = e.detail)} + bind:this={domHorizontalScroll} + /> + (firstVisibleRowScrollIndex = e.detail)} + bind:this={domVerticalScroll} + /> + {#if allRowCount} +
+ {getRowCountInfo(selectedCells, grider, realColumnUniqueNames, getSelectedRowData(), allRowCount)} +
+ {/if} - {#if isLoading} - - {/if} -
+ {#if isLoading} + + {/if} + +{/if}