Mittwoch, 5. Dezember 2012

Office 365 - upgrade to SharePoint 2013 Search Problems

Actually the first O365 tenants are updated to SharePoint 2013 backend components in the background. This results in some technical difficulties. One is the Search. The SharePoint 2013 Search Engine based on a new / upgraded Search Backend system. The FAST Engine had a big impact in all the new functions and features. More details can be found here: .

If your tenant is updated to the new backend system but your frontend is still SharePoint 2010 you have some loosing. The point is that a lot of keyword calls not working anymore. For example: Path:"Posts" AND -Path:"personal" (meaning: show all which contains “Posts” but not contains “personal” in result it shows blogposts but not posts from blogs hosted in MySites). The reason is that the Managed Property “Path” no longer exists in the new Search Engine. It is replaced by ”SPSiteUrl” and so on…. Another point is, that the new Keyword Query Language and also FAST Query Language which is now supported in SharePoint 2013 cannot full functionally be used with the SharePoint 2010 UI, even the search backend is upgraded. This is because the SharePoint 2010 Webpart are not able to handle search term like author:starts-with("Nicki"). So this is a poor interims situation at the moment. But the complete update is availible soon ;-) and then we can use the full functionality of the new Search Engine.

Donnerstag, 1. November 2012

Changing a picture in SharePoint Site with JavaScript

During a project we got the request to change a special picture in SharePoint. Because it is an Office 365 / SharePoint Online environment and the picture is located under https://%YourSite%/_layouts/images/.... We cannot change the picture with SharePoint Designer or directly in the file system.
So we have to find another way. Because of the picture it is always the same so we can easily use a script looping through the side. As described in the article “Generate a SharePointlist with all user information in Office 365 environment” we have a list containing all users in the SharePoint Online system. The request was to change the default dummy picture for users without a personal picture in the profile.
And here is the script:

<script type="text/javascript">
function swapImages(oldimg,newimg)
var n = document.getElementsByTagName("img");
for ( i=0;i<n.length;i++) if (n[i].src==oldimg) n[i].src=newimg;
// call at end of html-page or when onload-event fired


Special thanks to Oliver ( ) helping us to write the script!
Simply place the script into the HTML code of a ContentEditor Webpart

Generate a SharePoint list with all user information in Office 365 environment

Involved component:
·         On-premise Active Directory

·         PowerShell

·         Exchange Online

·         SharePoint Online

The given request during a project was to generate an overview list containing all user information in the environment.
The collaboration portal is running on Office 365.  All given user information such as, department, manager, location etc. are based on an import via PowerShell into the Office 365 System.
Because of the synchronization between Exchange Online, and the associated SharePoint Online System the SharePoint User Profile Service also gets that information.  In addition users are able to fill in personalized information like phone number, mobile number, office room number etc. They can do this via SharePoint MySite or they can use Outlook to complete their profiles.
So as a result, we get mostly completed and actual user profiles.
Using that URL call, you get a list of all users in your SharePoint System:
Based on this we now can create and refine the information and build an employees information Site in SharePoint Online:
In the following basic SharePoint function we can modify the view or bring in some new columns:
First of all I recommend to create a new view and let the system default views as they are.
I created a view called DEMO. You can see that this view will be placed under a different URL:
This is a character of this special system view…
Now I do some additional configuration.
At first I only want to see real users using that filter:
It works, because objects like “NT AUTHORITY\authenticated users” do not have a forename.
In the next step I add a calculated column which I will use for group and filter functionality:
As a result my list will look like this:
Here are some examples what you can do now based on that:
Using the calculated column “_name” you can realize a filter by initial:
Or another example is a filter based on subsidiary map
As you can see all that also works on the new SharePoint 2013 version.
During the project we got the additional request to change the default dummy picture for users without a personal picture. In an on-premise installation this is no problem. You locate and change the picture. Default it is at: “http://%YourSite%/_layouts/images/person.gif”. In Office 365 / SharePoint Online this location is not accessible.
See our solution under: Changing picture inSharePoint Site with JavaScript 

Mittwoch, 17. Oktober 2012

Mittwoch, 10. Oktober 2012

Collaboration Days 2013 - Sponsoring Optionen

