diff --git a/ui/src/views/list/Grid.tsx b/ui/src/views/list/Grid.tsx
index 58150c46..07523768 100644
--- a/ui/src/views/list/Grid.tsx
+++ b/ui/src/views/list/Grid.tsx
@@ -28,6 +28,7 @@ import DataGrid, {
GroupItem as GroupItemDx,
GroupPanel,
HeaderFilter,
+ IStateStoringProps,
LoadPanel,
Pager,
Paging,
@@ -638,7 +639,7 @@ const Grid = (props: GridProps) => {
// DataSource oluştur
useEffect(() => {
- if (!gridDto || !columnData) return
+ if (!gridDto) return
const dataSource = createSelectDataSource(
gridDto.gridOptions,
@@ -649,7 +650,46 @@ const Grid = (props: GridProps) => {
)
setGridDataSource(dataSource)
- }, [gridDto, searchParams, columnData])
+ }, [gridDto, searchParams])
+
+ useEffect(() => {
+ if (!columnData) return
+
+ refListFormCode.current = listFormCode
+ if (!gridRef?.current) {
+ return
+ }
+
+ const instance = gridRef?.current?.instance()
+ if (instance) {
+ instance.option('columns', columnData)
+ instance.option('remoteOperations', {
+ groupPaging: true,
+ filtering: true,
+ sorting: true,
+ paging: true,
+ grouping: true,
+ summary: true,
+ })
+ instance.option('dataSource', gridDataSource)
+ instance.state(null)
+
+ const stateStoring: IStateStoringProps = {
+ enabled: gridDto?.gridOptions.stateStoringDto?.enabled,
+ type: gridDto?.gridOptions.stateStoringDto?.type,
+ savingTimeout: gridDto?.gridOptions.stateStoringDto?.savingTimeout,
+ storageKey: gridDto?.gridOptions.stateStoringDto?.storageKey,
+ }
+ if (
+ gridDto?.gridOptions.stateStoringDto?.enabled &&
+ gridDto?.gridOptions.stateStoringDto?.type === 'custom'
+ ) {
+ stateStoring.customSave = customSaveState
+ stateStoring.customLoad = customLoadState
+ }
+ instance.option('stateStoring', stateStoring)
+ }
+ }, [columnData])
useEffect(() => {
const activeFilters = extraFilters.filter((f) => f.value)
@@ -838,16 +878,16 @@ const Grid = (props: GridProps) => {
ref={gridRef as any}
key={`Grid-${listFormCode}-${gridDataSource ? 'loaded' : 'loading'}`}
id={'Grid-' + listFormCode}
- dataSource={gridDataSource}
- columns={columnData}
- remoteOperations={{
- groupPaging: true,
- filtering: true,
- sorting: true,
- paging: true,
- grouping: true,
- summary: true,
- }}
+ // dataSource={gridDataSource}
+ // columns={columnData}
+ // remoteOperations={{
+ // groupPaging: true,
+ // filtering: true,
+ // sorting: true,
+ // paging: true,
+ // grouping: true,
+ // summary: true,
+ // }}
height={
gridDto.gridOptions.height > 0
? gridDto.gridOptions.height
@@ -905,24 +945,6 @@ const Grid = (props: GridProps) => {
}}
onEditorPreparing={onEditorPreparing}
>
-