diff --git a/packages/nc-gui/components/smartsheet/grid/Table.vue b/packages/nc-gui/components/smartsheet/grid/Table.vue index 0c5dbb5e88..c0f1e5f7d8 100644 --- a/packages/nc-gui/components/smartsheet/grid/Table.vue +++ b/packages/nc-gui/components/smartsheet/grid/Table.vue @@ -1070,6 +1070,8 @@ const saveOrUpdateRecords = async ( args: { metaValue?: TableType; viewMetaValue?: ViewType; data?: any; keepNewRecords?: boolean } = {}, ) => { for (const currentRow of args.data || dataRef.value) { + if (currentRow.rowMeta.fromExpandedForm) continue + /** if new record save row and save the LTAR cells */ if (currentRow.rowMeta.new) { const beforeSave = clone(currentRow) diff --git a/packages/nc-gui/composables/useExpandedFormStore.ts b/packages/nc-gui/composables/useExpandedFormStore.ts index 9643caf814..95c766bde9 100644 --- a/packages/nc-gui/composables/useExpandedFormStore.ts +++ b/packages/nc-gui/composables/useExpandedFormStore.ts @@ -56,6 +56,8 @@ const [useProvideExpandedFormStore, useExpandedFormStore] = useInjectionState((m : ({ row: {}, oldRow: {}, rowMeta: {} } as Row), ) + row.value.rowMeta.fromExpandedForm = true + const rowStore = useProvideSmartsheetRowStore(row) const activeView = inject(ActiveViewInj, ref()) diff --git a/packages/nc-gui/lib/types.ts b/packages/nc-gui/lib/types.ts index 0961e14ed5..e3c9e8b641 100644 --- a/packages/nc-gui/lib/types.ts +++ b/packages/nc-gui/lib/types.ts @@ -65,6 +65,7 @@ interface Row { changed?: boolean saving?: boolean ltarState?: Record | Record[] | null> + fromExpandedForm?: boolean // use in datetime picker component isUpdatedFromCopyNPaste?: Record // Used in Calendar view