You want your team to work on Saturday? Serious?! OK. Here’s how.

Work typically isn’t difficult to describe. We all do it, and sometimes wish we had less of it. In Microsoft Project, on the other hand, defining work can get a little tricky, especially when setting up the working calendar for the team in your project schedule. Usually, Project considers working time to be Monday through Friday, from 8 a.m. to 5 p.m ., with weekends off. So far so good, especially the part about the weekends. But you can change this to any time you want. If you want everyone to work Saturdays or all evenings, so be it. The following graphic will show you how to use the Change Working Time dialog box to change the project work calendar. In the example graphic below, Saturday is made into a four-hour working day with, from 1 p.m. to 5 p.m . That’s it. And sorry about the weekend part.

Use of the Duration1-Duration10 Gantt Chart Styles in PWA

I was recently asked about how to display a custom Gantt bar in one of the PWA Gantt chart views. At first I did not see a way to do it but then tested and verified that the Duration1 –Duration10 bar styles available in several of the bar sets in PWA can be used. I had some some reading on the Internet that implied that they were non-functional but I found that they draw using the StartX-FinishX date sets for tasks. So Duration1 is drawn from Start1-Finish1, Duration9 between Start9 and Finish9. Server Settings | Gantt Chart Formats: Then this project draws like this:

New "From the Trenches" white paper by Chris Vandersluis: "Top-down or bottom-up?"

We’re happy to announce the publish of a new white paper by Chris Vanderluis of HMS Software for the “From the Trenches” column in the Project Server 2010 TechCenter and the Project Server 2007 TechCenter . This latest white paper – “Top-down or bottom-up” – discusses project management, portfolio management, and task management, and it compares the top-down and bottom-up management practices related to them. Here is some bio information about the author: Chris Vandersluis is the president and founder of Montreal, Canada–based HMS Software , a Microsoft Certified Partner. He has an economics degree from McGill University and over 24 years experience in the automation of project control systems. He is a long-standing member of the Project Management Institute (PMI) and helped found the Montreal, Toronto, and Quebec chapters of the Microsoft Project Users Group (MPUG). Publications for which Chris has written include Fortune , Heavy Construction News , Computing Canada magazine, and PMI’s PMNetwork , and he is a regular columnist for Project Times . He teaches Advanced Project Management at McGill University and often speaks at project management association functions across North America and around the world. HMS Software is the publisher of the TimeControl project-oriented timekeeping system and has been a Microsoft Project Solution Partner since 1995. Chris Vandersluis can be contacted by e-mail at: chris.vandersluis@hms.ca . If you would like to read more Enterprise Project Management related articles by Chris Vandersluis, see his blog: EPM Guidance .

PowerShell Updates to Retrieve Distribution Groups, Update User Addresses, and More

