mirror of
https://github.com/ckaczor/azuredatastudio.git
synced 2026-02-17 02:51:36 -05:00
Fix Edit data bugs (#2428)
* fix data loading function to fix html entities in edit data * fix edit data formatting and null row display * formatting
This commit is contained in:
committed by
Karl Burtram
parent
f12f1cb392
commit
2e05c0a7d9
@@ -23,7 +23,7 @@
|
|||||||
(onContextMenu)="openContextMenu($event, dataSet.batchId, dataSet.resultId, i)"
|
(onContextMenu)="openContextMenu($event, dataSet.batchId, dataSet.resultId, i)"
|
||||||
[isCellEditValid]="onIsCellEditValid"
|
[isCellEditValid]="onIsCellEditValid"
|
||||||
[overrideCellFn]="overrideCellFn"
|
[overrideCellFn]="overrideCellFn"
|
||||||
enableEditing="true"
|
[enableEditing]="true"
|
||||||
class="boxCol content vertBox slickgrid">
|
class="boxCol content vertBox slickgrid">
|
||||||
</slick-grid>
|
</slick-grid>
|
||||||
</div>
|
</div>
|
||||||
|
|||||||
@@ -187,10 +187,23 @@ export class EditDataComponent extends GridParentComponent implements OnInit, On
|
|||||||
let dataWithSchema = {};
|
let dataWithSchema = {};
|
||||||
// skip the first column since its a number column
|
// skip the first column since its a number column
|
||||||
for (let i = 1; i < this.dataSet.columnDefinitions.length; i++) {
|
for (let i = 1; i < this.dataSet.columnDefinitions.length; i++) {
|
||||||
dataWithSchema[this.dataSet.columnDefinitions[i].field] = r.cells[i - 1].displayValue;
|
dataWithSchema[this.dataSet.columnDefinitions[i].field] = {
|
||||||
|
displayValue: r.cells[i - 1].displayValue,
|
||||||
|
ariaLabel: escape(r.cells[i - 1].displayValue),
|
||||||
|
isNull: r.cells[i - 1].isNull
|
||||||
|
};
|
||||||
}
|
}
|
||||||
return dataWithSchema;
|
return dataWithSchema;
|
||||||
});
|
});
|
||||||
|
|
||||||
|
// should add null row?
|
||||||
|
if (offset + count > this.dataSet.totalRows - 1) {
|
||||||
|
gridData.push(this.dataSet.columnDefinitions.reduce((p, c) => {
|
||||||
|
p[c.field] = 'NULL';
|
||||||
|
return p;
|
||||||
|
}, {}));
|
||||||
|
}
|
||||||
|
|
||||||
// let rowIndex = offset;
|
// let rowIndex = offset;
|
||||||
// let gridData: IGridDataRow[] = result.subset.map(row => {
|
// let gridData: IGridDataRow[] = result.subset.map(row => {
|
||||||
// self.idMapping[rowIndex] = row.id;
|
// self.idMapping[rowIndex] = row.id;
|
||||||
@@ -202,9 +215,6 @@ export class EditDataComponent extends GridParentComponent implements OnInit, On
|
|||||||
// };
|
// };
|
||||||
// });
|
// });
|
||||||
|
|
||||||
// Append a NULL row to the end of gridData
|
|
||||||
// let newLastRow = gridData.length === 0 ? 0 : (gridData[gridData.length - 1].row + 1);
|
|
||||||
// gridData.push({ values: self.dataSet.columnDefinitions.map(cell => { return { displayValue: 'NULL', isNull: false }; }), row: newLastRow });
|
|
||||||
resolve(gridData);
|
resolve(gridData);
|
||||||
});
|
});
|
||||||
});
|
});
|
||||||
@@ -367,17 +377,11 @@ export class EditDataComponent extends GridParentComponent implements OnInit, On
|
|||||||
index => { return {}; }
|
index => { return {}; }
|
||||||
),
|
),
|
||||||
columnDefinitions: [rowNumberColumn.getColumnDefinition()].concat(resultSet.columnInfo.map((c, i) => {
|
columnDefinitions: [rowNumberColumn.getColumnDefinition()].concat(resultSet.columnInfo.map((c, i) => {
|
||||||
let isLinked = c.isXml || c.isJson;
|
|
||||||
let linkType = c.isXml ? 'xml' : 'json';
|
|
||||||
|
|
||||||
return {
|
return {
|
||||||
id: i.toString(),
|
id: i.toString(),
|
||||||
name: c.columnName === 'Microsoft SQL Server 2005 XML Showplan'
|
name: escape(c.columnName),
|
||||||
? 'XML Showplan'
|
|
||||||
: escape(c.columnName),
|
|
||||||
field: i.toString(),
|
field: i.toString(),
|
||||||
formatter: isLinked ? Services.hyperLinkFormatter : Services.textFormatter,
|
formatter: Services.textFormatter,
|
||||||
asyncPostRender: isLinked ? self.linkHandler(linkType) : undefined,
|
|
||||||
isEditable: c.isUpdatable
|
isEditable: c.isUpdatable
|
||||||
};
|
};
|
||||||
}))
|
}))
|
||||||
@@ -533,7 +537,7 @@ export class EditDataComponent extends GridParentComponent implements OnInit, On
|
|||||||
self.windowSize,
|
self.windowSize,
|
||||||
self.dataSet.totalRows,
|
self.dataSet.totalRows,
|
||||||
self.loadDataFunction,
|
self.loadDataFunction,
|
||||||
index => { return { values: [] }; }
|
index => { return {}; }
|
||||||
);
|
);
|
||||||
|
|
||||||
// Refresh grid
|
// Refresh grid
|
||||||
@@ -555,7 +559,7 @@ export class EditDataComponent extends GridParentComponent implements OnInit, On
|
|||||||
this.windowSize,
|
this.windowSize,
|
||||||
this.dataSet.totalRows,
|
this.dataSet.totalRows,
|
||||||
this.loadDataFunction,
|
this.loadDataFunction,
|
||||||
index => { return { values: [] }; }
|
index => { return {}; }
|
||||||
);
|
);
|
||||||
|
|
||||||
// refresh results view
|
// refresh results view
|
||||||
|
|||||||
Reference in New Issue
Block a user