Interesting Exploits in Office 365 and SharePoint

Pre-Processing Content for Migrating to SharePoint 2010

I have recently been working with a number of customers to establish information governance in their SharePoint 2010 environments.  The question always comes up is “how do we get content off the network shares into the SharePoint environment?”

There are a number of commercial tools that will analyze, cleanup and migrate network share content to SharePoint.  These tools come from vendors such as StoredIQ, Active Navigation, EMC Kazeon and Metalogix.

If you are going to be migrating file shares to SharePoint, regardless of the tool being used, there is a basic process that I think you should be taking. This process is broad, but could help you get started thinking about your environment. You can see the basic steps below.

You may look at that process and be thinking that it doesn’t really say anything, nor does it really help you.

As I said, there are many tools out on the market today to help in this endeavor.  These tools can help you discover all the files you are looking to migrate; they can also help you filter out files by date, specific strings, or other information that you may not want to migrate to SharePoint.

However! There are a couple tools that you can use right now that can help. They are PowerShell and Microsoft Excel! Yes, PowerShell and Excel!

Take the example of a network file share you want to migrate into SharePoint. The share is N:\team1. In the process above, the first step is to discover what files are in the file share, how old they are, what types there are etc. Of course, you could go through and manually look at them one by one. Or, you could ask the person responsible for the file share to do that.  Or you could use PowerShell to iterate through and output the results to a CSV file. Simply by running this command:

Get-Childitem –recurse \\Ndriveserver\team1 |Export-CSV c:\export.csv

This process will create a CSV file that can be opened with Excel as you can see below.

With the power of excel sorting and filtering you can scroll through and really look at a ton of data about the files. Such as Extension, Last Access Time, Last Write Time etc.

This could be a great help; however, it could also be too much. Say you only want to see all the files with exe, MSI, and MP3 extensions? You could use the same command but use the Include parameter.

Get-Childitem –recurse \\Ndriveserver\team1 -include *.exe, *.MSI, *.MP3 |Export-CSV C:\export.csv

Or, if you want to narrow down your list by excluding files you don’t care about like DOC, XLS, and PPT since these are probably more natural files to migrate.

Get-Childitem –recurse \\Ndriveserver\team1 -exclude *.doc, *.xls, *.ppt |Export-CSV C:\export.csv

At this point, congratulate yourself, you have discovery, now you can run these PowerShell commands and use Excel to sort and filter.

Now, let’s go to the next, Cleanse.  We want to remove what is often termed ROT (Redundant, Obsolete and Trash or Trivial) files. Once again there are many products that make this part of the migration or import process.

However, you can do some cleaning with PowerShell as well. When you come up with a list of files you want to get rid of such as all the MSI files in the \\Ndriveserver\team1\Marketing directory, you can use the Remove-Item to get rid of them.

Remove-item \\Ndriveserver\team -recurse1\Marketing\*.pptx

You could also do something a little more fun.

get-childitem \\Ndriveserver\team1\Marketing -include *.MSI -recurse | foreach ($_) {remove-item $_.fullname}

However remember that you want to test your process for jumping in with both feet. You can use a parameter on the PowerShell command to test before you actually remove.

get-childitem \\Ndriveserver\team1\Marketing -include *.MSI -recurse | foreach ($_) {remove-item $_.fullname -whatif}

The –Whatif command will output what the command would have done, but not do it.

Like the shot below if I was to delete all the PPTX files

Running the command with the –Whatif parameter will help you make sure you are aware of exactly what the command would delete.

So now we can identify file types, and that may be useful in the case of log files or obscure application output files; however that typically is not all the criteria that you would practically use. What if you want to enforce a policy of removing OLD files? For example, what if you wanted to remove anything that has not been modified in the past year? With the capabilities of PowerShell you can do that!

Get-Childitem N:\Marketing -recurse |Where-Object {$_.LastWriteTime.Date -le (Get-Date).Date.AddDays(-365)}|foreach {remove-item $_.fullname }

Finally, you do have another option that can take advantage of that CSV file you are creating. Once you create that export file (CSV) you can delete all the entries of files you wish to keep, thus leaving in all the ones you want to delete. Then use the Import-csv PowerShell command and use that as the input to the remove-item command as follows:

Import-CSV c:\export.csv | foreach {remove-item $_.fullname }

The result is any file listed in that CSV goes away. This is one where you definitely want to be careful and ensure that you are only listing out files you really want to get rid of!  Remember the WhatIf!

Hopefully, I’ve given you some insights how to Discover and Cleanse your network file shares in preparation of migrating them to your SharePoint environment!


SharePoint 2010 Resources – Getting Started

I often get questions about finding information on SharePoint 2010, the best places to learn and the “hows” and “whys”.  It seems that many people will type in a single word or phrase into their favorite search engine…look at the first page and throw up their hands saying they can’t find anything.

It is the unfortunate state of our world with information overload and the attention spans of fleas.  I also find that many people seem to assume that every post/site or page on the web is absolutely factual and they don’t know how to determine the validity of the information they are ready.

With this commentary on society out of the way, I figured i would post some “getting started” links and resources for those of you wondering how to get started.

General SharePoint Information 

Main Microsoft Site (running on SharePoint 2010) –

