|
1 | 1 |
|
2 | 2 | import vscode, { ThemeIcon } from "vscode"
|
3 |
| -import Schemas from "../database/schemas"; |
4 |
| -import Table from "../database/table"; |
5 |
| -import { getInstance, loadBase } from "../base"; |
| 3 | +import Schemas from "../../database/schemas"; |
| 4 | +import Table from "../../database/table"; |
| 5 | +import { getInstance, loadBase } from "../../base"; |
6 | 6 |
|
7 |
| -import Configuration from "../configuration"; |
| 7 | +import Configuration from "../../configuration"; |
8 | 8 |
|
9 |
| -import Types from "./types"; |
10 |
| -import Statement from "../database/statement"; |
| 9 | +import Types from "../types"; |
| 10 | +import Statement from "../../database/statement"; |
| 11 | +import { copyUI } from "./copyUI"; |
11 | 12 |
|
12 | 13 | const viewItem = {
|
13 | 14 | "tables": `table`,
|
@@ -272,57 +273,25 @@ export default class schemaBrowser {
|
272 | 273 |
|
273 | 274 | vscode.commands.registerCommand(`vscode-db2i.copyData`, async (object: SQLObject) => {
|
274 | 275 | if (object) {
|
275 |
| - const base = loadBase(); |
276 |
| - const page = await base.customUI() |
277 |
| - .addInput('toFile', 'To File') |
278 |
| - .addInput('toLib', 'Library') |
279 |
| - .addInput('fromMbr', 'From member', 'Name, generic*, *FIRST, *ALL', { |
280 |
| - default: '*FIRST' |
281 |
| - }) |
282 |
| - .addInput('toMbr', 'To member or label', 'Name, *FIRST, *FROMMBR, *ALL', { |
283 |
| - default: '*FIRST' |
284 |
| - }) |
285 |
| - .addSelect('mbrOpt', 'Replace or add records', [ |
286 |
| - {text: '*NONE', description: '*NONE', value: '*NONE'}, |
287 |
| - {text: '*ADD', description: '*ADD', value: '*ADD'}, |
288 |
| - {text: '*REPLACE', description: '*REPLACE', value: '*REPLACE'}, |
289 |
| - {text: '*UPDADD', description: '*UPDADD', value: '*UPDADD'}, |
290 |
| - ]) |
291 |
| - .addSelect('crtFile', 'Create file', [ |
292 |
| - {text: '*NO', description: '*NO', value: '*NO'}, |
293 |
| - {text: '*YES', description: '*YES', value: '*YES'}, |
294 |
| - ]) |
295 |
| - .addSelect('outFmt', 'Print format', [ |
296 |
| - {text: '*CHAR', description: '*CHAR', value: '*CHAR'}, |
297 |
| - {text: '*HEX', description: '*HEX', value: '*HEX'}, |
298 |
| - ]) |
299 |
| - .addButtons( |
300 |
| - {id: 'copy', label:'Copy'}, |
301 |
| - {id: 'cancel', label:'Cancel'} |
302 |
| - ) |
303 |
| - .loadPage<any>((`Copy File - ${object.schema}.${object.name}`)); |
| 276 | + const page = await copyUI.loadPage<any>((`Copy File - ${object.schema}.${object.name}`)); |
304 | 277 |
|
305 | 278 | if(page && page.data) {
|
306 | 279 | const data = page.data;
|
307 | 280 | page.panel.dispose();
|
308 | 281 |
|
309 | 282 | if (data.buttons == 'copy') {
|
310 |
| - if (data.library != "" && data.file != "") { |
311 |
| - try { |
312 |
| - await vscode.window.withProgress({ |
313 |
| - location: vscode.ProgressLocation.Notification, |
314 |
| - title: `Copying ${object.name}...` |
315 |
| - }, async () => { |
316 |
| - await Table.copyFile(object.system.schema, object.system.name, data); |
317 |
| - }); |
318 |
| - |
319 |
| - vscode.window.showInformationMessage(`Table copied`); |
320 |
| - this.clearCacheAndRefresh(); |
321 |
| - } catch (e) { |
322 |
| - vscode.window.showErrorMessage(e.message); |
323 |
| - } |
324 |
| - } else { |
325 |
| - vscode.window.showErrorMessage("Schema and Name cannot be blank."); |
| 283 | + try { |
| 284 | + await vscode.window.withProgress({ |
| 285 | + location: vscode.ProgressLocation.Notification, |
| 286 | + title: `Copying ${object.name}...` |
| 287 | + }, async () => { |
| 288 | + await Table.copyFile(object.system.schema, object.system.name, data); |
| 289 | + }); |
| 290 | + |
| 291 | + vscode.window.showInformationMessage(`Table copied`); |
| 292 | + this.clearCacheAndRefresh(); |
| 293 | + } catch (e) { |
| 294 | + vscode.window.showErrorMessage(e.message); |
326 | 295 | }
|
327 | 296 | }
|
328 | 297 | }
|
|
0 commit comments