%DeepSee.Time.WeekYear
Class %DeepSee.Time.WeekYear Extends %DeepSee.Time.AbstractLevel [ System = 3 ]
This class implements an ISO 8601 year and week level within a time dimension. This represents the week number (0 through 53) of a given year.
The key value for this level takes the form "YYYYWnn"
Parameters
DIMTYPE
Parameter DIMTYPE = "week";
Methods
%SupportsNOW
ClassMethod %SupportsNOW() As %Boolean
Return true if this level supports a NOW member.
%Convert
ClassMethod %Convert(pTime As %DeepSee.Datatype.dateTime, pTimeOffset As %String = "") As %Integer [ CodeMode = expression ]
Convert a $H value to the logical value used for this level. This is used within the computed field logic for properties within a fact table based on this level.
. In this case, we convert $H to an ISO Week: YYYYWnn
%Count
ClassMethod %Count(pCube As %String, pDimNo As %Integer, pHierNo As %Integer, pLevelNo As %Integer) As %Integer
Return the total number of members within this level.
%GetName
ClassMethod %GetName() As %String
Return the user-visible name of this level.
%KeyToValue
ClassMethod %KeyToValue(pKey As %Integer, pFormat As %String = "", pOffset As %String = "") As %String
Convert a level key value to a display value.
%ValueToKey
ClassMethod %ValueToKey(pValue As %String, pFormat As %String = "", pOffset As %String = "") As %Integer
Convert a level display value to its corresponding key value. Return "" if there is no corresponding key.
%KeyToBaseRange
ClassMethod %KeyToBaseRange(pKey As %String, Output pStart As %Date, Output pEnd As %Date, pOffset As %String = "") As %Status
Convert a week into starting and ending base values (in $H format).
%GetLevelMembers
ClassMethod %GetLevelMembers(Output pList As %List, pCube As %String, pFact As %String, pStartRange As %Date, pEndRange As %Date, pTimeOffset As %String = "", pFormat As %String = "") As %Status
Return an array of members of this level.
%GetRelatedKey
ClassMethod %GetRelatedKey(Output pRelatedKey As %String, pCube As %String, pFact As %String, pKey As %String, pRelation As %String, pOffset As %Integer = "", pEndKey As %String = "", pTimeOffset As %String = "") As %Status
Return, via pRelatedKey a key within this level related to pKey.
ISOWEEKSINYEAR
ClassMethod ISOWEEKSINYEAR(pYear As %Integer) As %Integer
Return the number of ISO weeks within a given year.
ISODOW
ClassMethod ISODOW(pDate As %Date) As %Integer
Return the ISO day of week for a given $H value: Monday = 1, Sunday = 7.
ISOWEEKNUM
ClassMethod ISOWEEKNUM(pDate As %Date) As %Integer
Compute the ISO week number (with no year) for a given $H value.
ISOWEEK
ClassMethod ISOWEEK(pDate As %Date, Output pWeek As %Integer, Output pYear As %Integer) As %String
Compute the ISO week number and corresponding year for a given $H value. Returns the ISO compatible display form of the week: YYYYWnn.
ISOWEEKToRange
ClassMethod ISOWEEKToRange(pWeek As %String, Output pStart As %Date, Output pEnd As %Date)
For a given ISOWEEK (YYYYWnn), find its start and end dates