public function createDimensionStorage(DataControllerCallContext $callcontext, DataSourceStructureHandler $datasourceStructureHandler, DatasetMetaData $logicalDataset, $columnName) { parent::createDimensionStorage($callcontext, $datasourceStructureHandler, $logicalDataset, $columnName); $lookupDatasetName = StarSchemaNamingConvention::getAttributeRelatedName($logicalDataset->name, $columnName); $request = new DatasetStorageRequest($lookupDatasetName); LogHelper::log_debug($request); $datasourceStructureHandler->createDatasetStorage($callcontext, $request); $factsDatasetName = StarSchemaNamingConvention::getFactsRelatedName($logicalDataset->name); $request = new UpdateDatasetStorageRequest($factsDatasetName); $request->addOperation(new CreateColumnReferenceOperation($columnName, $lookupDatasetName)); LogHelper::log_debug($request); $datasourceStructureHandler->updateDatasetStorage($callcontext, $request); }