The #Office365 Upgrade Experience
So the magic email finally arrived recently. Microsoft have finished upgrading my Office 365 (2010 version) to the new 2013 (Wave 15) version (both the E1 and P1 plans that I have).
Now as some of you know already, I have created a new Office 365 tenant for my partner who has recently entered the world of HR consulting. It is just a small endeavour at the moment whilst we sort out other personal to do’s like weddings etc…
Anyway, we needed a good email system, Lync is useful and a site for document collaboration. Office 365 fits the bill perfectly.
I also created a very basic public website and sorted out all the DNS entries etc…
Anyway, enough of the background stuff – lets talk about the upgrade went?
Well Exchange & Lync is all done for you behind the scenes. This worked perfectly for us and the new Outlook Web App interface is great (very similar to Outlook.com) and now includes Lync presence information with the ability to control your online status.
Lync is of course changed in look and feel and the user interface is certainly a lot nicer than Lync 2010 and Office Communicator 2007 R2.
It is nice to see this all working together. More on this in a minute!
Now for the interesting bit – The SharePoint Online upgrade:
So logging into any of your site collections you will see the following message on the top of the site:
Clicking on Start now takes you to this…
And given that I have a pretty much blank sites at this point (a few document libraries here and there), I went straight for the upgrade.
Even after this warning, you still get the chance to stop the process:
In my case, for the main site collection, there seemed to be a warning around task lists, which presumably is not upgraded from the 2010 version, since they are all new in 2013 with great integration with Microsoft Project 2013.
Now after all that, go back to the root of the site collection and you are done!
A few things to note
This needs to be done on every site collection. By every site collection, they mean every one – including:
- Team Site
- My Site (each individual)
- My photo had to be re-uploaded but otherwise details stayed the same. The photo also took quite sometime to propogate to Lync and Exchange, however this is a huge improvement. One picture to fit them all!
- My Site Host
- Interesting this had to be upgraded separately to the My Site Content
- Although technically this makes sense, I know that some of the non-technical business using Office 365 won’t understand this.
- Search
- Upgraded without issue but left old search symbol in place.
- Interestingly, search box is no longer centred but the page layout could be updated as required.
That is about it, so nothing major to an experienced SharePoint and Office 365 techy like myself but I know that a number of my friends who use their Office 365 for their small business will be giving me a call when the time comes.
Anyway… lets start talking about some of the new unexpected features that come with the upgrade:
New Features
We now have new Mobile Apps
- Lync 2013
- Works as per Lync 2010 but contains the new style and options about video / voice over 3G connections etc…
- SharePoint Newsfeed
- A new mobile app that relies upon My Sites being used. Here are some screenshots…
And last but not least…Outlook Web Access
New look and feel but mostly the same but some new capabilities that caught my eye:
- Lync presence capability is built in
- Offline Access – which works a treat in IE and Chrome
That’s it for now, but expect more as I come across it!
#ProjectServer 2013 White Paper
This paper is written by Microsoft senior consultant, and it includes guidance and best practices for those who plan to implement Project Server 2013 in their organization.
It provides an analytic comparison of both the Project Online solution versus implementing a Project Server 2013 on-premises solution, and describes scenarios in which you would select one solution over the other.
The target audiences for this white paper are partners, consultants, decision makers, and technical personnel who need to understand what is required to successfully implement Project Server 2013 in their environment, whether it be an on-premises solution or an online solution with Office 365.
Good Luck.
via All about Enterprise Project Management (EPM) http://khurramjamshed.blogspot.com/2013/05/projectserver-2013-white-paper.html
|
The author of the blog has an extensive experience of working as an EPM Consultant. Currently he is located in Dubai, UAE and working for Microsoft partner organization as Project Server specialist. He has a thorough experience of providing Project Management technical/functional consultancy to all sort of organizations. He is a certified PMP, a Project Server MCITP, and also received a MS community contributor award 2011.
This article has been cross posted from khurramjamshed.blogspot.com/ (original article) |
SQL Server Reporting Services Reports error when large numbers of parameters are selected
You may encounter an exception when running certain SQL Server Reporting Services (SSRS) reports.
The exception message will generally say something along the lines of Operation is not valid due to the current state of the object.
You may encounter this either in reports with a large number of parameters, or in reports where the parameter counts are low but the parameters themselves are multiple choice and have a large number of items selected.
The cause of this is a security fix released by Microsoft under Security Bulletin MS11-100. The fix, among other things, limits the number of keys that ASP.NET applications can parse as part of a request; large numbers of keys could potentially allow a denial of service to occur.
Unfortunately the effect of this is that our large parameter set is blocked, causing the exception and presenting a nasty error to our end users.
Luckily there is a solution to this.
The trick is to add a section to your web.config inside the <appSettings /> section.
<appSettings> ... <add key="aspnet:MaxHttpCollectionKeys" value="5000" /> ... </appSettings>
The actual value used should reflect the number of keys you believe will be used, but 5000 is a reasonable starting point.
If you are using SSRS in native mode, the web.config file is located within the reporting services installation path, usually C:\Program Files\Microsoft SQL Server\MSSQL\Reporting Services\ReportServer.
If you are using SSRS in SharePoint integration mode, the modification needs to be made to the web.config of the application pool where you are running your reports. For this I would recommend that you create a solution that utilises the SPWebConfigModification class as part of a feature receiver, rather than making the changes directly. This will ensure that the change is made across your SharePoint farm simultaneously without the human error that could come from doing the change manually on multiple servers.
Note: In both cases, these modifications either require a restart of the reporting server or in the case of SharePoint a recycle of the Application Pool. This will result in short outages so you will want to schedule this as part of maintenance accordingly.
For more information I would recommend reading the relevant KB article.
via Chris on SharePoint http://spchris.com/2013/05/sql-server-reporting-services-reports-errors-when-large-numbers-of-parameters-are-selected-2/
|
SharePoint and Project Server Consultant
This article has been cross posted from spchris.com (original article) |
Managing path context in SharePoint
When working with SharePoint’s UI, it is often difficult to work out where in the URL structure you are.
You may for instance be working at the root of a site collection, but that itself may be several layers deep.
Take the following example.
You have a site collection for your company, but each team maintains its own site collection under the managed path (with wildcard inclusion) /teams.
Some of the team sites use a template that includes a master page that references an image gallery script. This gallery script has to load images out of a document library local to each team site.
The problem of course is determining the URL to the code and images, when they could be located at /teams/team-a/gallery images or /teams/team-b/gallery images
Of course in a server-side solution this is simple, SharePoint provides the handy shortcut of ~sitecollection. This works both directly in master pages:
<SharePoint:ScriptLink runat="server" Name="~sitecollection/Style Library/js/galleryscript.js" Language="javascript"/>
Or using a custom action within a SharePoint solution, sandboxed or otherwise:
<?xml version="1.0" encoding="utf-8"?> <Elements xmlns="http://schemas.microsoft.com/sharepoint/"> <CustomAction ScriptSrc="~sitecollection/Style Library/js/galleryscript.js" Location="ScriptLink" /> </Elements>
But how do we achieve the same within the front end itself?
Introducing _spPageContextInfo
The _spPageContextInfo object is a really wonderful little thing. It is added by the SPWebPartManager control, which is included in all of the out of the box master pages (including default.master and system.master) and I really strongly recommend is added to any custom master pages you create.
Because of it’s essentially omnipresent nature it makes using _spPageContextInfo a really simple matter of, well, using it.
It is a small object, containing only a few properties of the page, the site and the site collection it is part of. Here is a JSON representation of what it contains.
{
alertsEnabled: true,
allowSilverlightPrompt: "True",
currentLanguage: 1033,
pageItemId: 1,
pageListId: "{6300d68a-4512-49f0-85b9-d3671855e31c}",
siteServerRelativeUrl: "/teams/team-a",
userId: 1,
webLanguage: 1033,
webServerRelativeUrl: "/teams/team-a/subsite",
webUIVersion: 4
}
Here’s a brief explanation of the properties in it.
alertsEnabled
This one is simple, is SharePoint’s alerts email notification service enabled for the current web application. This maps to the SPWebApplication.AlertsEnabled property.
allowSilverlightPrompt
Will the user be prompted to download Silverlight if they do not already have it when they attempt to use Silverlight based UI elements. This maps to the SPWebApplication.AllowSilverlightPrompt property.
currentLanguage
This is the current locale being used by the user, if they have not changed it to a custom one, then this maps to the SPWeb.Language property.
pageItemId
This is the ID of the current page’s item within the document library containing it.
pageListId
This is the GUID of the document library containing the current page.
siteServerRelativeUrl
This is the path of the site collection, relative to the web application.
userId
This is the user’s ID for the current site collection.
webLanguage
This is the default language for the current web. This maps to the SPWeb.Language property.
webServerRelativeUrl
This is the path of the web, relative to the web application.
webUIVersion
This is the UI version of the current web, determining if the master page and components in use and available is compatible with SharePoint 2007 (3), SharePoint 2010 (4) or SharePoint 2013 (5)
Note: The actual properties available varies depending upon where you happen to be. For instance the pageItemId and pageListId properties do not exist within system pages, as they do not have IDs and do not live within document libraries.
That’s pretty cool, but how do we use it?
Well, as they are properties we can pretty much use them however we wish. Let’s take a look at a simple way of referencing files in our gallery images document library, for example referencing a logo to use on the homepage.
(function() {
// The path to the image.
var imagePath = '/gallery%20images/logo.jpg';
// The relative URL is usually without the trailing /
// however if we are on the root site collection then it
// is simply / on its own and must be handled.
if (_spPageContextInfo.siteServerRelativeUrl == '/') {
imagePath = imagePath.substring(1);
}
// Build our full image path.
imagePath = _spPageContextInfo.siteServerRelativeUrl + imagePath;
// Finally set our image's source to the images path
$('img#logoImage').attr('src', imagePath);
})();
Of course this is a rather contrived example, and you should probably be using the client side object model (CSOM) to pull items from a document library. However I hope it demonstrates how the object can be used.
A common use I use this for is is actually with the CSOM.
var ctx = new SP.ClientContext(_spPageContextInfo.webServerRelativeUrl);
I do it this way because I have had issues with concurrency when using the get_Current() method in SP.ClientContext when there is other code in use on pages that I do not have control over.
via Chris on SharePoint http://spchris.com/2013/05/managing-path-context-in-sharepoint/
|
SharePoint and Project Server Consultant
This article has been cross posted from spchris.com (original article) |
#ProjectServer 2013 Administrator Manual #PS2013 #Project #SP2013
The guide also includes the SharePoint Central Administration PWA settings.
The guide can be downloaded from here.
Happy downloading.
via All about Enterprise Project Management (EPM) http://khurramjamshed.blogspot.com/2013/05/projectserver-2013-administrator-manual.html
|
The author of the blog has an extensive experience of working as an EPM Consultant. Currently he is located in Dubai, UAE and working for Microsoft partner organization as Project Server specialist. He has a thorough experience of providing Project Management technical/functional consultancy to all sort of organizations. He is a certified PMP, a Project Server MCITP, and also received a MS community contributor award 2011.
This article has been cross posted from khurramjamshed.blogspot.com/ (original article) |
#SharePoint 2010 error setting PerformancePoint unattended account #SP2010 #PS2010 #HP
|
I am a Project Server and SharePoint consultant but my main focus currently is around Project Server.
I have been working with Project Server for nearly five years since 2007 for a Microsoft Gold Certified Partner in the UK, I have also been awared with the Microsoft Community Contributor Award 2011. I am also a certified Prince2 Practitioner. This article has been cross posted from pwmather.wordpress.com (original article) |
A short blog post to highlight a workaround to a recent issue we experienced on a Project Server 2010 deployment. When trying to set the PerformancePoint unattended account we received an error:
The account credentials for the Unattended Service Account are not valid. Verify the domain user name and password are correct and that the account is located in a Trusted Domain
We experienced the same error via the UI in Central Admin and via PowerShell. The fix / workaround was quite simple in the end. This particular client had the HP ProtectTools enabled, this blocks any passwords being sent as plain text. We added an <SE>\ tag as shown below in the password string:
Set-SPPerformancePointSecureDataValues -ServiceApplication "PerformancePoint Service Application" -DataSourceUnattendedServiceAccount (New-Object System.Management.Automation.PSCredential "domain\user", (ConvertTo-SecureString "<SE>\password" -AsPlainText -Force))
With this tag in place the HP ProtectTools ignored that fact that the password was plain text and the unattended account was set successfully. This workaround only works when setting the unattended account using the example PowerShell script above. It doesn’t work in the UI.
Always look at the simple things first
Recently I was asked to take a look at SPD workflow on development system that was not sending emails.
Normally this works fine as it uses the standard emailing features of the SharePoint Platform, as long as the outgoing email settings are configured.
In this instance the outgoing email settings were correct for the environment in question, so a quick test I created an alert on a list, normally this would send an email straight away saying that an alert has been created but no email arrived.
If you have access to the server console the first test is to make sure you can ping your SMTP relay server, this will be the server you have referenced in your outgoing SMTP server configured in Central Administration.
If you can ping the server try using TelNet to connect on Port 25, if telnet times out and fails to connect then you probably have a firewall issue.
In this instance we were getting:
Which was an indication that the development server was not allowed to relay email via the SMTP server, as soon as we had the development server added to the allowed SMTP relay list we could connect via TelNet and send alerts and emails from SharePoint and development continued.
So always check the simple things 1st !


