Another great new post from Chris on Creating a PSI Extension. Where I think this will be really useful is if you need something back from the PSI that isn't quite formatted correctly to interact with your 3rd party system - or perhaps you need to consolidate information from several PSI calls and then do some manipulation. You could write your own PSI extension that does all this server-side - and then just returns exactly what you need and exactly how you need it. Save some bandwidth and also some client side processing. That said remember that there are other users on the server too - keep the balance right and do things as efficiently as possible.
Technorati Tags: Project Server 2007
If you want to see a broader coverage of Microsoft Office support issues - along with some personal views of what working in support at Microsoft is really like then get along to the Microsoft Office Support Blog. The scope of this blog in their own words:-
"This blog is going to be used as a way to bring people into the world of what it is like to do products support for Microsoft Office. We will utilize the blog in a myriad of different ways. You will see posts about technical problems we are working on with customers; get information about patch Tuesday’s and all of the Microsoft Office security bulletins; get a view of how the Product Support organization is organized; hear firsthand accounts from support engineers about what they do day to day; and find out how Product Support and Product Development work together. These are just a few topics that will be covered.
We hope that you enjoy this blog and come back to check on us regularly. Thank you."
There is already some really useful stuff up there - on DST, deadlines for moving on from Beta 2 Technical Refresh and lots more!
Technorati Tags: Microsoft Office
The new world of Project Server 2007 and the architectural changes are catching a few of our customers out - and I thought I'd share a few tips and tricks for keeping the queue flowing - and some tips for getting things moving again if they appear to have stopped.
First I will point to a great TechNet article on the Queue and as you will all have read this then my explanations will make more sense :).
Under Server Settings in Project Web Access the Manage Queue option allows you to see what is happening in the project and timesheet queues - if you don't have admin access then the Personal Settings will give you a glimpse of your queue jobs. The latter option may not however give you the complete picture and allow you to see what might be ahead or you. It is like being stuck on the highway and not being able to see around the corner to where the flashing lights are...
So lets start with some definitions:-
Waiting to be processed - means exactly what it says. Once I get to the front of the queue then I am ready to go. But there may be other active jobs ahead that will stop my job starting even if I am first in line. The queue is clever enough that it will hold jobs back if their processing would interfere with other running jobs. An example might be a publish job that will need to wait for a cube build to finish.
Processing - means that I made it to the front of the queue, was allocated a thread and am working away! One thing I have noticed is that the % complete indicator doesn't always make you think that "processing" is happening - but generally it is. Looking in the ULS logs, event logs or at general server activity (particularly the Microsoft.Office.Project.Server.Queuing.exe process should help if you have continued doubts that processing is moving along.
Skipped for optimization - is the queue's way of telling you that it is not going to do the same thing twice. Some queue jobs have a payload (such as saving a project) and others are merely instructions (such as publish a project). If several of the same instruction are in the queue, then only one needs to be actioned. An example might be working on a project and publishing a few times during a period of time. If the queue was busy all of these jobs might be sitting waiting for a while - and then rather than doing each in turn it just needs to do one. It is just an instruction to publish the content of the saved project. This would not happen with a queue job that had a payload as each of these contains real data that needs to be applied - rather than just an instruction to do something with data somewhere else.
Getting Queued - appears to be one of the more confusing messages. I mentioned above that some jobs, such as save project from Project Professional, have a payload. This payload goes into the queue as a group of related messages, which then get processed once they reach the front of the queue. Getting queued means that these messages are going into the queue. It is possible that the Getting Queued message appears for some time because a very large project is coming in across a very slow link. One other potential problem that can break things is if this flow in of messages does not complete. Perhaps the Project Manager saving the project shuts down Project before it completes - or perhaps goes out of wireless range midway through the process. Either way the Getting Queued could sit there for some time. To fix this up find the person who has this project in mid-save and get them to reconnect and complete the job. As a last resort you can cancel the Getting Queued - but YOU WILL LOSE DATA! Any changes the Project Manager made will not get saved. To protect you from inadvertently canceling one of these jobs we add a check box under Advanced options labeled "Cancel jobs getting enqueued" which will need to be checked before these jobs can be canceled.
Failed and Not Blocking correlation - is a failure that is isolated and not stopping any other jobs from processing. The term correlation is used to group related queue jobs together. There should be an associated error message and entries in the log to help explain the problem.
Failed and Blocking correlation - means that something bad happened that is also blocking other things in the related group. If a save fails then a publish could not continue would be one example.
Success - is the one message we like to see! It can also be useful to sometimes show the Success messages (by default they are not shown in the Manage Queue display) as it is a way of seeing if the queue is working at all. Adding the completion state of Success through the options on the manage queue page is how this is done.
Canceled - means what it says. It could have been canceled by a user, but it is also possible for jobs to be canceled by the server. One example would be a failure early on in a save from Project Professional. A job would have been added to the queue for the save - but reconnection may lead to cancellation of this job and the addition of another save job - it really depends hoe far the save got before the problem. I simulate bad things like this by pulling my network cable out just after hitting save - just to see what happens!
I will follow up with another posting on the queue with some further tips on troubleshooting -but my parting gift is a guide to what the dialogs at the bottom of Project Professional 2007 mean during a save.
I'm just playing around with both the Microsoft Office Project Server 2007 Management Pack for MOM 2005 and also the Microsoft Best Practices Analyzer for Windows SharePoint Services 3.0 and the 2007 Microsoft Office System. Nothing much to report just yet, but I'd love to hear comments on how you are finding these tools. The Best Practices Analyzer does have quite a few specific rules for Project Server 2007 - and the plan is that we will extend the rule sets for both of these products as we come across new "gotchas". Let us know if you think we are missing stuff already.
A couple of early "gotchas" that might also get you are:-
There are evaluations available for Microsoft Operations Manager 2005 SP1 .
Once I've had these running for a while I'll report back on how they worked for me.
I can't imagine there are too many people who read my blog that don't also read Treb's postings from the Project product group - but just in case you missed it Treb has done some really cool stuff with Live.com's macros for search. Take a look and try it out at http://search.live.com/macros/tggprojectserver/projectsearch