This commit is contained in:
Jan Prochazka
2020-05-13 17:59:33 +02:00
parent 97901d2d6f
commit 6ba5d98883

View File

@@ -60,8 +60,7 @@ export class TableGridDisplay extends GridDisplay {
); );
} }
addJoinsFromExpandedColumns(select: Select, columns: DisplayColumn[], parentAlias: string, columnSources): boolean { addJoinsFromExpandedColumns(select: Select, columns: DisplayColumn[], parentAlias: string, columnSources) {
let res = false;
for (const column of columns) { for (const column of columns) {
if (this.isExpandedColumn(column.uniqueName)) { if (this.isExpandedColumn(column.uniqueName)) {
const table = this.getFkTarget(column); const table = this.getFkTarget(column);
@@ -71,19 +70,11 @@ export class TableGridDisplay extends GridDisplay {
this.addReferenceToSelect(select, parentAlias, column); this.addReferenceToSelect(select, parentAlias, column);
let added = false; this.addJoinsFromExpandedColumns(select, subcolumns, childAlias, columnSources)
if (this.addJoinsFromExpandedColumns(select, subcolumns, childAlias, columnSources)) added = true; this.addAddedColumnsToSelect(select, subcolumns, childAlias, columnSources)
if (this.addAddedColumnsToSelect(select, subcolumns, childAlias, columnSources)) added = true;
// if (added) {
// this.addReferenceToSelect(select, parentAlias, column);
// res = true;
// }
} }
} }
} }
return res;
// const addedColumns = this.getGridColumns().filter(x=>x.)
} }
addReferenceToSelect(select: Select, parentAlias: string, column: DisplayColumn) { addReferenceToSelect(select: Select, parentAlias: string, column: DisplayColumn) {
@@ -167,12 +158,9 @@ export class TableGridDisplay extends GridDisplay {
return this.findTable({ schemaName, pureName }); return this.findTable({ schemaName, pureName });
} }
processReferences(select: Select, displayedColumnInfo: DisplayedColumnInfo): boolean { processReferences(select: Select, displayedColumnInfo: DisplayedColumnInfo) {
let res = false; this.addJoinsFromExpandedColumns(select, this.columns, 'basetbl', displayedColumnInfo);
if (this.addJoinsFromExpandedColumns(select, this.columns, 'basetbl', displayedColumnInfo)) res = true; this.addHintsToSelect(select);
if (this.addHintsToSelect(select)) res = true;
// if (select.from.relations) select.from.relations.reverse();
return res;
} }
createSelect() { createSelect() {
@@ -208,8 +196,7 @@ export class TableGridDisplay extends GridDisplay {
columns: DisplayColumn[], columns: DisplayColumn[],
parentAlias: string, parentAlias: string,
displayedColumnInfo: DisplayedColumnInfo displayedColumnInfo: DisplayedColumnInfo
): boolean { ) {
let res = false;
for (const column of columns) { for (const column of columns) {
if (this.config.addedColumns.includes(column.uniqueName)) { if (this.config.addedColumns.includes(column.uniqueName)) {
select.columns.push({ select.columns.push({
@@ -222,9 +209,7 @@ export class TableGridDisplay extends GridDisplay {
...column, ...column,
sourceAlias: parentAlias, sourceAlias: parentAlias,
}; };
res = true;
} }
} }
return res;
} }
} }