Open Exchange
Global Masters
Home / Class Reference / ENSLIB namespace / %DeepSee.Time.WeekYear
Private  Storage   


class %DeepSee.Time.WeekYear extends

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 Properties Methods Queries Indices ForeignKeys Triggers
1 14


%AddToSaveSet %BaseRangeToKey %ClassIsLatestVersion %ClassName
%ConstructClone %Convert %Count %DispatchClassMethod
%DispatchGetModified %DispatchGetProperty %DispatchMethod %DispatchSetModified
%DispatchSetMultidimProperty %DispatchSetProperty %Extends %FormatToZDTCode
%GetAllMembers %GetCalendar %GetDimType %GetLevelMembers
%GetName %GetNthKey %GetOptionList %GetParameter
%GetPeriodLength %GetRelatedKey %IsA %IsIndependent
%IsModified %KeyToBaseRange %KeyToValue %New
%NormalizeObject %ObjectModified %OriginalNamespace %PackageName
%RemoveFromSaveSet %SerializeObject %SetModified %SupportsNOW
%ValidateObject %ValueToKey ISODOW ISOWEEK


• parameter DIMTYPE = "week";
Type reported back to the UI. This determines what type of control to display for filters based on this class.


• classmethod %Convert(pTime As %DeepSee.Datatype.dateTime, pTimeOffset As %String = "") as %Integer
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
• 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.
• 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.
• classmethod %GetName() as %String
Return the user-visible name of this level.
• 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.
• 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).
• classmethod %KeyToValue(pKey As %Integer, pFormat As %String = "", pOffset As %String = "") as %String
Convert a level key value to a display value.
• classmethod %SupportsNOW() as %Boolean
Return true if this level supports a NOW member.
• 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.
• classmethod ISODOW(pDate As %Date) as %Integer
Return the ISO day of week for a given $H value: Monday = 1, Sunday = 7.
• 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.
• classmethod ISOWEEKNUM(pDate As %Date) as %Integer
Compute the ISO week number (with no year) for a given $H value.
• classmethod ISOWEEKSINYEAR(pYear As %Integer) as %Integer
Return the number of ISO weeks within a given year.
• classmethod ISOWEEKToRange(pWeek As %String, Output pStart As %Date, Output pEnd As %Date)
For a given ISOWEEK (YYYYWnn), find its start and end dates