SharePoint Learning Kit Macros for Assignment List Web Part

The queries in the Assignment List Web Part support macros in the conditions, e.g. here is the Due This Week Instructor query

 

<Query Name="DueThisWeekInstructor" Title="$Resources:SlkDll,QueryTitleDueThisWeek" ViewName="AssignmentListForInstructors" CountViewColumnName="AssignmentId">
  <Column Title="$Resources:SlkDll,QueryColumnTitleSite" RenderAs="SPWebName" ViewColumnName="AssignmentSPWebGuid" ViewColumnName2="AssignmentSPSiteGuid" />
  <Column Title="$Resources:SlkDll,QueryColumnTitleAssignment" RenderAs="Link" ViewColumnName="AssignmentTitle" ViewColumnName2="AssignmentId" NullDisplayString="$Resources:SlkDll,QueryColumnNullDisplayUntitled" />
  <Column Title="$Resources:SlkDll,QueryColumnTitleDue" RenderAs="UtcAsLocalDateTime" ViewColumnName="AssignmentDueDate" CellFormat="d" NullDisplayString="$Resources:SlkDll,QueryColumnNullDisplayDash" ToolTipFormat="$Resources:SlkDll,QueryColumnToolTipDue" Wrap="false" />
  <Column Title="$Resources:SlkDll,QueryColumnTitleSubmitted" RenderAs="Submitted" ViewColumnName="CountCompletedOrFinal" ViewColumnName2="CountTotal" Wrap="false" />
  <Condition ViewColumnName="AssignmentSPWebGuid" Operator="Equal" MacroName="SPWebScope" NoConditionOnNull="true" />
  <Condition ViewColumnName="AssignmentDueDate" Operator="IsNotNull" />
  <Condition ViewColumnName="AssignmentDueDate" Operator="GreaterThanEqual" MacroName="StartOfThisWeek"/>
  <Condition ViewColumnName="AssignmentDueDate" Operator="LessThan" MacroName="StartOfNextWeek"/>
  <Sort ViewColumnName="AssignmentDueDate" Ascending="true"/>
  <Sort ViewColumnName="AssignmentTitle" Ascending="true"/>
</Query>

The list of macros is:

Name Type Description
SPWebScope Array of site IDs. The ID of the sites that the ALWP is limited to depending on its properties: Will be the current site, null (for all) or an array of IDs.
CurrentUserKey Guid string The key of the current user in the SlkUser table. Not generally needed as the views are normally limited to current user.
Now DateTime The current date and time
StartOfToday DateTime Midnight of today
StartOfTomorrow DateTime Midnight of tomorrow
StartOfThisWeek DateTime Midnight of the start of the week as defined by the current user’s culture.
StartOfNextWeek DateTime Similar to StartOfThisWeek, but the subsequent week.
StartOfWeekAfterNext DateTime Similar to StartOfNextWeek, but the subsequent week.

 

As of version 1.8, you can now add a day modifier to the DateTime macros, to give you more flexibility over the date ranges. The format is:

macroName:dayModifier

Where macroName is the name of the macro above, and dayModifier is an integer value of days to add to the normal value. This can be negative to take away days. So if you wanted a query for assignemnts due tomorrow, you could have

<Condition ViewColumnName="AssignmentDueDate" Operator="GreaterThanEqual" MacroName="StartOfToday:1"/>
  <Condition ViewColumnName="AssignmentDueDate" Operator="LessThan" MacroName="StartOfToday:2"/>

Richard

I am Managing Director of SalamanderSoft Limited a company devoted to improving IT in education. I am also the project co-ordinator for the open source projects SharePoint Learning Kit and Microsoft Learning Gateway.

Leave a Reply

Your email address will not be published. Required fields are marked *