Archive

Posts Tagged ‘PS2010’

#ProjectServer 2010 / 2007 high-level Audit Export via #PowerShell #MSProject #PS2010 #EPM

March 9, 2012 1 comment

Quite often there is a request for audit information from Project Server but unfortunately there is nothing available out of the box. This post covers a very high-level solution to this using the Project Server PSI and PowerShell.

Most actions in Project Server are processed via the Project Server queue, one simple way to get high-level audit information is to extract the queue information. The following PowerShell script uses the ReadAllJobStatusSimple method from the Queue System web service to export yesterdays processed jobs into a txt file with yesterday date appended to the filename:

$Today = Get-Date
$Yesterday = $Today.AddDays(-1).ToString("yyyy-MM-d")
$Filename = "C:\PSAuditExport\QueueExport-"
$filetype = ".txt"
$svcPSProxy = New-WebServiceProxy -uri "http://vm353/pwa/_vti_bin/PSI/QueueSystem.asmx?wsdl" -useDefaultCredential
$svcPSProxy.ReadAllJobStatusSimple("$Yesterday 00:00:01", "$Yesterday 23:59:59", "200", "0", "QueueCompletedTime" ,"Ascending").Status | Export-CSV $Filename$Yesterday$filetype -Delimiter "|"

For the full post please see:

http://pwmather.wordpress.com/2012/03/05/projectserver-2010-2007-high-level-audit-export-via-powershell-msproject-ps2010-epm/

Slipstream #Project Professional 2010 updates #MSProject #PS2010 #PS2007 #ProjectServer #MSOffice

August 2, 2011 Leave a comment

Following on from my previous post Customising the Project Professional install, this post looks at slipstreaming the Project Professional 2010 updates into the Project install media. This simplifies the install as there is just one install file to run. This post will look at slipstreaming Service Pack 1 and the June 2011 Cumulative update into the Project 2010 install media. The same process applies for Project Professional 2007 but use the 2007 updates. This process also applies for other Microsoft Office applications with the relevant updates.

Firstly download the following updates:

  • Project 2010 Service pack 1 – KB 2460052
  • Project 2010 June 2011 Cumulative Update – KB 2536590

For the purpose of this post, I have both of the updates on the root of the C:\ drive, if you have the updates in a different location please update the commands to reflect the file location.

Create an Updates folder on the root of the C:\ drive

Open Command Prompt, navigate to the root of the C:\ drive and type the following command to extract Project 2010 SP1 to the new Updates folder:

project2010sp1-kb2460052-x86-fullfile-en-us.exe /extract:C:\Updates

image

Press Enter and accept the license agreement in the pop up box, you will then see the files extracting dialog box

image

Once complete you will then see installation complete message:

image

Click OK then you will see the extracted files in the C:\Updates folder:

image

Copy the contents of the C:\Updates folder and paste the contents into the Updates folder in the install media.

image

Once the files have been copied to the Updates folder in the install media for Project Professional 2010, delete all of the files from the C:\Updates folder so that you are ready to extract the Project 2010 June 2011 CU.

Open Command Prompt again and navigate to the root of the C:\ drive then type the following command to extract the Project 2010 June 2011 Cumulative Update to the Updates folder:

project2010-kb2536590-fullfile-x86-glb.exe /extract:C:\Updates

image

Press Enter and accept the license agreement in the pop up box, you will then see the files extracting dialog box appear followed by the  installation complete message:

image

Click OK then you will see the extracted files in the C:\Updates folder:

image

Copy the contents of the C:\Updates folder and paste the contents into the Updates folder in the install media.

image

Now the updates have been extracted to the Updates folder in the installation media for Project Professional 2010, the updates will be applied when Project Professional 2010 is installed.

#ProjectServer 2010 PSI data to a text file using #PowerShell #PS2010 #Project

July 15, 2011 Leave a comment

I recently looked into accessing the Project Server PSI via PowerShell, luckily I came across this MSDN article that helped: http://msdn.microsoft.com/en-us/library/gg607685.aspx#pj14_GettingStartedTa_PowerShell. I needed to get the data into a pipe delimited text file without using compiled code (I’m not a developer!). I have done this before with T-SQL and SSIS but I wanted to try something different. For the purpose of this blog article of have edited the example shown in the MSDN article. The PowerShell script is below:

