Custom Search

Tuesday, June 23, 2009

Project Server 2007: Migration from one domain to another

Brian Smith posted this step by step guide on moving a Microsoft Office Project Server 2007 system from one domain to another. We have gone through this process, and if we had this guide before, it would have been a lot easier to do so.
The guide was created by Lakshmana Rao (Laksh), and the original posting can be found here.

Project Server 2007: Migration from one domain to another
I’ve posted similar information before, but my colleague Lakshmana Rao (Laksh) has come up with a great document on the steps required when you want to move Project Server 2007 between domains. As Laksh points out at the end – please make sure you test this process in a non-production environment first – Hyper-V is perfect for these kind of tests. On with the document…
How to Move Project Server 2007 from one domain to another:
Considerations in this Article:
1. In this setup, the Project Server 2007 Farm has two servers (One Project Server 2007 SP2 Server box and one SQL Server 2005 SP3 Server box.) For multiple servers set up, please see the Note at the end of this article.
2. Current domain name is APAC and new domain name is NORTHAMERICA.
3. In the current set up, user account used for installing Project Server 2007 and as service account where ever is required is APAC\PsvrSrvcAcct
Prior to changing the Servers to the New Domain:
1. In the new domain, ensure that you have same account IDs and names as that of the domain account IDs and names in Project Server and the service accounts used for Project Server 2007.
Otherwise, after migration; we experience issues with user mappings and unknown issues related to resource assignments/ work/Actual work etc.
2. Take Full Farm back up from SharePoint Central Admin, Operations, Perform a back up. (For more details, please refer to “Back up and restore the Project Server 2007 farm” at http://technet.microsoft.com/en-us/library/dd207295.aspx
3. Create a user in PWA using the Local Administrator ID or any local User and add to Project Server Administrators group.
For example, if Application Server host name is PSVRPROD, create a user (PSVRPROD\Administrator) in PWA, Server Settings, Manage Users, New User and assign to Administrator group. (After domain migration, we use this account to login to PWA and perform administrative tasks).
4. Stop the WWW service in Project Server.
5. In SQL Server 2005, note the permissions of Service Accounts used on the SharePoint and Project Server databases. (Note the Server roles and User Mappings of the Service Accounts)
Steps to Move the Servers to New Domain:
Moving SQL Server 2005 box:
1. Join the SQL Server to the new domain.
2. Restart the Server.
3. Login to the server with Admin Privileges and add the respective service accounts to the Local Admin group.
In this scenario, I have added NORTHAMERICA\PsvrSrvcAcct. (Before domain change, APAC\PsvrSrvcAcct was present in Admin group.)
4. Open Services.msc and ensure that the MS SQL Server service is running. You may need to change the ‘Log on’ Account name if the service is using a domain account. Specify the correct service account and start the service.
5. Connect to the SQL Server using SQL Server Management Studio.
6. Expand the Security. Click on Logins.
7. Create Service accounts used in Project Server and provide proper permissions to the SharePoint and Project Server databases. (You need to refer to notes in step 5 in section “Prior to changing the Servers to the New Domain:” and give the same permissions ( Server roles and User mappings to the new service accounts)
In this scenario, I have created NORTHAMERICA\PsvrSrvcAcct in SQL Server and provided the same server roles and user mappings as that of APAC\ PsvrSrvcAcct
8. In MSP_RESOURCES table of Published database, change the domain name of the users.
Use the following query
UPDATE MSP_RESOURCES
SET WRES_ACCOUNT = REPLACE(LTRIM(WRES_ACCOUNT), '', '');
In this scenario, I used,
UPDATE MSP_RESOURCES
SET WRES_ACCOUNT = REPLACE (LTRIM(WRES_ACCOUNT), 'APAC', 'NORTHAMERICA');
Moving Project Server 2007 box:
1. Join the Project Server to the new domain.
2. Restart the Server.
3. Login as local Administrator and add the respective service accounts to the Local Admin group.
In this scenario, I have added NORTHAMERICA\PsvrSrvcAcct. (Before domain change, APAC\PsvrSrvcAcct was present in Admin group.)
4. Ensure that you are able to connect to SQL Server box. (You can use UDL connection test).
5. Follow the KB article, http://support.microsoft.com/kb/934838 and change the farm service accounts and passwords.
6. Ensure that the Project Server Queue, Event, SharePoint Timer services are using the new domain service account. These should have been set by the actions in step 5 so should not need changing manually (worth noting just in case they didn't do step 5 right and think manually changing will put things right),
7. Open IIS Manager and ensure that all the service accounts are changed to the new domain service accounts. If not change them and restart the IIS.
8. Login to SharePoint Central Admin site.
9. Click on Operations, Service Accounts.
10. Select Web Application pool. For Web Service, select “Windows SharePoint Services Web Application”.
11. For each Web Application pool, verify whether the user name is correct. If not update them and restart IIS.
In this scenario, I have checked whether it is NORTHAMERICA\PsvrSrvcAcct.
(Steps 8 -11 are to make sure that the SharePoint reflects the changes)
12. Log in to PWA using local Administrator ID ( created in step 3 of section “Prior to changing the Servers to the New Domain:” )
13. To initiate “User Synchronization for Project Web Access App Root Site and Project WSS Workspaces”, create a new Category (say “TestSync”) from on Server Settings, Manage Groups add users to this group ( do not add the currently logged in user ) and click save. Again, revert back the changes. Delete the newly created category.
14. Once, “User Synchronization for Project Web Access App Root Site and Project WSS Workspaces” is succeeded, synchronize the Project Workspaces from Server Settings, Project Workspaces.
15. Test the server by publishing a new project and existing project as well.
16. Ask users to access the PWA and Project workspaces and test.
Note: If that farm has multiple Application Servers and WFEs, you have to detach all the servers from the farm, except the server that host Central Admin site. Follow the above steps. The, move other servers to new domain and then connect to the farm one after another.
You can also use PSI functions “SynchronizeMembershipForPwaAppRootSite ()” to update PWA WSS Root Site information and “QueueSynchronizeMembershipForWssSite “to update each WSS Workspace. This requires writing a custom code.
As with any major changes, please test in your own environment to ensure these steps work for you before moving a production system.

Windows 7 Beta To RC Upgrade Instructions

I found this great post about upgrading Windows 7 beta to RC. I had this problem, and the fact that it is possible to avoid a full install was very exciting for me.
The original article can be found at www.windows7news.com

The Microsoft Engineering team has outlined how Windows 7 Beta users can upgrade their version of Windows 7 to the soon to be released Release Candidate of Windows 7. The disappointing news is that Microsoft suggests to do a clean install instead as the development changes introduced after the release of the beta of Windows 7 were not always compatible with the upgrades made thereafter.

A clean install on the other hand would mean that all the changes and customizations made to the operating system by the user would be lost. This is a nuisance although everyone knew beforehand that this could happen eventually. Microsoft is suggesting to do a clean install or upgrade from Windows Vista to Windows 7.

The RC, however, is about getting breadth coverage to validate the product in real-world scenarios. As a result, we want to encourage you to revert to a Vista image and upgrade or to do a clean install, rather than upgrade the existing Beta.

The Windows 7 release candidate setup will quit automatically if it recognizes a pre-RC build on the computer system. Microsoft did however publish a workaround for that for users who really need to do it:

1. Download the ISO as you did previously and burn the ISO to a DVD.
2. Copy the whole image to a storage location you wish to run the upgrade from (a bootable flash drive or a directory on any partition on the machine running the pre-release build).
3. Browse to the sources directory.
4. Open the file cversion.ini in a text editor like Notepad.
5. Modify the MinClient build number to a value lower than the down-level build. For example, change 7100 to 7000 (pictured below).
6. Save the file in place with the same name.
7. Run setup like you would normally from this modified copy of the image and the version check will be bypassed.

There you got it. It is still possible to upgrade a pre-release candidate release to the RC of Windows 7. Microsoft did add some words of caution to the article which are quoted below:

These instructions will be brief. Since everyone reading is a well-versed and experienced beta tester you know ALWAYS BACK UP YOUR MACHINE before running any OS installation and NEVER TEST AN OS ON YOUR ONLY COPY OF ANY DATA. Testing a pre-release product means just that—it is testing and it is pre-release. Even though this is a Release Candidate, we are still testing the product. We have very high confidence but even if an error happens once in 1,000,000 we want to make sure everyone is taking the precautions normal for a pre-release product.

One other related caution is INSTALL ONLY OFFICIALLY RELEASED BUILDS FROM MICROSOFT. It will always be tempting to get the build with the “mod” already done but you really never know what else has been done to the build. There’s a thrill in getting the latest, we know, but that also comes with risks that can’t even be quantified. For the RC we will work to release a hash or some other way to validate the build, but the best way is to always download directly from Microsoft.

It basically says to avoid unofficial releases of Windows 7 and to make sure that data has been backed up before starting the installation of beta and release candidate builds.

Saturday, June 6, 2009

How to check Project 2007 version using VBA?

I recently went through a lot of trouble to find the version of each client connecting to Microsoft Office Project Server 2007. Luckily, Christophe Fiessinger posted this great entry in his blog.

Thursday, June 4, 2009

Advantages of using a 64-bit Operating system with Microsoft Office Project Server 2007

I found this very interesting article while doing some research about an upcoming migration, and I thought I should share it with you.

Although some of the advantages of using 64-bit Operating systems seem obvious, such as increased virtual and physical memory addressing capabilities, others are not so evident, such as improved security and lower cost of ownership.

After reading this article you might be more inclined to migrate your environment to 64-bit software.

Friday, May 22, 2009

Important Information on Service Pack 2

If you have recently installed applied Service Pack 2 (SP2)  for Microsoft Office SharePoint Server 2007, this information is of high relevance to you.

A bug with Service Pack 2 (SP2) that affects all customers that have deployed it for SharePoint Server 2007 has been identified.

During the installation of SP2, a product expiration date is improperly activated. This means SharePoint will expire as though it was a trial installation 180 days after SP2 is deployed. The activation of the expiration date will not affect the normal function of SharePoint up until the expiration date passes. Furthermore, product expiration 180 days after SP2 installation will not affect customer’s data, configuration or application code but will render SharePoint inaccessible for end-users. Please read further information at the official SharePoint blog, http://blogs.msdn.com/sharepoint/archive/2009/05/21/attention-important-information-on-service-pack-2.aspx

Other great resource is Brian Smith's Blog:

http://blogs.msdn.com/brismith/archive/2009/05/20/project-server-2007-license-type-set-to-trial-after-loading-office-server-service-pack-2-sp2.aspx


 

CACTUSS and SALSSA Videos and Power Point Presentation

Hi everyone,

As I promised, I am uploading the videos showing how to install SQL Reporting Services 2005.
I hope you enjoyed the meeting. I am working to create additional material for having a next presentation soon, please keep checking my blog for any future events.
I enjoyed both groups tremendously and thank everyone that could attend.
The installation video is available here.
The configuration video is coming later on today.

If you want a copy of the Power Point presentation, please send me a request to Virgilio.Arciniegas@CatapultSystems.com

Look forward to see you soon in the next meeting.

Monday, May 18, 2009

SQL Reporting Services Presentation in San Antonio

I will be presenting at SALSSA on May 20th.
The title of the presentation is "Creating reports for Microsoft Office Project Server 2007 using SQL Server Reporting Services"
Please mark your calendars.
When: Wednesday May 20th, 6:00pm – 8:00pm
(Always the third Wednesday of the month)

Where: New Horizons
8200 IH 10 West Suite 500

Topic: Creating reports for Microsoft Office Project Server 2007 using Reporting
Services

Presenter:
Virgilio Arciniegas, MCSE - MCAD – MCDBA – MCITP
Senior Consultant
CATAPULT SYSTEMS INC.

Give away:
A one year free subscription to Learn Visual Studio .Net with over 500 online
videos and a one year free subscription to Learn SQL Server with over 20 hours
of videos.

More Info:
jim.steiner@rackspace.com
www.salssa.com

Pizza and soda will be provided. All are welcome.

SQL Reporting Services Presentation in Austin

I will be presenting at CACTUSS on May 19th.
The title of the presentation is "Creating reports for Microsoft Office Project Server 2007 using SQL Server Reporting Services"
Please mark your calendars.
Location:
Microsoft Technology Center
Stonebridge Plaza, Building One
9606 N. Mopac Expressway, Suite 200
Austin, TX 78759
When:
05/19/2005
5:30 pm

Wednesday, May 13, 2009

New requirements for SharePoint Server 2010

The new requirements for SharePoint Server 2010, hence Project Server 2010 have been disclosed on TechEd:


- SharePoint Server 2010 will be 64-bit only
- SharePoint Server 2010 will require 64-bit Windows Server 2008 or 64-bit Windows Server 2008 R2
- SharePoint Server 2010 will require 64-bit SQL Server 2008 or 64-bit SQL Server 2005
- SharePoint Server 2010 will require a standards based browser to author content (XHTML 1.0 compliant) so will not support IE 6.

You can read more about this at Brian Smith's blog.

Thursday, May 7, 2009

SynchronizeSingleUserMembershipInWss error workaround.

A problem that seems to be plaguing systems with a high number of users and/or large number of Project workspaces is the infamous “SynchronizeSingleUserMembershipInWss” error.

This error happens when two jobs try to synchronize permissions on workspace simultaneously, causing a deadlock on the SQL server:

Microsoft.Office.Project.Server - Windows SharePoint Services Database xxxx Unexpected query execution failure, error code 1205. Additional error information from SQL Server is included below. "Transaction (Process ID xxx) was deadlocked on lock resources with another process and has been chosen as the deadlock victim.


Office Project Server 2007 groups and Windows SharePoint Services are synchronized whenever a project is published or the administrator selects a project workspace site on the Project Workspaces page and then clicks Synchronize. This type of synchronization also happens when a change is made to a security setting, such as changes to users, groups or categories. If these changes affect a lot of users or project workspaces, the amount of processing can make the job run very slowly.
If more than one job gets queued simultaneously, the chances of getting a deadlock increase. All this has been very well documented by Alex Angas’ document posted in his blog.

Now, I have been experiencing this “bug” at a couple of different clients, and have come out with solutions through two different approaches. The first one involves using third party, not supported and sometimes sparsely documented, but extremely useful tools from CodePlex.

There are two of them that combined could help you avoid having to deal with this “bug” at all.

If you are modifying multiple resources, you may want to look into using the EPM bulk Edit tool; this one will allow you to go directly against the Project Server Reporting store to pull back the list of resources. I have not used this one myself, but it may help some administrators out there.

The second one is Project Server Workspace Synchronization tool; this is a welcome addition to everybody’s Project Server tool belt. ProjectWorkspaceSync.exe synchronizes workspaces with users, risks and issues. You can use this tool together with un-checking the workspace permissions box in Server Settings / Project Workspace Provisioning Settings as described by Alex in his post..

This will avoid constant synchronization of workspaces, and schedule ProjectWorkspaceSync.exe to be ran at a time when there is little CPU utilization. The tool is simple and easy to use, all you have to do is run it from a command line and add the url of your PWA as the first parameter:

ProjectWorkspaceSync.exe http://ProjectServerName/PWA

There is a final fix that applies only to smaller farms. If you have a server with one, or maybe even two CPUs, you should configure the maximum number of job processor threads for the Project Server Queue service to one.

I have had good success minimizing the amount of deadlocks by doing this. By having only one thread running at a time, there are way less chances of two jobs dead-locking a table when changes to the security system are being performed. Of course, if you have a multi-server, multi-CPU or even only a multi-core server, you might not want to do this as your queue performance would take a serious hit by doing so,

Then again, if the issues being caused by the “SynchronizeSingleUserMembershipInWss” are causing too many headaches, you might rather deal with a slower system than with a bug ridden one.

Wednesday, May 6, 2009

EPM Codeplex tools available for download

I always have problems finding the utilities posted on www.codeplex.com, so I decided to post a list of them with a brief description of what they do:

EPM Timesheet & Statusing Customization Samples
http://epmtsst.codeplex.com/
Project Description
Code samples that demonstrate how EPM (Project Server) 2007 Timesheet and Statusing functionalities could be customized using custom event handlers and Project Server Interface calls. These samples leverage the Timesheeting and Statusing API documented in the EPM 2007 SDK

EPM 2007 Test Data Population Tool
http://epmdatapop.codeplex.com/
Project Description
The EPM (Project Server) 2007 Test Data Population Tool enables you to load large amounts of EPM data: resources, projects, tasks, assignments into a Project Server 2007 database. You can then use this data to test loads and help your organization plan for your Project Server 2007 deployment. This tool is similar to the EPM 2003 Data Population utility but contains more features plus since the sources are provided you can customize it to fit your specific needs.
The EPM 2007 Test Data Population Tool is available as a WinForms application. It was written by EPM World Wide Center of Excellence (WW COE) to generate data needed to perform performance and scalability labs for large and complex EPM deployments.
The Test Data Population tool leverages the Project Server Interface (PSI) and/or WinProj (Project Professional).

EPMSync Utility
http://epmsync.codeplex.com/
Project Description
Microsoft Office Project Server 2007 (Project Server) and Microsoft Office Project Portfolio Server 2007 (Portfolio Server) integrate via the Portfolio Server gateway. Data is exchanged by running either an import or an export from Portfolio Server. But this exchange is done in bulk and typically batched. There is a desire to have a more granular experience in near real-time. The EPMSync Solution Accelerator is a proposed solution to this problem. The EPMSync Solution Accelerator synchronizes Portfolio Server attributes with Project Server custom fields (and a set of project level built-in fields). The solution is made up of a Windows Service and a number of supporting applications.

EPM Bulk Edit
http://epmbulkedit.codeplex.com/
Project Description
The purpose of this project is to allow the bulk edit of resource data. With large numbers of resources Resource Center can take a long time to load, primarily due to the security checks required. This tool goes directly against the Project Server Reporting store to pull back the list of resources and sorts them in a tree hierarchy by RBS.

Project Server 2007 VSTS Connector
http://pstfsconnector.codeplex.com/
Project Description
The Visual Studio Team System Project Server 2007 Connector is designed to integrate the project management capabilities of VSTS with Project Server 2007. It's been developed by the Visual Studio Team System Rangers in response to significant customer demand for a connector solution. Future versions of Team System will have native integration with Project Server, in the meantime this Connector solution is the best way to integrate the two Microsoft products. This solution builds on the previous PS2003 VSTS Connector, published on GotDotNet. This solution is intended to provide guidance, provided as source code that can be used "as is," extended, or modified by developers to use on enterprise development projects.

Project Server 2007 Timesheet Tied-Mode Service and Event Handler
http://autostatusservice.codeplex.com/
Project Description
This project is used with Microsoft Project Server 2007. It consists of an NT service, an event handler, a test app and installer. The event handler is fired when a tiemsheet is saved. The handler saves the timesheet info in a SQL table. The NT service (TSAutoStatus) polls the table for work from the event handler. It imports and submits the timesheet. This work is based upon EPM Timesheet tied-mode work done by Christophe Fiessinger (http://blogs.msdn.com/chrisfie).


Project Server 2007 Log File Report Tool
http://epmlogfilereport.codeplex.com/
Project Description
The Project Server 2007 Log File Report Tool enables the import and the reporting of log file generated by your EPM & SharePoint farm. The Log File Report Tool will import log files (in an SQL database) from all servers in your farm with the ability to filter them by date. Once the import is complete you can easily search for specific log file messages using the following filtering criteria: Area, Category, Level, Process, Server as well as date and created reports.


Project Server 2007 Timesheet data population tool
http://epmtsdatapop.codeplex.com/
Project Description

The Project Server 2007 Timesheet Data Population Tool enables you to simulate timesheet entries in your farm. This tool can help you perform scalability studies of your PS architecture and validate the sizing of an existing architecture (by measuring timesheet queue throughput for instance). This tool can also be used to test timesheet customization, for instance the Timesheet Tied-mode code sample on http://www.codeplex.com/EPMTSST. This powerful tool should not be run a production environment.


Project Server 2007 Queue Watch Tool

http://epmqueuewatch.codeplex.com/
Project Description
The Project Server 2007 Queue Watch Tool will help you monitor all queue activities for a specific Project Web Access (PWA) instance. This tool leverages the standard Project Server Interface publically documented web services to query and retrieve jobs in the Project Server queues, further you can configure the tool to filter the information retrieved by Message Types and Job types.
The Queue Watch Tool is available as a WinForms application. It was written by EPM World Wide Center of Excellence (WW COE) to efficiently monitor and troubleshoot queue activities for Project Server 2007 farms.

Project Server and InfoPath 2007
http://epminfopath.codeplex.com/
Project Description
This solution starter demonstrates how to leverage InfoPath and Forms Services as well Windows Workflow Foundation (WWF) hosted by SharePoint to create your own project initiation phase. The project initiation phase is different for every customers and organizations. It typically requires a set of custom attribute to be filled in a web based custom form and then it needs to go through a custom approval process workflow reviewed by all key decision makers. InfoPath Forms services combined with a SharePoint sequential workflow enables you to achieve this need.

Project Server Workspace Sync
http://projectworkspacesync.codeplex.com/
Project Description
This tool works with Project Server. It is a very simple tool that iterates over the list of Project Workspaces and triggers user sync for the members in the WSS site and triggers the sync for issue, risks and deliverables with the reporting database.



Project Reportcard
http://projectreportcard.codeplex.com/
Project Description

The Project Reportcard was developed as a tool to help Project Managers assess their projects based on organizational standards implemented by their PMO. Understanding what the organizational KPIs are going to look like before their project update is published, can help a project manager avoid non-compliance issues and prepare to address real project challenges. Most PMs find value in being able to see their Project Reportcard before it is visible to the PMO and management team.


Search Project Server data using SharePoint Server's BDC and Enterprise Search

http://epmbdc.codeplex.com/
Project Description
Search Project Server data using SharePoint Server's BDC and Enterprise Search


EPM Custom Fields Copy

http://customfieldcopy.codeplex.com/
Project Description
The principal function of this project is to provide Project Server 2007 custom fields and lookuptables migration from development environment to production environment, using some PSI methods.


Persisting SSAS OLAP Roles In Project Server 2007
http://epmssas.codeplex.com/
Project Description
During the standard Cube Building process in Project Server 2007, any manually added OLAP Roles in an OLAP database are deleted. The Cube building creates a default Role ProjectServerViewOlapDataRole that automatically adds all the Project Server users to this Role. This customization saves the configuration of the existing OLAP Roles (except for ProjectServerViewOlapDataRole) in a text file, before they are deleted but the standard cube building process, using the OnCubeBuilding event. The saved configuration of the OLAP Roles is then restored.


Project Server 2007 AD/Resource Sync Utility
http://ps2007adressync.codeplex.com/
Project Description
Demonstrates how to sync additional AD fields to resource custom fields for Project Server 2007.


Earned Value Add-In
http://earnedvalue.codeplex.com/
Project Description
The Earned Value Add-In has been developed as a tool to help project managers assess and visualize projects using earned value analysis.



Project Server 2007 Event Handler Admin Tool
http://ps2007eventhandler.codeplex.com/
Project Description
This project contains code demonstrating how to use the PSI to add and remove event handler associations for Project Server 2007. Instead of displaying all possible event handlers like the PWA admin screens, this tool uses reflection to show only the implemented handlers and allows the use to select the needed association. A much easier way to setup and maintain the event handlers. It also includes a sample event handler assembly that implements dummy methods for all events.


Project 2007 Test Framework
http://testframework.codeplex.com/
Project Description
Controller/client test framework can be used to test any assembly or .exe with and object model (any MS Office app).


Project Server 2007 Timesheet AutoStatus Plus
http://autostatusplus.codeplex.com/
Project Description
Project Server 2007 Timesheet AutoStatus Plus is a major rewrite of Christophe Fiessinger's EPM tied-mode work. It contains many enhancements such as: multiple instance support, farm support, and elimination of the Windows Service in favor of a SharePoint Timer Job.