Nach erfolgreicher Durchführung in den vergangenen zwei Jahren wird die Schweizer SharePoint
Konferenz Collaboration Days im kommenden Jahr erneut durchgeführt. Die Collaboration Days 2013 finden am Mittwoch, 6. und Donnerstag, 7. März 2013 im World Trade Center Zürich statt (

Hier die Details für Sponsoren und Austeller:

Montag, 10. September 2012

POP3, IMAP and SMTP settings for your Office 365 Mailbox

To find out the POP3, IMAP and SMTP server and setting associated with your mailbox follow these steps:

-          Open your Outlook Web Access and navigate to the “Options” menu in the right corner.

Open “All options”:
-          Chose “Settings for POP, IMAP, and SMTP access...
-          The popup windows shows your setting:

Freitag, 7. September 2012

Continuous crawls in Office 365 / SharePoint 2013 Online

As a feedback of my post about „Search Driven Applications with Office 365 / SharePoint Online - Part I“ I received the question if continuous crawls are supported in SharePoint 2013 Online too.

Thanks to Martina Grom for that link with a first answer:

Bad news is that is not offical at the moment and taht there's no official info anywhere to be found yet.

For me it´s stilll interstong to see how they would manged that at all. Continous cralwling is configured per Content Source and the Content Sources are not configurable in SharePoint 2013 online at least not in the actuall BETA....

Sonntag, 26. August 2012

Search Driven Applications with Office 365 / SharePoint Online - Part III

Part III: Search Driven Application in vNext of Office 365 / SharePoint Online and some thoughts of working with external data in Office 365 / SharePoint Online and the opportunities in the context of Search Driven Solutions.

In Part I and Part II we talked about what we can do in the context of Search Driven Solution with Office 365 / SharePoint Online (all this also worked with the new version). Now let’s have a look what further options we have with the new version of Office 365 and SharePoint 2013.

Firs lets have a look of what is new in Office 365 in the context of Search. The absolute highlight is that we now have a Search Admin Site like in an on-premise installation. I wrote about this is my common blog post series about news in SharePoint 2013 Search PART I

Let me centralize the main benefit for Search Driven Applications:

-          We can now pool and merge crawled and managed properties like in an on-premise installation. :


-          We can create own managed properties with all the functions like Sortable, Queryable etc…

-          We can use the new feature Query Builder

-          Context can be focused to logged on user without writing code

Using the keyword filter: “Name of the user who runs the query

In SharePoint 2013 Search became a really centralized and powerful role. Many of this new features and Out-Of-The-Box stuff is also available in SharePoint 2013 Online. For example “All my documents” based on an Out-Of-The-Box Webpart.:

In the Office 365 / SharePoint Online BETA a basic Webpart category which is part of the on-premise BETA is missing. It’s the Search-Driven Content category:

Downloading this Webparts from an on-premise installation and upload those to SharePoint Online would work. But poorly the Webpart do not show any content. As you see in the screenshot the “search result preview” tab shows content covering the given properties. But saving Webpart itself keep empty after saving the settings. So I hope this function is coming up in the final version of SharePoint 2013 online (maybe the reason is that “continuous crawling” feature is not active for Content Sources in SharePoint Online…).

Let’s come now to External Data in SharePoint 2013 Online and what we can do in the context of Search and Search Driven Solutions.

External Data Data is not new in Office 365 / SharePoint Online. The good news is that we can now also use oData. For details have a look here: LINK

If have integrates this in my demo system:
Bad news are:
-          We cannot configure Content Sources in SharePoint Online Search Administration. So we cannot crawl this data. And therefore we cannot use them in Search / Search Driven Context.
All we can do is using the Tagging feature and the search for stuff which is tagged with a specific tag. Or we can use the External List as a lookup source. The lookup filed is the of cause part of the search index in the associated list field.
So hope that some features of the on-premise featureset will became part of the final version of new Office 365 / SharePoint Online.

Donnerstag, 2. August 2012

What’s new within SharePoint 2013 Search? – PART III

PART III: A look in the deep what’s behind the new Search functions like “Search Dictionaries”, “Query Builder”, “Query Client Type” etc.
(Concern that this is BETA stuff. Features and functions can be changed or shift until the final release!)

New / Updates Ranking Model functions:
Custom ranking models are managed through PowerShell using XML files as it was in SharePoint 2010. Ranking Model for a specific query can be selected at query time by setting the RankingModelId of the query; otherwise default is used.
The PowerShell cmdlet is: New-SPEnterpriseSearchRankingModel

For more details about the underlying XML schema have a look here: LINK

So this example shows all Ranking Models in my demo system. And you can see which default is:

You can use the configured Ranking Models for example in the Query Builder (details see below in the Query Builder Section):

Query Spelling Correction:
This function is hosted in the Termstore. We can now easy configure “Exclusion” and “Inclusion” Terms. Another big benefit is, that Terms configured in the “Inclusion” Termset also used for “Did you mean” functionality.
So this example showing in the Pic would result in searching for ”EI” and didn’t get any results the system will suggest “Did you mean ExpertsInside

Query Rules:
Query Rules are new in SharePoint 2013. It is a feature that gives us the option to tailor results in a very flexible way. Query Rules are set on Site Collection Level.

A Query Rule has 3 main parts:
-          Query Conditions
o   The conditions defined when and in which context the rule became active:
-          Query Action
o   In this section we can defined what happened if the rules matched. This is just a little bit similar to what we know as “Best Bets” or “Visual Best Bets” from SharePoint 2010, but much more powerful.
-          Publishing Options
o   These settings control when the rule can fire

Query Client Types:
Query Client Types are also new in SharePoint 2013 Search. At this time poorly not really more details are available on this new function. The idea behind is using the client the query is send from to do specific throttling etc: “Applications are prioritized by tiers. Top tier has the highest priority. When resource limit is reached, query throttling becomes ON, and search system will process the queries from top tier to bottom tier.”
Query Builder:
Query Builder is a tool in SharePoint 2013 Search which we can find in different places. For example the Query Builder is available in the “Result Sources” section (Result Sources are in the next Part IV – Admin Stuff) and also in the “Query Rule” section etc. Query Builder is available when we have the option to manipulate search query ore refine it. The Query Builder has 3 tabs:
-          Basic:
o   The Query is built here. You can use Keyword Query Language to add keyword filters and property filters. Keyword filters query the full-text search index.
This call for example will only show content where the “Author” is the logged on user.

-          Sorting:
o   Here we can manage how the results are sorted. We can use a Ranking Model ore use a Managed Property for that job

-          Test:
o   Test tab in the Query Builder is to evaluate the query that you built. You can experiment there to see whether changing variables would have the effect that you want on the query.

Stay tuned for the next parts in this series:
Part IV: Admin Stuff
Part V: Frontend Stuff

Dienstag, 24. Juli 2012

What’s new within SharePoint 2013 Search? – PART II

PART II: What happens with FAST in SharePoint 2013

(Concern that this is BETA stuff. Features and functions can be changed or shift until the final release!)

Fact 1: In SharPoint 2013 the two Search Engines “SharePoint Search” and “FAST Search Server for SharePoint” was combined in one Search Engine.
Fact 2: FAST as a standalone product is still available and supported. Details see here:

Future of FAST ESP: See this statement from Rob Va from July 16:

Mostly all the features / functions that we know from FAST Search Central Admin sites  had been integrated in Enterprise Search in SharePoint 2013:
Let’s have a look at the feature and functions level:
Managed Properties:
The technique with crawled properties and managed properties was similar in SharePoint Enterprise Search and FAST Search Server for SharePoint. But with FAST we had additional configuration options:
The functions / fields: Name, Type and Mappings to Crawled Properties were the same in both SharePoint 2010 Search Engines.
The features Sort Property, Query Property, Refiner Property and Full-text Index Mapping moved into the new Managed Property configuration:
There are some more options in the new SharePoint 2013 Managed Property configuration, but this will be part of “Part IV: Admin Stuff”.

Crawled Properties:
Crawled Properties are the same in FAST, Enterprise Search, and SharePoint 2013 Search.

Managed Property Extraction:
This section was completely reworked. In FAST 2010 we have to work with some PowerShell calls like: Get-FASTSearchResource dictionaries\spellcheck\sk_spell_iseck_en.txt and dictionary files based on an XML structure to include new terms. In SharePoint 2013 this feature used the Managed Metadata / Termstore to handle the term / dictionaries for company individual property extraction:

You can see that the function for ignore list and spell checking also moved to the Termstore. In detail we will have a look at this in Part III.

FAST Service Application:
So in fact only one integrated Search Engine left we didn’t have to configure the different Shared Service Applications for FAST Contend and Fast Query as we have to in SharePoint 2010:

Query Language / FAST Query Language:
FAST brings his own Query Language which was just different / extended from the SharePoint Search Query Language. Some of its characteristics are now found into Search Query Language. For example the XRANK Operator:
In SharePoint Server 2010, the XRANK operator was available only with FAST Query language (FQL). The XRANK operator provides dynamic control of ranking.

SharePoint 2013 Search does not longer support SQL syntax. Search in SharePoint 2013 supports FQL syntax and KQL syntax for custom search solutions.
For more details about building Search Querys ins SharePoint 2013 Search have a look here:

FAST Stuff:
FAST stuff and FAST specific components like the “extended WebCrawler” or commanding tools like indexerinfo.exe are no longer part of SharePoint, at least not part of the SharePoint 2013 Preview version.
Developing custom connectors / crawler is now standardized.

Content Processing:
In FAST for SharePoint 2010 we had the Advanced Content Processing Pipeline architecture:

In SharePoint 2013 this is part of the common Search Architecture.

Next parts in this series:
Part III: A look in the deep what’s behind the new Search functions like “Search Dictionaries”, “Query Builder”, “Query Client Type”
Part IV: Admin Stuff
Part V: Frontend Stuff