public function ProductVariation($forcecurrent = false)
    {
        if ($this->ProductVariationID && $this->ProductVariationVersion && !$forcecurrent) {
            return Versioned::get_version(
                Variation::class,
                $this->ProductVariationID,
                $this->ProductVariationVersion
            );
        } elseif ($this->ProductVariationID
            && $product = Variation::get()->byID($this->ProductVariationID)
        ) {
            return $product;
        }
        return null;
    }
public function ProductVariation($forcecurrent = false)
    {
        if ($this->ProductVariationID && $this->ProductVariationVersion && !$forcecurrent) {
            return Versioned::get_version(
                Variation::class,
                $this->ProductVariationID,
                $this->ProductVariationVersion
            );
        } elseif ($this->ProductVariationID
            && $product = Variation::get()->byID($this->ProductVariationID)
        ) {
            return $product;
        }
        return null;
    }
public function ProductVariation ( $ forcecurrent = false ) { if ( $ this -> ProductVariationID && $ this -> ProductVariationVersion && ! $ forcecurrent ) { return Versioned :: get_version ( Variation :: class , $ this -> ProductVariationID , $ this -> ProductVariationVersion ) ; } elseif ( $ this -> ProductVariationID && $ product = Variation :: get ( ) -> byID ( $ this -> ProductVariationID ) ) { return $ product ; } return null ; }
Overloaded relationship, for getting versioned variations

@param  boolean $current
@return Variation
Overloaded relationship for getting versioned variations