$pwaUrl = "http://vm353/pwa"

$svcProjectUrl = $pwaUrl + "/_vti_bin/PSI/Project.asmx?wsdl"

$c = Get-Credential

$svcProjectProxy = New-WebServiceProxy -uri $svcProjectUrl -credential $c

$svcProjectProxy.ReadProjectList().Project | Select Proj_name, Proj_UID, Proj_Type `
    | Export-CSV C:\projects.txt -Delimiter "|"

This script will export out a list of Project names, Proj UIDs and the Project Types to the C drive in a text file called projects.txt using the pipe delimiter. Screen shots below show the script and the output.

Script:

image

Output:

image

This is a very simple example but provides a no code solution to access Project Server data via the PSI.

Manually adding users to Project Workspace / Project Site in #ProjectServer #PS2010 #PS2007 #EPM

July 11, 2011 Leave a comment

This post will detail the errors seen when trying to add or edit items in a Project Site / Project Workspace in Project Server when adding users manually to a Project Site when they don’t have the correct permission in Project Server. For the purpose of this guide I will base this on Project Server 2010 but the same applies for Project Server 2007.

A bit on the background information to start with so that it makes it clear later on in the post why you see these errors. Project Server has its own permission model that works differently to the SharePoint permission model. Users are added to Project Server via the PWA > Server Settings > Manage Users interface and not the SharePoint Site Actions > Site Permissions interface. This is because users will be added to the PWA site based on their Project Server permissions, to an extent the same can be said for the Project Sites. Although Project Sites appear and function the same as a normal SharePoint site, certain lists / document libraries work very differently to standard SharePoint lists / libraries. The Project Documents library, Risks list and Issues list link back to Project Server so therefore when editing / adding items, firstly the SharePoint permissions will be checked, then the Project Server permissions will be checked. If the user doesn’t have the correct permissions in Project Server, then they will see errors, even if they have full control on the Project Site. Each error is shown below.

In this example I have added a user directly to the Project Site, the user has Full Control of this Project Site, also this user does not have any access to PWA.

Project Documents:

When adding a document to the Project Documents library the user will see this error pop up once they click OK to add the document:

image

When they click, “Go back to Site” they will see that document has still been uploaded:

image

The error is thrown when the Project Server permissions are validated. The error below can be seen in the SharePoint ULS logs:

System.Web.Services.Protocols.SoapException: ProjectServerError(s) LastError=GeneralSecurityAccessDenied Instructions: Pass this into PSClientError constructore to access all error information    at Microsoft.Office.Project.Server.WebServiceProxy.Security.CheckUserProjectPermission(Guid projectUid, Guid categoryPermissionUid)     at Microsoft.Office.Project.PWA.CustomFieldWebControls.CustomPWALinkField.OnLoad(EventArgs e) 

As you can see from the error above, it fails when checking the Custom PWA Link field as this is used to link the Document back to a task in the Project. As this user doesn’t have access to Project Server the error is thrown.

Risks and Issues lists:

Users will not be able to create an item on the risks or issues list if they do not have the correct permissions in Project Server, they will see the error below when clicking New Item:

image

The error below can be seen in the SharePoint ULS logs:

System.Web.Services.Protocols.SoapException: ProjectServerError(s) LastError=GeneralSecurityAccessDenied Instructions: Pass this into PSClientError constructore to access all error information    at Microsoft.Office.Project.Server.WebServiceProxy.Security.CheckUserProjectPermission(Guid projectUid, Guid categoryPermissionUid)     at Microsoft.Office.Project.PWA.CustomFieldWebControls.CustomPWALinkField.OnLoad(EventArgs e)    

As a minimum, users will need permission in Project Server to use these lists, I would also recommend that you let Project Server control the users permissions to the Project Sites. To do this check the box “…automatically synchronize Project Web App users with Project Sites when they are created…”, on the PWA > Server Settings > Project Site Provisioning Settings page.

image

This will synch the users to the Project Site when the Project is published, it will add users to the Project Sites based on their Project Server permissions and therefore less of an administration overhead. The permission the users get on the Project Site can be seen below:

  • Project managers who have published a project or who have Save Project permissions on a project are added to the Project Managers (Microsoft Project Server) site group.
  • Team members with assignments in a project are added to the Team members (Microsoft Project Server) site group.
  • Other Project Server users who have View Project Site permission on a project are added to the Readers (Microsoft Project Server) site group.

Hopefully that explains why you see these errors on the Project Sites.

SQL Alias vs DNS Alias for Project Server 2010 install #PS2010 #EPM #ProjectServer

July 6, 2011 2 comments

When installing Project Server 2010 it is always best practice to use an alias name for the SQL server as this makes life easier should you want to move SQL servers at a later date. This raises the question, SQL alias (using SQL cliconfg utility – pic below) or a network DNS Alias name (CNAME or HOST Record).

image

Pic1: SQL Server Client Network Utility (cliconfg)

For Project Server 2007 I would have said there weren’t really any advantages for one method over the other but for Project Server 2010 it’s different. For Project Server 2010 I would always recommend using a network DNS Alias, the reason being is to do with creating Excel Services reports.

When a user either creates a new or edits an existing report in Excel, their Excel client will connect directly to the data source (either Reporting database, custom database or OLAP cube). The ODC file will contain the connection details, SQL server name (alias name if Project Server was installed with an Alias for SQL), and database or cube name. If you installed Project Server 2010 with a SQL Alias on the Application Server, the user’s client machine will not know anything about the SQL Alias name unless you set up the same SQL Alias on all users machines who will create Excel Reports. This is because SQL Alias are only local to the machine that is it created on. Using a network DNS Alias to alias the SQL server will remove this issue.

Paul Mather

Categories: Work Tags: , ,

Some links to capacity planning tools and advice #in #SP2010 #PS2010 #ProjectServer #SharePoint #MSProject

 

Microsoft Guides:

Capacity management and sizing for SharePoint & Project Server 2010

http://technet.microsoft.com/en-us/library/cc261700(office.14).aspx

Software Boundaries and Limitations for SharePoint & Project Server 2010:

http://technet.microsoft.com/en-us/library/cc262787.aspx

Storage and SQL Server capacity planning and configuration (SharePoint & Project Server 2010):

http://technet.microsoft.com/en-us/library/cc298801(office.14).aspx

Further Resources & Links – SharePoint 2010:

http://technet.microsoft.com/en-us/sharepoint/ff601870

Further Resources & Links – Project Server 2010:

http://technet.microsoft.com/en-us/projectserver/ee263909

 

HP Tools

http://h20338.www2.hp.com/activeanswers/Secure/548230-0-0-0-121.html

 

Tihomir Ignatov Blog

Custom Excel spread sheet for sizing High Availability environments:

http://tihomirignatov.blogspot.com/2010/12/sharepoint-2010-capacity-planning-and.html

 

Choirul Amri Blog

Further storage considerations:

http://choirulamri.org/archives/579

Project Server 2010 Database Maintenance Plans #EPM #PS2010 #ProjectServer

June 30, 2011 Leave a comment

Just a quick post to mention that Microsoft have now released documentation on the recommended SQL server database maintenance plans for Project Server 2010. SQL Server database plans are very important in keeping Project Server performing reliably and smoothly. Please see the link below for more information:

http://technet.microsoft.com/en-us/library/cc973097.aspx

Project Server 2010 Grid issue

June 16, 2011 2 comments

I would just like to share my findings with the behaviour of the Project Server 2010 grids. I was recently investigating an issue raised on one of the Project Server forums and thought I would blog the issue and workaround in case anyone comes across this in future. The issue is that the header rows don’t load correctly if you zoom your Internet Explorer window below 99%. Each grid behaves differently, the Project Centre grid will add an extra header row on the left hand side of the grid as shown below so that the Gantt row no longer aligns with the correct Project detail rows:

image

On the Tasks page, an extra row is added on both sides of the divider, but the rows are not level as seen below, Process Status and Mon 13/06 are positioned mid rows:

image

The Resource Centre also adds an extra header row as seen below:

image

This behaviour can be resolved by increasing the Internet Explorer zoom level to 99% or higher.

Hopefully that will help resolve this annoyance for anyone that has come across this issue Smile

Categories: Work Tags: , ,