Microsoft SharePoint





Microsoft Sharepoint is a software platform and family of software products used for collaboration and web publishing combined. These capabilities include developing web sites, portals, intranets, content management systems, search engines, wikis, blogs, and other tools for business intelligence and collaboration. SharePoint has a Microsoft Office-like interface, and it is closely integrated with the Office suite.

Share tech news, updates, or what's on your mind.

Sign up to Post

Microsoft Office Picture Manager was included in Office 2003, 2007, and 2010, but not in 2013 or 2016. Now that Office 2019 is here, the bad news is that it is still missing, but the good news is that the same no-cost method that works to install it with Office 2013 and 2016 also works with 2019.
Do you want to use Dependent or Cascading dropdowns in SharePoint but don't want to buy a 3rd party tool? This script will allow you to do that. Can be used for State\Capital, Building\Room, or any other dependent relationship. Some development\debugging experience is probably helpful.

If you are a SharePoint user, you must know how tricky it is to perform SharePoint migration. A lot more practice, planning, evaluation, and then execution is needed to make sure that the data is safe and secure. You have to ensure that the data is not deleted or missed in the process of migration.

So, before you start the migration, let's have a look at the migration checklist that will help you ensure success in the whole process.

SharePoint Migration Checklist

When you go for manual SharePoint migration, you have to look after below-mentioned checklist:

  • Get ready with a detailed inventory of environment which includes all assets and customizations. 
  • Remove all old environments such as unwanted data, web items, and more.
  • Test all the components if everything is organized or if any issue is found, get it fixed.
  • Analyze new environment configurations and then configure the required settings at destination environment. It is like planning and plotting new home.
  • Cordial communication with users 
  • Now you can start the migration 
  • You need to put the system in read-only mode until the migration process gets completed.
  • After the migration is completed, you need to review and make sure that everything works perfectly. 

So, a lot of things to do but do not worry, as Microsoft has been making the things easier for you.

Well, you no longer need to face challenges of SharePoint migration as Microsoft has introduced the SharePoint Migration Tool that allows you to migrate your files from SharePoint on-premises document libraries and shift them to SharePoint. If you are an Office 365 user, then you can move to OneDrive and Office 365.

Microsoft has developed software for migration purposes, and you are allowed to migrate from a single file to multiple file sets. The tool is using the latest technology; therefore, bringing your information to the cloud. It also takes up intelligence, latest collaboration, and security features with Office 365.

The software is completely free, and the best part is, you aren't bound to be a global admin or a SharePoint admin in Office 365 to operate the software. To migrate data by using this tool, you need the write access to the destination SharePoint Online site collection.

  • Download the tool by visiting SharePoint Migration Tool Version 1 if you want the current release or you may also visit SharePoint Migration Tool V2 Beta release if you want to use the newly released V2 beta version.
  • Check the check box to agree to terms of service and privacy policy and click the Install button.
  • Click Yes to allow the installation.

Once the tool has been installed, use it.

While Microsoft has provided a solution make a note that you first need to learn the whole process to use it. If you do not have much time to go around the learning curve, then you can look for a systematically designed and developed SharePoint migration tool named Kernel Migrator for SharePoint. This tool does not need a steep learning curve as it has a systematic interface to guide you through the process. 

Kernel Migrator for SharePoint

SharePoint migration has been so easy with Kernel Migrator for SharePoint. With Kernel Migrator, we can even migrate files that have access permissions applied, so security is also ensured here.


  • SharePoint 2010 to SharePoint 2016 migration
  • File system Migration from Local and remote servers
  • File server to SharePoint migration
  • Migrate File System content to OneDrive, Google Drive, and SharePoint
  • Automate your migration with its scheduler 
  • It can migrate everything from file to folder or documents, views, workflows, and many more

Kernel Migrator also performs a Pre-Migration Analysis to uncover the problems we might face during real migration. In Pre-Migration Analysis it checks all values of the content like names and type of file. Kernel Migrator for SharePoint also lets you migrate your data in bulk be it a file system or SharePoint library. It can also transfer data concurrently in multiple sessions.