Capability Overview –

Edition Comparison –


Advanced IT Pro Training –
IT Professional Overview – A video that shows you some of the great new features in SharePoint 2010
Experiencing the Microsoft SharePoint 2010 User Interface – A video that provides a look at the new, improved user interface in SharePoint 2010

Getting Started Screencast Series – A series of entry-level screencasts by Microsoft SharePoint MVPs that lets you take advantage of an 11-module e-learning course

Training and Certification –


Full TechNet Documentation –

The Total Economic Impact of SharePoint 2010 –


Download trial –

VM demonstration images –



SharePoint Team Blog –

SharePoint 2010 Forums

Downloadable Books

Getting started with SharePoint Server 2010 –

Planning guide for SharePoint Server 2010 –

Upgrading to SharePoint Server 2010 –

Deployment guide for SharePoint Server 2010 –

Operations guide for SharePoint Server 2010 –

Technical reference for SharePoint Server 2010 –


Diagrams and white papers

Technical diagrams (SharePoint Server 2010) –

Evaluation guide for SharePoint Server 2010 (white paper)

Developer Resources

SharePoint Development Center –

Setting Up the Development Environment for SharePoint 2010 on Windows Vista, Windows 7, and Windows Server 2008

What’s New in SharePoint Foundation 2010

What’s New in SharePoint Server 2010

Get Started Developing on SharePoint 2010

Getting Started with Development for SharePoint Foundation


Starting Point –

Excellent Free Developer Training –

Channel 9 Training –

SharePoint Developer Training Kit Download – 


SharePoint 2010 SDK Documentation

SharePoint 2010 Technical Articles – Technical articles are 15-20 pages in length and provide detailed technical information and code examples

SharePoint 2010 Book Excerpts –  Book excerpts are online excerpts of published books.

SharePoint 2010 Visual  How-Tos  – Visual how-to articles are 10-15 pages in length and combine some of the best elements of blogs, video, and technical articles by providing a brief overview, a code sample, and a how-to video.

SharePoint 2010 Quick Notes – Quick Notes are 2-4 page tasks in a single scenario.

Search connector development –

Code Samples

SharePoint Downloads and Samples
SharePoint Code Gallery Projects
SharePoint CodePlex Projects

Inline Editing – Reducing the Edit Properties Pain

Microsoft offers some improvements to the list editing experience in SharePoint 2010.

What is it?

Inline editing enables you to edit individual lines in a list without having to open the edit item window or switch to the datasheet view.  Inline editing is done directly on the list page.  It is actually component of the view displaying the list, and isn’t on by default. 

How to turn it on

Enabling inline editing is a simple process.  To enable it for your current view, click the Modify View button in the Ribbon, scroll down to the section called inline editing, expand this section, and then check the box to Allow Inline Editing.  Click OK to save the change to the view, and you’ve just enabled inline editing. 

Using it

To use inline editing, click the small Edit icon that now appears to the left of each line in the list as you hover the mouse cursor over it.  The fields in each column for the line item will become editable.   

Make your changes, then click the Save icon where the edit icon was.  There is also a Cancel icon to close inline editing if you want to discard your changes.  

Inline editing will also work for different types of columns including Managed Metadata with type-ahead capabilities. 

What is the point?

Some might question why Microsoft added this functionality.  Well, for those of you that have been working with SharePoint in the user community would realize that editing properties isn’t something the user’s think as an intuitive process.  Clicking through a number of screens or dialogs isn’t something they are going to do on a regular basis.  Inline editing provides the user with the ability to quickly edit properties from the same screen without having to use the data sheet view (if they know how to switch views in the first place).

Microsoft Certification – SharePoint 2010 Administration

I have been working over the past three weeks on my SharePoint 2010 Administration skills and knowledge. All of this effort was in preparation for taking the MCIT 70-668 exam this week.

Well, I took my exam yesterday, and was very surprised at the experience. I showed up at the testing center about 30 minutes before my appointment. Of course, the doors were locked as no one had shown up yet.

A few minutes later, the doors were opened and I sat down. After showing my ID, and having the test admin boot and login to the PC, I was finally on my way. To my amazement, the test isn’t anything like I expected.

I read through the questions, carefully evaluating the choices for the answers. I purposefully didn’t wear my watch so I could focus on the test instead of the time. Not once did I look at the clock, or worry about the time.

Moving though the test, I started to appreciate the amount of review that I did. But I did realize that I was breezing through the questions faster than I thought reasonable, so I slowed my pace, reviewing each question carefully.

Moving through the test, and reaching the end…I planned no review of my answers. I’ve been burned by second-guessing my answers in the past. Finally finishing all of the questions, I went through the survey and completed my test.

I walked out of the testing room and was handed my results…perfect score!

I have been working with SharePoint 2010 for almost 18 months, and that experience, along with some prep-work enabled my successful completion of my first certification.  I would also recommend CertificationTutorials as a source for practice and study guides. Yes, it costs money, but this resource was invaluable in my preparation.

I strongly advise those of you out there contemplating getting your certifications to do it. While it may be daunting, difficult to schedule, and overall a pain, it sure makes you feel good when it is over.

Now on to the SharePoint Configuration exam, 70-667, to complete my MCITP for SharePoint 2010.