Written by Divya Gunasekaran, Microsoft Online Services PM The latest release of the Microsoft Online Services Migration Tools includes two new cmdlets and an update to Get-MSOnlineUser . The new Get-MSOnlineDistributionGroup cmdlet allows admins to retrieve properties of distribution groups through PowerShell, and a user’s UPN, primary SMTP address, and SIP address can now be managed using the Update-MSOnlineUserAddresses cmdlet. 1.  Get-MSOnlineUser : This cmdlet retrieves the properties of a specified user in Microsoft Online Services.  The following property has been added to the output of this cmdlet: RulesQuota : Returns the limit in KB for the size of rules for the user’s mailbox. This property will return 0 for users that do not have mailboxes. 2. Get-MSOnlineDistributionGroup : This cmdlet retrieves the properties of a specified distribution group.  The following properties are output: Identity : Primary SMTP address of the group. DisplayName : The display name of the group. Type: The group type. AcceptMessagesOnlyFrom: Returns a string array containing the users and contacts allowed to send email to the retrieved distribution group.  An empty array indicates the distribution group accepts messages from all senders. Members : Returns a string array containing the members of the distribution group. 3.  Update-MSOnlineUserAddresses : This cmdlet can be used to update a user’s primary SMTP address and SIP address to match their existing UPN or a new UPN.  For mailbox users, if an existing SMTP address matches the UPN, Update-MSOnlineUserAddresses will set it as the primary SMTP. Otherwise, the cmdlet will add a new SMTP address as the primary email address. Note that this cmdlet does not remove or replace a user’s existing SMTP addresses. For users with an existing SIP address, Update-MSOnlineUserAddresses will update the SIP address to match the UPN. Let’s run through a few scenarios to get started. I want to ensure my users’ UPN, primary SMTP address, and SIP address are aligned.  After running the Get-MSOnlineUser cmdlet, I notice that the addresses for karthik@fineartschool.net are not the same as his UPN. C:PS> Get-MSOnlineUser -Identity karthik@fineartschool.net – Credential $companyAdminCred                                                                                                                                                                     Identity                : karthik@fineartschool.net                                                                                                                                                   ProxyAddresses     : {SMTP:k@fineartschool.net,                         smtp:karthik@fineartschool.net, sip:ka@fineartschool.net}      To update the primary SMTP address and SIP address to equal my user’s current UPN, karthik@fineartschool.net, I run the following command: C:PS> Update-MSOnlineUserAddresses -Identity                      karthik@fineartschool.net -Credential $companyAdminCred  When I check the user’s address list again, I see that the SIP address was updated and the SMTP address that matched the UPN is now set as the primary SMTP address. No SMTP addresses were removed or replaced. Identity                : karthik@fineartschool.net                               ProxyAddresses     : {smtp:k@fineartschool.net,                      SMTP:karthik@fineartschool.net, sip:karthik@fineartschool.net} My user has recently undergone a name change from Chris to Christine. Her UPN, SMTP address, and SIP address are Chris@fineartschool.net, and I need to update them accordingly. Identity                : Chris@fineartschool.net                                                                          ProxyAddresses     : {SMTP:Chris@fineartschool.net, sip:Chris@fineartschool.net} I can do this from the command line, but I can also import information from a csv file since the Update-MSOnlineUserAddresses cmdlet accepts some input from the pipeline by property name.  I save the below csv file as “NameChange.csv” and run the following command:      Identity NewUpn Chris@fineartschool.net Christine@fineartschool.net C:PS> Import-Csv –path C:NameChange.csv | Update-         MSOnlineUserAddresses -Credential $companyAdminCred  My user’s UPN, primary SMTP address, and SIP address are now updated to Christine@fineartschool.net. The old SMTP address Chris@fineartschool.net is still an alternate email address because the Update-MSOnlineUserAddresses cmdlet does not remove or replace SMTP addresses.  That means Christine will still receive mail sent to Chris@fineartschool.net, which is useful because her contacts might not know she has a new primary email address. Identity                : Christine@fineartschool.net                                   ProxyAddresses     : {SMTP:Christine@fineartschool.net,               smtp:Chris@fineartschool.net, sip:Christine@fineartschool.net  To use the updated cmdlets, admins must download the latest 32-bit or 64-bit version of the Microsoft Online Services Migration Tools.

Using the updated ChangeXML utility for Statusing

The Statusing methods in the Project Server Interface (PSI) in Microsoft Project Server 2010 enable one user to read, submit, and update assignment and task status for another user, without resorting to impersonation. In the Project Server 2007 SDK, the How to: Generate ChangeXML for Statusing Updates article shows how to generate the changeXml parameter for the UpdateStatus method, validate the XML, and use the ReadStatus and SubmitStatus methods. The Project 2007 SDK download includes the complete Visual Studio 2005 solution for the ChangeXML utility. However, the ChangeXML utility could only update status for the current user. The ChangeXML utility  is now updated for Project Server 2010, in the attached ChangeXMLUtility.zip file. With it, you can generate the changeXml parameter and update status for the current user or for another user. To update status for another user, the utility uses the ReadStatusForResource and UpdateStatusForResource methods. In addition, the utility checks whether the current user has the global StatusBrokerPermission security permission, adds the ResID attribute to the changeXml parameter, and validates the XML against the updated ChangeList.xsd schema in Project Server 2010. For more information about the ChangeList.xsd schema, see Introduction to the ChangeList Schema and Statusing ChangeXML . Note : The ChangeXML utility is designed for use only on a test installation of Project Server 2010, as an example of a programming utility for statusing. It should not be used on a production installation. The updated ChangeXML utility also has several other changes. The previous version uses the ASMX interface, which was the only choice available for Project Server 2007. In the updated version, you can choose to proghrammatically initialize the WCF interface of the PSI by entering the Project Web App URL, or by using the WCF endpoint values in the app.config file. In the following screenshot, the login is automatic if you use the app.config value.         Note : To use the app.config file, change the URL to the value for your PWA instance, for each PSI service endpoint. In the main window, after you log on Project Server, choose Build Change XML .         You can choose to update the status of available assignments for the current user, or – if you have the StatusBrokerPermission – you can choose another user and update assignments for that user. In the following screenshot, the update is for another user. The Items available for update list shows the Project name : Task name : User name values for each item. You can choose to update assignment values or task values for that assignment. The Generate a Change dialog box shows different controls in the Update section, depending on what kind of update you choose. For example, if you choose to update an assignment custom field, you can choose the custom field and the lookup table value, if the custom field uses a lookup table.         When you choose Update XML , the tool generates the changeXml parameter value, as follows:         Following is the changeXml parameter value in the case shown, for updating the Health assignment custom field. Note that the XML value includes the ResID attribute for the Assn element. Late You can clear the Run Update check box to just validate the changeXml parameter. For example, manually change one of the elements, attributes, or values in the XML, and see if it still validates. Or, you can check Run Update to validate and run the change. When the change is completed, try opening the project in Project Professional. If you are the project manager, you are prompted to review the status change in PWA. If you accept the change in PWA, to see the change, open the project in Project Professional. For example, if you changed the Health assignment custom field, go the the Task Usage view, and then add the Health field to the view.         After you save and publish the project, you can also see the change in the Reporting database. For example, run the following query in SQL Server Management Studio for the RDB: SELECT TOP 1000 [AssignmentUID] , [ResourceUID] , [Health_T] FROM [ProjectServer_Reporting].[dbo].[MSP_EpmAssignment_UserView] Find the correct assignment and resource GUIDs in the Results pane: The ChangeXML utility is useful for creating and testing values of the changeXml parameter for the UpdateStatus method, where you can create and test changes for the current user and for other Project Server 2010 users.  —Jim Corbin

Microsoft Kicks off Project Conference 2012!

Special message from Project & Visio Director Chris Crane This morning, Kirk Koenigsbauer – Corporate Vice President of the Office Division Product Management Group – kicked off the Microsoft Project Conference 2012 in sunny Phoenix, Arizona with an opening keynote address.  This year’s event celebrates the success of Project 2010 and showcases how it continues to evolve in order to meet the changing collaboration and project management needs within organizations of all sizes.  At the heart of that evolution is Microsoft’s focus on an integrated platform wherein customers are better able to respond to industry trends (i.e. devices and the cloud) and have an opportunity to realize the benefits of Project Portfolio Management (PPM) beyond IT and into all areas of a business including Marketing, Finance and Resource & Development (as seen in Revlon’s example below). Since its launch in May of 2010, Microsoft Project has quietly climbed to the top of the Project Portfolio Management market with over 20 million users of the Microsoft Project desktop to date. That’s one license sold every 20 seconds!  And, analysts agree with Gartner giving its highest rating to Microsoft in the latest Marketscope for Project and Portfolio Management . But, you don’t have to take our word for it! Eighty-two of the Fortune 100 are Microsoft Project customers and Revlon – a global cosmetics company headquartered in New York City – is one such company.  With an excess of daily meetings, the company found that the productivity of its employees plummeted and, with 1.3 billion dollars’ worth of sales in 2010 alone, it stood to lose a lot due to inefficiencies.  The Revlon IT department was looking for a way to optimize its project planning, reduce the number of meetings and bridge the gap between developers and project managers by improving the transparency of project data.  Enter Microsoft Project Server 2010.  Revlon implemented the technology in addition to the Microsoft Visual Studio Team Foundation Server 2010 and Project Server Integration Feature Pack .  Bringing both into the organization produced a wealth of improved efficiencies including up to 30% less time in meetings, productivity gains of 2-5% and improved risk management through better data.  Perhaps Jacqueline Shannon – senior planner in program management for Revlon – said it best, “I think Microsoft Project Server 2010 is an incredible tool because it promotes accountability, timeliness and structure allowing us to focus more on our deliverables rather than reporting on our deliverables.”   For more information regarding Revlon’s use of Project 2010 check out this video: https://aka.ms/zdniuj ! Another reason customers, like Revlon, value Project 2010 is for its improved integration and continuous innovation with Microsoft technologies like Exchange and SharePoint providing people with a familiar user interface and connected platform that they can use to manage all their work from the simplest to the most complex projects. Experienced and/or accidental Project managers can plan and collaborate with teams to share schedule details quickly with Project Professional 2010 and SharePoint Online (Office 365) task list synchronization. Individuals throughout the organization can view the task list and quickly see task status and update progress in SharePoint Online—from virtually anywhere! Please refer to this Project blog post for additional information. SharePoint integration allows professional Project Managers to collaborate with a wider group of colleagues, important participants and “accidental project managers”, who track their tasks and progress through SharePoint. SharePoint 2010 integration brings powerful Business Intelligence capabilities via Excel Services , PerformancePoint Services and SQL Reporting Services , so all Project 2010 users can create enhanced dashboards that give you greater transparency across your many portfolios within the organization. Please refer to this website for additional information. Improved integrations with other proven Microsoft technologies such as Microsoft Exchange means that users can manage and respond to project tasks effectively through Outlook —on their PC, over the mobile phone, or using Outlook Web Access . With the release of the Microsoft Visual Studio Team Foundation Server 2010 and Project Server Integration Feature Pack , project managers and software development teams can use the tools that they prefer, work at the level of precision that supports their needs, share information transparently, and each use the methodology they prefer (agile or formal). Please check out the Microsoft Project 2010 Customer Success page for more case studies. For more information about the Project Conference and a transcript of today’s keynote, please visit the Project Conference virtual press room . Enjoy the conference! Sincerely, Chris Crane Director, Project and Visio Product Marketing at Microsoft Corp.

Microsoft Project Server 2010 and ERP Integration

A common ask from customers nowadays is to integrate their Project Portfolio Management (PPM) solution with their Enterprise Resource Planning (ERP) solutions to achieve end to end visibility into portfolios, projects, resources and finance. Microsoft Project Server 2010 offers an extensive and powerful platform that can easily be integrated with leading ERP, including out of the box integration with Microsoft Dynamics AX and SL. A number of PPM partners have built solutions that connects Project Server with other line of business applications, please check Microsoft Enterprise Project Management Solutions for the latest list. In addition we have released the following white paper recently: Microsoft Project Server 2010 integration with SAP . This white paper, written by Advisicon , outlines the benefits and scenarios for integrating Microsoft Project Server 2010 with SAP’s ERP; in particular integrating the actual time reporting from SAP with the time-phased planning and resource forecasting power of Project Server 2010. This white paper illustrates one of the many options & approach to integrate Project Server with SAP. I also wrote this post on the same topic: Integrating Project Server 2010 with Line Of Business Applications . Last but not least and to reinforce the points made above, please find below a list of sessions at our upcoming Microsoft Project Conference 2012 that will discuss PPM and ERP integration, don’t forget to register if you have not done so yet! Achieve Complete Project Cost Planning & Insight: Integrating Microsoft Project Server 2010 with financial systems like Dynamics AX Bean Counting in the Cloud: Merging hosted EPM and internal GL data to optimize financial reporting Integrating Data from External LOB Systems (SAP, ClickSoft, etc.) for Strategic Resource Planning & Forecasting Rapid Implementation of the Microsoft PPM solution and SAP-integration in a global Chemical company The comprehensive use of Microsoft EPM, SharePoint and TPG PSLink within the mining industry The Integration of Project Management and Project Accounting with Dynamics SL Project Server and Dynamics AX – Completing the Lifecycle from Project Estimation to Revenue Recognition

Manage Client Access Settings through PowerShell

Written by Divya Gunasekaran, Microsoft Online Services PM Admins can now manage client access settings for their Microsoft Online users through PowerShell. Updates to Get-MSOnlineUser and the new Set-MSOnlineCASMailbox cmdlet allow admins to specify whether Exchange ActiveSync or Outlook Web App (OWA) is enabled for users. 1.  Get-MSOnlineUser : This cmdlet can be used to retrieve the properties of a specified user in Microsoft Online Services. Three properties have been added to the output of this cmdlet: ActiveSyncEnabled : Returns a Boolean indicating whether ActiveSync is enabled for a user’s mailbox. This property will return False for users that do not have mailboxes. OWAEnabled : Returns a Boolean indicating whether Outlook Web App is enabled for a user’s mailbox. This property will return False for users that do not have mailboxes. POPEnabled : Returns a Boolean indicating whether POP3 access is enabled for a user’s mailbox. This property will return False for users that do not have mailboxes. 2. Set-MSOnlineCASMailbox: This cmdlet can be used to enable or disable ActiveSync or Outlook Web App for a user’s mailbox.  Admins can specify from the command line whether to enable Exchange ActiveSync or OWA for a user mailbox. For example, the following command can be run to disable ActiveSync and enable Outlook Web App for the user alexei@tailspintoys.com: C:PS> Set-MSOnlineCASMailbox -Identity alexei@tailspintoys.com -Credential $companyAdminCred -ActiveSyncEnabled False -OWAEnabled True The Set-MSOnlineCASMailbox also accepts some input from the pipeline by property name.  One use for this functionality is to run the cmdlet on information imported from a csv file. For example, let’s say we want to enable both ActiveSync and OWA for the user alexei@tailspintoys.com and to enable ActiveSync and disable OWA for the user pavel@tailspintoys.com. The admin would create a csv file (named “CASmailboxes.csv” in this example) and run the following command: Identity ActiveSyncEnabled OWAEnabled alexei@tailspintoys.com True True pavel@tailspintoys.com True False C:PS> Import-Csv –path C:CASmailboxes.csv | Set-MSOnlineCASMailbox -Credential $companyAdminCred Please note that the Set-MSOnlineCASMailbox cmdlet does not modify or remove the ActiveSync policy currently assigned to a user’s mailbox. If an ActiveSync policy has been assigned to a user mailbox and ActiveSync is then disabled, the same policy will be applied after ActiveSync has been re-enabled for that user. If no ActiveSync policy has been assigned to the user mailbox, the default policy will be applied when ActiveSync is enabled. To use the updated cmdlets, admins must download the latest 32-bit or 64-bit version of the Microsoft Online Services Migration Tools. 

Add a Buffer Task using a Manually Scheduled Task

Now we all know that the finish date a project is automatically calculated by Project and might not necessarily be the due date. If the finish date is before the due date, you have some buffer, if the finish date is after the due date, you have a problem. Let’s assume you are in the first case – it is important to track this buffer and I’ve found manually scheduled tasks are useful for this since they won’t automatically move but they’ll warn you when there is a problem. Let’s say you have this project (this will work for all projects, just make sure you have a milestone representing the project finish that all task chains are connected to): My project finish date is January 9th but I actually don’t have to be done until the 13th so I have a few days of buffer. To represent that I add a new manually scheduled task with the Project Finish milestone as the predecessor and the end date as 1/13: You can now easily tell that you have 4 days of buffer. Now say that task 4 takes 3 days instead of 1 day. Your schedule will look like this: Notice how the buffer tasks didn’t move but you get a warning that there is an issue. Now go in and for the Buffer task, right-click and select Respect Links. This will push the task out. Now you need to decrement the duration until the finish date is once again the 13th: So you can now tell from task 4 slipping that you only have 2 days left of buffer. I find that manually having to update your buffer task helps to make you more aware of when you are using up buffer. You can use this same technique on individual task chains, etc., if you want. Additionally, if you want to make sure you remember the deadline, you can set a deadline on the buffer task to make sure you always adjust the buffer back to it. Learn more about this and other scheduling tips by attending the Microsoft Project Conference 2012 in Phoenix, AZ March 19th-22nd.