With Kernel Migrator, everything can be migrated from source to target server.

You can even automate your migration jobs with its inbuilt scheduler. Automating is a time-saving process, and it is beneficial for bulk migration. You can automate the migration process using CSV file, and you can also add some conditions like what to migrate, and you don't even need to assist. It's entirely hassle-free with no user assistance needed.

One day, as you try to send an email from your SharePoint account, an error message appears saying: “E-mail Message Cannot be Sent.” You may have outgoing email settings misconfigured.
Read this article to learn how to migrate data from SharePoint to SharePoint Online account. The entire process of SharePoint migration is described in detail.
I tried to use the SharePoint app to Import a Spreadsheet and import an Excel sheet into a Team site made in SharePoint 2016. But that just resulted in getting an error message 'Unknown Error'...

Expert Comment

by:Andreas Wennborg
Solved my problem. Thanks!
A while back, I ran into a situation where I was trying to use the calculated columns feature in SharePoint 2013 to do some simple math using values in two lists. Between certain data types not being accessible, and also with trying to make a one to many relationship happen, this project was born...
When using a search centre, I'm going to show you how to configure Sharepoint's search to only return results from the current site collection. Very useful when using Office 365 with multiple site collections.
A recent project that involved parsing Tableau Desktop and Server log files to extract reusable user queries for use in other systems. I chose to use PowerShell to gather the data, and SharePoint to present it...
In case you ever have to remove a faulty web part from a page , add the following to the end of the page url
This script can help you clean up your user profile database by comparing profiles to Active Directory users in a particular OU, and removing the profiles that don't match.
LVL 24

Expert Comment

by:Walter Curtis
Great information. Thanks! Recommended reading for all SharePoint people. This should be submitted as an article.

Have a good one...
These days socially coordinated efforts have turned into a critical requirement for enterprises.
I thought I'd write this up for anyone who has a request to create an anonymous whistle-blower-type submission form created using SharePoint 2010 (this would probably work the same for 2013). It's not 100% fool-proof but it's as close as you can get without Visual Studio which was a requirement.
Microsoft Office Picture Manager was included in Office 2003, 2007, and 2010, but not in Office 2013. Users had hopes that it would be in Office 2016/Office 365, but it is not. Fortunately, the same zero-cost technique that works to install it with Office 2013 also works with Office 2016/Office 365.

Expert Comment

Just wanted to thank you for the clear process for installing the Microsoft Office 2010 Microsoft Office Picture Manager.
Upgraded from office 2007 to 2016, a couple of days ago, and like many others found the picture manager missing, not so good when you are taking 1000's of pics.


LVL 69

Author Comment

by:Joe Winograd
You're welcome, Nick. Thanks for letting me know that the method worked for you after upgrading from Office 2007 to 2016. Btw, it also works for the new Office 2019, which I documented in a recent article here at Experts Exchange. Cheers, Joe
One of the most challenging things I've run into as a SharePoint consultant is creating a visual sitemap of a SharePoint environment.  Visual maps are so much more effective when showing clients what their environment looks like and how it can be optimized when performing a migration, security review, or consolidation effort.  My inspiration for publishing this article is hoping it will provide others in the same position an easy way to get a visual overview of their SharePoint environment.
1.png*NOTE: The yellow colored objects were manually set. I try to get only 1 row of pages in Visio. If any go beyond 1 row, I put them in a different Visio sheet and uniquely identify that node by changing the color.
Run this PowerShell script.
  • By default it uses the local SharePoint environment so it should be run on the SP server itself.
  • If you want to specify a specific WebApplication, you can modify the script. 
  • This was written for WSS 3.0 and MOSS 2007 to run using PowerShell 1.0 because that's what many companies are migrating from.  For 2010 and 2013 I'm aware there are optimizations that could be made to the script
