mirror of
https://github.com/ckaczor/azuredatastudio.git
synced 2026-02-16 18:46:40 -05:00
fix migration summary details page for sqldb (#23858)
This commit is contained in:
@@ -11,16 +11,15 @@ import * as styles from '../../constants/styles';
|
|||||||
export class TargetDatabaseSummaryDialog {
|
export class TargetDatabaseSummaryDialog {
|
||||||
private _dialogObject!: azdata.window.Dialog;
|
private _dialogObject!: azdata.window.Dialog;
|
||||||
private _view!: azdata.ModelView;
|
private _view!: azdata.ModelView;
|
||||||
private _tableLength: number;
|
private _tableLength: number = 700;
|
||||||
|
|
||||||
constructor(private _model: MigrationStateModel) {
|
constructor(private _model: MigrationStateModel) {
|
||||||
let dialogWidth: azdata.window.DialogWidth;
|
let dialogWidth: azdata.window.DialogWidth = 'medium';
|
||||||
|
|
||||||
|
// extend for blob container
|
||||||
if (this._model._databaseBackup.networkContainerType === NetworkContainerType.BLOB_CONTAINER) {
|
if (this._model._databaseBackup.networkContainerType === NetworkContainerType.BLOB_CONTAINER) {
|
||||||
this._tableLength = 800;
|
this._tableLength = 800;
|
||||||
dialogWidth = 900;
|
dialogWidth = 900;
|
||||||
} else {
|
|
||||||
this._tableLength = 700;
|
|
||||||
dialogWidth = 'medium';
|
|
||||||
}
|
}
|
||||||
this._dialogObject = azdata.window.createModelViewDialog(
|
this._dialogObject = azdata.window.createModelViewDialog(
|
||||||
constants.DATABASE_TO_BE_MIGRATED,
|
constants.DATABASE_TO_BE_MIGRATED,
|
||||||
@@ -77,7 +76,16 @@ export class TargetDatabaseSummaryDialog {
|
|||||||
headerCssStyles: headerCssStyle
|
headerCssStyles: headerCssStyle
|
||||||
}];
|
}];
|
||||||
|
|
||||||
if (this._model._databaseBackup.networkContainerType === NetworkContainerType.BLOB_CONTAINER) {
|
if (isSqlDbMigration) {
|
||||||
|
columns.push({
|
||||||
|
valueType: azdata.DeclarativeDataType.string,
|
||||||
|
displayName: constants.TARGET_TABLE_COUNT_NAME,
|
||||||
|
isReadOnly: true,
|
||||||
|
width: columnWidth,
|
||||||
|
rowCssStyles: rowCssStyle,
|
||||||
|
headerCssStyles: headerCssStyle
|
||||||
|
});
|
||||||
|
} else if (this._model._databaseBackup.networkContainerType === NetworkContainerType.BLOB_CONTAINER) {
|
||||||
columns.push(
|
columns.push(
|
||||||
{
|
{
|
||||||
valueType: azdata.DeclarativeDataType.string,
|
valueType: azdata.DeclarativeDataType.string,
|
||||||
@@ -120,16 +128,7 @@ export class TargetDatabaseSummaryDialog {
|
|||||||
headerCssStyles: headerCssStyle,
|
headerCssStyles: headerCssStyle,
|
||||||
hidden: this._model._databaseBackup.migrationMode === MigrationMode.ONLINE
|
hidden: this._model._databaseBackup.migrationMode === MigrationMode.ONLINE
|
||||||
});
|
});
|
||||||
} else if (isSqlDbMigration) {
|
} else if (this._model._databaseBackup.networkContainerType === NetworkContainerType.FILE_SHARE) {
|
||||||
columns.push({
|
|
||||||
valueType: azdata.DeclarativeDataType.string,
|
|
||||||
displayName: constants.TARGET_TABLE_COUNT_NAME,
|
|
||||||
isReadOnly: true,
|
|
||||||
width: columnWidth,
|
|
||||||
rowCssStyles: rowCssStyle,
|
|
||||||
headerCssStyles: headerCssStyle
|
|
||||||
});
|
|
||||||
} else {
|
|
||||||
columns.push({
|
columns.push({
|
||||||
valueType: azdata.DeclarativeDataType.string,
|
valueType: azdata.DeclarativeDataType.string,
|
||||||
displayName: constants.NETWORK_SHARE_PATH,
|
displayName: constants.NETWORK_SHARE_PATH,
|
||||||
@@ -148,25 +147,24 @@ export class TargetDatabaseSummaryDialog {
|
|||||||
{ value: db },
|
{ value: db },
|
||||||
{ value: this._model._targetDatabaseNames[index] });
|
{ value: this._model._targetDatabaseNames[index] });
|
||||||
|
|
||||||
if (this._model._databaseBackup.networkContainerType === NetworkContainerType.BLOB_CONTAINER) {
|
if (isSqlDbMigration) {
|
||||||
tableRow.push(
|
|
||||||
{ value: this._model._databaseBackup.blobs[index].storageAccount.location },
|
|
||||||
{ value: this._model._databaseBackup.blobs[index].storageAccount.resourceGroup! },
|
|
||||||
{ value: this._model._databaseBackup.blobs[index].storageAccount.name },
|
|
||||||
{ value: this._model._databaseBackup.blobs[index].blobContainer.name });
|
|
||||||
|
|
||||||
if (this._model._databaseBackup.migrationMode === MigrationMode.OFFLINE) {
|
|
||||||
tableRow.push(
|
|
||||||
{ value: this._model._databaseBackup.blobs[index].lastBackupFile! });
|
|
||||||
}
|
|
||||||
} else if (isSqlDbMigration) {
|
|
||||||
const totalTables = this._model._sourceTargetMapping.get(db)?.sourceTables.size ?? 0;
|
const totalTables = this._model._sourceTargetMapping.get(db)?.sourceTables.size ?? 0;
|
||||||
let selectedTables = 0;
|
let selectedTables = 0;
|
||||||
this._model._sourceTargetMapping.get(db)?.sourceTables.forEach(
|
this._model._sourceTargetMapping.get(db)?.sourceTables.forEach(
|
||||||
tableInfo => selectedTables += tableInfo.selectedForMigration ? 1 : 0);
|
tableInfo => selectedTables += tableInfo.selectedForMigration ? 1 : 0);
|
||||||
tableRow.push(
|
tableRow.push(
|
||||||
{ value: constants.TOTAL_TABLES_SELECTED(selectedTables, totalTables) });
|
{ value: constants.TOTAL_TABLES_SELECTED(selectedTables, totalTables) });
|
||||||
} else {
|
} else if (this._model._databaseBackup.networkContainerType === NetworkContainerType.BLOB_CONTAINER) {
|
||||||
|
tableRow.push(
|
||||||
|
{ value: this._model._databaseBackup.blobs[index].storageAccount.location },
|
||||||
|
{ value: this._model._databaseBackup.blobs[index].storageAccount.resourceGroup! },
|
||||||
|
{ value: this._model._databaseBackup.blobs[index].storageAccount.name },
|
||||||
|
{ value: this._model._databaseBackup.blobs[index].blobContainer.name });
|
||||||
|
if (this._model._databaseBackup.migrationMode === MigrationMode.OFFLINE) {
|
||||||
|
tableRow.push(
|
||||||
|
{ value: this._model._databaseBackup.blobs[index].lastBackupFile! });
|
||||||
|
}
|
||||||
|
} else if (this._model._databaseBackup.networkContainerType === NetworkContainerType.FILE_SHARE) {
|
||||||
tableRow.push(
|
tableRow.push(
|
||||||
{ value: this._model._databaseBackup.networkShares[index].networkShareLocation });
|
{ value: this._model._databaseBackup.networkShares[index].networkShareLocation });
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user