File tree Expand file tree Collapse file tree 1 file changed +16
-1
lines changed
packages/cubejs-schema-compiler/src/adapter Expand file tree Collapse file tree 1 file changed +16
-1
lines changed Original file line number Diff line number Diff line change @@ -1192,7 +1192,22 @@ export class PreAggregations {
11921192 const targetMeasuresReferences = this . measureAliasesRenderedReference ( preAggregationForQuery ) ;
11931193
11941194 const columnsFor = ( targetReferences , references , preAggregation ) => Object . keys ( targetReferences ) . map (
1195- member => `${ references [ this . query . cubeEvaluator . pathFromArray ( [ preAggregation . cube , member . split ( '.' ) [ 1 ] ] ) ] } ${ targetReferences [ member ] } `
1195+ member => {
1196+ const [ memberCube , memberProp ] = member . split ( '.' ) ;
1197+ let refKey = references [ this . query . cubeEvaluator . pathFromArray ( [ preAggregation . cube , memberProp ] ) ] ;
1198+
1199+ if ( refKey ) {
1200+ return `${ refKey } ${ targetReferences [ member ] } ` ;
1201+ }
1202+
1203+ // Preaggregation may reference the joined cube dimensions/measures
1204+ if ( this . query . cubeEvaluator . cubeFromPath ( preAggregation . cube ) . joins [ memberCube ] ) {
1205+ refKey = references [ this . query . cubeEvaluator . pathFromArray ( [ memberCube , memberProp ] ) ] ;
1206+ return `${ refKey } ${ targetReferences [ member ] } ` ;
1207+ }
1208+
1209+ throw new Error ( `Preaggregation referenced property (${ memberCube } .${ memberProp } ) not found in cube ${ preAggregation . cube } ` ) ;
1210+ }
11961211 ) ;
11971212
11981213 const tables = preAggregationForQuery . referencedPreAggregations . map ( preAggregation => {
You can’t perform that action at this time.
0 commit comments