The script is commented but is pretty straight forward.
#clear the PowerShell window

#Set or reset default properties
$ReportPath = "SPSiteReport.csv"

#Load the PowerShell commandlets for SharePoint using PowerShell 1.0 and MOSS 2007

Open in new window

This is just a little help to get you started with your first SharePoint site.
First things first, log into your Microsoft Office 365 Admin portal account at this link:

Use your username and password to access your Office 365 Administrative portal site.  If you have trouble logging in, use the forgot password option to reset.  Once successfully logged in, select the drop down menu under Admin and select SharePoint. The next page that loads will be to administer your Sharepoint site information. Once loaded, you will be managing your site collections as Microsoft refers.  Think of this as the master and root destination to manage everything.

If you already have a few URLs listed, like, then you are well on your way.
Want to create/check ownership of that domain created?  Select the domain in question and on there is a tab above that has a drop down entitled "Owners, " click it and choose Manage Administrators.  From here, you can check who is your primary site collection administrator as well as see who is your site collections administrator(s). In the event you want others to share the task of editing or managing the site collection with you, adding administrators will be the next task.

Simply do the following:
Select the URL you want to add administrator(s) to,…

Author Comment

I edited the article to include information on adding administrators for the sites not just primary site collection administrator.  Found this information helpful when a client had an admin leave a job and not give up some information on how to change and edit content.
I would like to follow up with more articles addressing issues they come across and how we solve them together as I feel it would be extremely helpful for the community and possibly attract more public views.
Microsoft Office Picture Manager is not included in Office 2013. This comes as a shock to users upgrading from earlier versions of Office, such as 2007 and 2010, where Picture Manager was included as a standard application. This article explains how to install it alongside Office 2013 — at no cost!

Expert Comment

by:Haleem Abueshah
thank you brother , you are the best :)
LVL 69

Author Comment

by:Joe Winograd
You're welcome, Haleem, and my thanks to you for joining Experts Exchange today, reading my article, and endorsing it. Regards, Joe
In SharePoint, you have the ability to set the number of versions to retain through the settings of the specific document libraries.  I was recently faced with a challenge where a company implemented a new global policy which mandated only 10 versions be retained.  The policy had be implemented by notice of the collection administrators after users were sufficiently notified of the change so I it had to be something that was run

Unfortunately, with the first library they updated, they noticed when you changed the version retention number, the libraries did not automatically remove the older versions.  Only when you performed a future update of the document, did the older versions get trimmed off.  

After a little research, I couldn't find anything online which offered the solution I was looking for.  In the end I wrote a simple but very fast, effective, and powerful PowerShell script.

