How to read global calendar from Project Server 2007?
Project Server 2007 developer can use PSI to read global calender. Here is the example how to read global calender with PSI:
CalendarDataSet cal = ProjectServer.wsCalendar.ReadCalendars(GetByNameFilter(Name), false);
private string GetByUIDFilter(Guid UID)
{
CalendarDataSet cal = new CalendarDataSet();
Filter f = new Filter();
f.FilterTableName = cal.Calendars.TableName;
f.Fields.Add(new PSLibrary.Filter.Field(cal.Calendars.CAL_UIDColumn.ColumnName);
foreach (DataColumn c in cal.CalendarExceptions.Columns)
{
f.Fields.Add(new PSLibrary.Filter.Field(c.Table.TableName, c.ColumnName));
}
f.Criteria = new PSLibrary.Filter.FieldOperator(PSLibrary.Filter.FieldOperationType.Equal,
cal.Calendars.CAL_UIDColumn.ColumnName, UID);
return f.GetXml();
}