public function __construct(XMLALevel $level, $uniqueName, $name, $caption, $description, $parentMemberUniqueName, $aggregator, $datatype, $visible, $ordinal) { parent::__construct($level, $uniqueName, $name, $caption, $description, $parentMemberUniqueName, $aggregator == Aggregator::getEnum(Aggregator::CALCULATED) ? MemberType::getEnum(MemberType::FORMULA) : MemberType::getEnum(MemberType::MEASURE), 0, $ordinal, array()); assert($level->getHierarchy()->getDimension()->getDimensionType() == DimensionType::getEnum(DimensionType::MEASURE)); $this->aggregator = $aggregator; $this->datatype = $datatype; $this->visible = $visible; }
public function handle(DOMElement $row, XMLAConnectionContext $context, NamedList $list) { $memberOrdinal = XMLAUtil::integerElement($row, 'LEVEL_NUMBER'); $memberUniqueName = XMLAUtil::stringElement($row, 'MEMBER_UNIQUE_NAME'); $memberName = XMLAUtil::stringElement($row, 'MEMBER_NAME'); $parentUniqueName = XMLAUtil::stringElement($row, 'PARENT_UNIQUE_NAME'); $memberTypeValues = MemberType::values(); $memberType = $memberTypeValues[XMLAUtil::integerElement($row, 'MEMBER_TYPE')]; $memberCaption = XMLAUtil::stringElement($row, 'MEMBER_CAPTION'); $childrenCardinality = XMLAUtil::integerElement($row, 'CHILDREN_CARDINALITY'); $level = $context->getLevel($row); $map = array(); $this->addUserDefinedDimensionProperties($row, $level, $map); $depth = XMLAUtil::integerElement($row, 'DEPTH'); if ($depth && $depth != $level->getDepth()) { $map['DEPTH'] = $depth; } $member = new XMLAMember($level, $memberUniqueName, $memberName, $memberCaption, "", $parentUniqueName, $memberType, $childrenCardinality, $memberOrdinal, $map); $list->add($member); }
public function isCalculated() { $values = MemberType::values(); return $this->type === $values[4]; }