if((Get-PSSnapin | Where {$_.Name -eq "Microsoft.SharePoint.PowerShell"}) -eq $null) {
    Add-PSSnapin Microsoft.SharePoint.PowerShell;
# 2 variables which need to be set
$siteCollection = "http://SharePoint/Sites/SiteCollection"

# get site collection
$site = new-object Microsoft.SharePoint.SPSite($siteCollection)

# loop through each subsite
foreach ($web in $site.AllWebs)
   write-host $web.url

   # loop through all lists in each subsite
   foreach ($list in $web.Lists)
      # examine if BaseType of list is a Document Library and if 

Open in new window

For some time, our SharePoint Site had been suffering from performance issues. The users of the site were always quick to point out any performance issues, and it finally came to a head.

I had tried all types of things from app pools ( "Recycling" page ), registry hacks, adding CLR's to the sharepoint server, modifying the local host file, adding additional RAM, adding web gardens, re-indexing the SQL tables, troubleshooting SQL, Ensure there is no Disk or Bandwidth issues between the DB and SharePoint. While all good things to do in principle, still no joy.

Then, onto further tests and checks for network speed, re-schedule crawling jobs to run outside of regular business hours, enabled object caching , ensured compression is enabled too!

Actually, compression is a good tip... For lower bandwidth users SharePoint sends a large amount of CSS information to users that compresses down to 1/10th it's size if compression is enabled, ensure internal DNS is working correctly.

TechNet has some good best practices here. It is very thorough and will help you narrow down the problem.

But, nothing I did provided the performance boost we were looking for.

What I eventually found to improve slow performance in SharePoint 2007 worked for us, and continued the search. I finally came across a post about "closed web parts".  These tips were found here.
SharePoint Administration and the PoSH

Background – I started in SharePoint as a contractor Support Engineer for the company that created the product, which after years as a UNIX guy, left me confused and intrigued.

After I relocated to a new state, I tried getting back into the UNIX/Linux world but with such tight competition, it was difficult.

So, I ended up selling a client on a small SharePoint farm to help organize and share their massive collection of stock photographs, while giving them the ability to assign metadata and sort by company and job number.  

This basically was the first time I really got into PowerShell with SharePoint since it required a set of scripts for automating site provisioning…. So lets start from the beginning….

PoSH = PowerShell.  I will repeatedly use this interchangeably


These are simply an object that contains something.  Variables can be identified by a preceding $, such as the “new” variable that follows:

We populate variables with the = sign.  The following instantiates (creates an instance of) a SharePoint web object (called an SPWeb object in the Server Object Model vernacular):
$newSPweb = get-spweb

Open in new window

You can name your variables pretty much whatever you like, though there are rules – google them if you are curious, since .Net object naming conventions are slightly out of the scope of this document.

The SharePoint Server Object Model
Sharepoint 2013 Server and Office Web Apps 2013 Server should work well together, so, what is with : 'Sorry there was a problem word cannot open..' and 'You do not have permission while opening PowerPoint App'. Well, that is what happened in one project, and thought I would share my findings.

The main purpose of this project was to make the office web apps like ‘word, powerpoint, Excel, one note’ to work with sharepoint 2013.  My test environment was working fine where I used ‘http’ to access my sharepoint and office web apps 2013.  For my test environment I followed ‘‘.  

The day I started to use the SSL with both sharepoint 2013 and Office web apps 2013, I could no longer see my web apps work.  I had followed all the "nice" articles:
But, everytime I opened the web app from sharepoint 2013 (documents) I got few Errors namely:
- Word ran into problem, can’t open the file, try opening the file with Microsoft word.
- Sorry there was a problem, word can’t open the file.
- While opening power point.  You do not have permissions….
I checked the logs from office web apps server under  ‘C:\ProgramData\Microsoft\OfficeWebApps\Data\Logs\ULS’ and found many logs of …
Are these one of the scenarios you faced in your environment?
You don't have space in default C drive and always wanted to move Inetpub to D drive.
By mistake someone configured few webservers on C drive and couple of them on D drive, in farm environment it caused issues while deploying the code base.
One of your environment is already configured in C drive long back and now you have a policy/scripts which will only work in D drive. You want to move to D drive and make this environment similar to your production/cob environment.

If you answered yes to any one of the above, then you are reading the right article. Lets follow the below steps to move Inetpub with sharepoint websites from C drive to D drive.

Step 1: Backup the current registry and Change all the registry settings as below.





Open in new window

Step 2: Goto C:\winnt\system32\Inetsrv. Make sure IIS is stopped. Take a backup of metabase.xml under Inetsrv.  Do find/replace from C:\Inetpub to D:\Inetpub for all references.

Now copy C:\inetpub directory to D drive and give the same permission for the directory similar to C:\inetpub.

Step 3: Login to Server which contains sharepoint databases. Run the below query against sharepoint configuration database. This will give all the webapplications which are created in C drive.

select * from objects where properties like '%C:\inetpub\wwwroot\wss\virtualdirectories\%'

Open in new window

Now we need to update all these references to D drive as we are moving from C drive.

Step 4: We need to run the below powershell script to update the configuration database.

Open in new window

LVL 15

Administrative Comment

by:Eric AKA Netminder

Congratulations; your article has now been published.

Page Editor
Getting the private properties of a user's profile was one of the problems that I faced at my work. This was a very serious problem and finally I came up with a solution that helped me getting the required objectives.

I am still looking forward if there are any other better way for this. Meanwhile I would just like to share what I have done and understood throughout.

Please suggest or comment where you think there are better ways, or any improvements.

My college and I had lot of discussion about getting those values displayed. Most of them suggested changing the visibility of the current property.  When you change the visibility of the property to all and access the user profile service through elevated privileges then it would work as desired.

But here is the catch we have the legal compliance with the client that didn't allowed us to change the visibility of the property to public from private. We tried to educate our client about the implementation and making the property visible to preserve the security compliance.

But they never agreed with our approach. So Finally, I came up with a solution which helps me getting the values as I desired.

I am putting the code here so that anyone interested can use it and may be make it more efficient.

 public void DisplayLoginDate()
            SPUser AdminUser = SPContext.Current.Site.SystemAccount;
            var superToken = AdminUser.UserToken;
            HttpContext con = 

Open in new window

How do you keep your CDs sorted to quickly find what your looking for? In alphabetical order, based on popularity, genre or just a nice organized chaos?  A search in Sharepoint 2010 usually lists the search results after the built-in relevancy order. According to Microsoft, it's based on BM25 . If it's true or what it really means is hard to know. Since we don't want to blindly rely on Microsoft, we have tested to create our own sort order. The advantage is that we know how it is supposed to act. We have chosen to weight very high if the search keyword is in the name of the document, and then weighted our properties based on what we feel is most relevant. We're evaluating this right now but so far we are pretty pleased.

It was hard to find any good description of how to go about building custom order of relevance, but I hope the following description will still be pretty accurate:

In SharePoint 2007 there was a nice tool for weight our search results according to your properties. The tool is available here:

In 2010, you have to fix this yourself. What you do is creating an XML with instructions on how the search should be weighted. With the help of the XML you then create a custom ranking model that is added to Sharepoint as possible choices. One can then choose whether to use any of the Sharepoint default ranking models or our own.

How do you do that? Well, here is a template on how the xml should look like. It looks like …
LVL 15

Administrative Comment

by:Eric AKA Netminder

Your article has been published. Thanks again for your submission.

Page Editor

Author Comment

My developers created a sandbox code and uploaded it to a site collections under  site Actions--Site settings--Galleries--Solutions  for which the url is "/_catalogs/solutions/Forms/AllItems.aspx".

Once uploaded, they were trying to "Activate" the solution by highlighting the solution and then clicking "Activate" on the ribbon but they were getting below error message.

The site collection containing this sandboxed solution has exceeded its daily resource usage quota.

Troubleshoot issues with Microsoft SharePoint Foundation.

Correlation ID: 1364ec53-0c27-426a-b298-164267001df7

Date and Time: 7/31/2012 12:58:38 PM

Sandbox Error

In order to troubleshoot and fix the problem, below are the steps which was tried by me on the sharepoint environment:


I Checked the site quota showing for sandbox solution at site Actions--Site settings--Galleries--Solutions, it was showing the message as:

Your resource quota is 0 server resources. Solutions can consume resources and may be temporarily disabled if your resource usage exceeds your quota.

Sandbox storage Resource Allocation1

I uploaded the same solution on a test site, newly created in SP2010 and tried to activate it but got the same error

I checked the site resource quota on the server and found following information:
Limit maximum usage per day to:   0 points
Send warning e-mail when usage per day reaches:  0 points

I checked the settings for other sites in the farm but they all has same settings


Microsoft SharePoint





Microsoft Sharepoint is a software platform and family of software products used for collaboration and web publishing combined. These capabilities include developing web sites, portals, intranets, content management systems, search engines, wikis, blogs, and other tools for business intelligence and collaboration. SharePoint has a Microsoft Office-like interface, and it is closely integrated with the Office suite.