none
Accessing Enterprise Calendars using PSI RRS feed

  • Question

  • Hello everybody,

    I'm facing a problem concerning enterprise calendars. I'm developing a software for Project Server 2010 that reads the resources' work per day and shows aggregate values per project and per month. For this purpose I'm trying to build a method which check whether a given resource is assigned on a given date. Here, the calendar comes into game. As far as I've read the SDK Documentation there is no way to access detailed enterprise calendar information of the type "Saturday/Sunday are non-working days". Unfortunately those non-working days are not part of the CalendarExceptionDataSet class.

    Hence my question is: Is there any way to access those information via code (C#)? I've already had a look at the property PROJ_OPT_DAYS_PER_MONTH which excludes weekends, but which I'm not able to take to explicitly see whether a given date is a weekend. I know there are ways of accessing this information via the System Calendars class but since there are several calendars employed in the company it has to be read off dynamically.

    Thanks a lot for your help,

    Tom

    Wednesday, August 22, 2012 1:21 PM

Answers

  • The Calendar class methods support only calendar exceptions for enterprise resources, not all enterprise calendar functionality in Project Server. You can add and update time off for Project Server resources as calendar exceptions.

    Work weeks in enterprise calendars are not normalized in the Published database. Work week information is stored as binary data, so there are no direct queries available to load all calendar information to a CalendarDataSet object.


    Cheers. Happy troubleshooting !!! Sriram E - MSFT Enterprise Project Management

    • Marked as answer by BIS HD Sunday, November 18, 2012 3:19 PM
    Friday, August 31, 2012 5:19 PM

All replies

  • Tom

    I found below resource about resource management. http://msdn.microsoft.com/en-us/library/office/ms423156(v=office.12)#pj12_ResourceData_Calendars

    You should be able to get the resource status through these web services:

    ResourcesDataTable

    • ResourcesRow

    • CalendarExceptionsDataTable (resource-specific exceptions in the ResourceDataSet)

    • CalendarsDataTable

    • CalendarsRow (specific resource calendars and base calendars)

    • CalendarExceptionsDataTable (base exceptions in the CalendarDataSet)

    • thanks.


    Forrest Guo | MSDN Community Support | Feedback to manager

    • Edited by Robin_Ren Wednesday, August 29, 2012 4:33 PM
    Thursday, August 23, 2012 8:51 AM
    Moderator
  • Hey Forrest,

    sorry for not replying directly to your post, but I've tried 3 browsers and none of them was capable to interpret the reply button under your post successfully. The void() seems to cause a Javascript error but I'm not too familiar with this kind of problems.

    Concerning your answer. I know those tables but they can't give me any information about the work of my resources. The problem is that weekends are not calender exceptions (as defined by MS). We have several calenders, some with Saturday and Sunday off and others with just Sunday or no day off. Thats why I have to check whether a given date is a work day in the project calendar and by now I'm not capable of doing this via PSI, although this information should be stored in some way within Project.

    Is there a way of finding this information? It would already help to have the information if Saturdays or Sundays are generally off work.

    Greetings from Germany, Tom

    Friday, August 24, 2012 8:37 AM
  • Hi Tom,

    I'll try to get other people help you on this question, please wait some time.

    Greetings,


    Forrest Guo | MSDN Community Support | Feedback to manager

    Saturday, August 25, 2012 8:24 AM
    Moderator
  • The Calendar class methods support only calendar exceptions for enterprise resources, not all enterprise calendar functionality in Project Server. You can add and update time off for Project Server resources as calendar exceptions.

    Work weeks in enterprise calendars are not normalized in the Published database. Work week information is stored as binary data, so there are no direct queries available to load all calendar information to a CalendarDataSet object.


    Cheers. Happy troubleshooting !!! Sriram E - MSFT Enterprise Project Management

    • Marked as answer by BIS HD Sunday, November 18, 2012 3:19 PM
    Friday, August 31, 2012 5:19 PM