diff --git a/packages/datalib/src/DataDuplicator.ts b/packages/datalib/src/DataDuplicator.ts
index 92d083b9e..18ca1341d 100644
--- a/packages/datalib/src/DataDuplicator.ts
+++ b/packages/datalib/src/DataDuplicator.ts
@@ -113,7 +113,9 @@ class DuplicatorItemHolder {
}
const doCopy = async () => {
+ // console.log('chunk', this.name, JSON.stringify(chunk));
const insertedObj = this.createInsertObject(chunk);
+ // console.log('insertedObj', this.name, JSON.stringify(insertedObj));
if (insertedObj == null) {
skipped += 1;
return;
diff --git a/packages/web/src/tabs/DataDuplicatorTab.svelte b/packages/web/src/tabs/DataDuplicatorTab.svelte
index e118f7137..0cbe07517 100644
--- a/packages/web/src/tabs/DataDuplicatorTab.svelte
+++ b/packages/web/src/tabs/DataDuplicatorTab.svelte
@@ -39,6 +39,7 @@
import CheckboxField from '../forms/CheckboxField.svelte';
import FormFieldTemplateLarge from '../forms/FormFieldTemplateLarge.svelte';
import SelectField from '../forms/SelectField.svelte';
+ import FontIcon from '../icons/FontIcon.svelte';
import { extractShellConnection } from '../impexp/createImpExpScript';
import SocketMessageView from '../query/SocketMessageView.svelte';
import useEditorData from '../query/useEditorData';
@@ -47,6 +48,7 @@
import { changeTab } from '../utility/common';
import createActivator, { getActiveComponent } from '../utility/createActivator';
import { useArchiveFiles, useArchiveFolders, useConnectionInfo, useDatabaseInfo } from '../utility/metadataLoaders';
+ import openNewTab from '../utility/openNewTab';
import useEffect from '../utility/useEffect';
import useTimerLabel from '../utility/useTimerLabel';
@@ -188,8 +190,10 @@
isChecked,
operation,
matchColumn1,
- file: `${name}.jsonl`,
+ file: name,
table: tableInfo?.schemaName ? `${tableInfo?.schemaName}.${tableInfo?.pureName}` : tableInfo?.pureName,
+ schemaName: tableInfo?.schemaName,
+ pureName: tableInfo?.pureName,
};
});
@@ -292,8 +296,8 @@
rows={tableRows}
columns={[
{ header: '', fieldName: 'isChecked', slot: 1 },
- { header: 'Source file', fieldName: 'file' },
- { header: 'Target table', fieldName: 'table' },
+ { header: 'Source file', fieldName: 'file', slot: 4 },
+ { header: 'Target table', fieldName: 'table', slot: 5 },
{ header: 'Operation', fieldName: 'operation', slot: 2 },
{ header: 'Match column', fieldName: 'matchColumn1', slot: 3 },
]}
@@ -339,6 +343,40 @@
/>
{/if}
+
+ {
+ openNewTab({
+ title: row.file,
+ icon: 'img archive',
+ tooltip: `${$editorState.value?.archiveFolder}\n${row.file}`,
+ tabComponent: 'ArchiveFileTab',
+ props: {
+ archiveFile: row.file,
+ archiveFolder: $editorState.value?.archiveFolder,
+ },
+ });
+ }}> {row.file}
+
+
+ {
+ openNewTab({
+ title: row.pureName,
+ icon: 'img table',
+ tabComponent: 'TableDataTab',
+ props: {
+ schemaName: row.schemaName,
+ pureName: row.pureName,
+ conid,
+ database,
+ objectTypeField: 'tables',
+ },
+ });
+ }}> {row.table}
+