public function prepareLookupValue($value) {
        $lookupValue = new DimensionLookupHandler__LookupValue();
        $lookupValue->setPropertyValue('value', $value);

        return $lookupValue;
    }
 protected function prepareMonthIds(array &$processedYearValues, array &$missingDates)
 {
     $this->guaranteeMonthDefinitionInCache();
     $yearColumn = new ColumnMetaData();
     $yearColumn->name = 'year_id';
     $yearColumn->initializeTypeFrom(Sequence::getSequenceColumnType());
     $monthDefinitionColumn = new ColumnMetaData();
     $monthDefinitionColumn->name = 'month_def_id';
     $monthDefinitionColumn->initializeTypeFrom(Sequence::getSequenceColumnType());
     // preparing month records
     $possibleMissingMonths = NULL;
     foreach ($missingDates as $datetime) {
         $year = $datetime->getYear();
         $yearLookupKey = self::prepareLookupKey($year);
         $yearId = $processedYearValues[$yearLookupKey]->identifier;
         $month = $datetime->getMonth();
         $monthDefId = $this->cachedLookupValues[DateDimensionDatasetNames::MONTH_DEF][$month];
         $monthLookupValue = new DimensionLookupHandler__LookupValue();
         $monthLookupValue->setProperty($monthDefinitionColumn->name, $monthDefId);
         $monthLookupValue->setProperty($yearColumn->name, $yearId);
         $monthLookupKey = self::prepareLookupKey(array($monthDefId, $yearId));
         $possibleMissingMonths[$monthLookupKey] = $monthLookupValue;
     }
     // processing months
     $this->prepareIdentifiers(DateDimensionDatasetNames::MONTHS, array($monthDefinitionColumn, $yearColumn), NULL, self::$SEQUENCE_NAME__TIME, $possibleMissingMonths);
     // preparing processed quarters
     $processedMonthValues = NULL;
     foreach ($missingDates as $datetime) {
         $year = $datetime->getYear();
         $yearLookupKey = self::prepareLookupKey($year);
         $yearId = $processedYearValues[$yearLookupKey]->identifier;
         $month = $datetime->getMonth();
         $monthDefId = $this->cachedLookupValues[DateDimensionDatasetNames::MONTH_DEF][$month];
         $monthLookupKey = self::prepareLookupKey(array($monthDefId, $yearId));
         $processedMonthLookupKey = self::prepareLookupKey(array($month, $year));
         $processedMonthValues[$processedMonthLookupKey] = $possibleMissingMonths[$monthLookupKey];
     }
     return $processedMonthValues;
 }
 public function prepareLookupValue($value)
 {
     $lookupValue = new DimensionLookupHandler__LookupValue();
     $lookupValue->setProperty(self::$COLUMN_NAME__ATTRIBUTE_LOOKUP_VALUE, $value);
     return $lookupValue;
 }