Notes from Collaboration Summit 2018 conference

Few days ago I was on European Collaboration Summit 2018 conference – one of the biggest Office365&SharePoint-oriented conferences in Europe.
I’ve learned a lot, talked with multiple MVP’s and speakers about O365/SP issues, changes and future approaches.
I want to share my notes with you:
What is coming for Microsoft Productivity area (SharePoint, Office 365)
Microsoft Teams:
– Library UX in Microsoft Teams will have the same UX as library in SharePoint UX.
– Microsoft Teams will have new tab type: SharePoint Page 🙂
– news aggregated from SP News Pages may be fetched into channel via new connector dedicated for sp news page.
– SharePoint will get an Image Webpart which displays image and also suggest tags based on objects recognition in image(!).
– New Modern SP News pages – aggregate news from site hubs. Allow for creating templates, targeting (via details panel that based on metadata). News can be marked as “read later” (such news will appear in dedicated panel in user profile) and also marked as official (which will increase reach to recipients). Page promotion can be also achieved via email (right from the page) or added to navigation for better visibility. If page was not a news page it can be easily converted to such. Worth to note that you can also utilize Microsoft Flow for workflows activities (accepting, reviewing, publishing, extended notification etc). In terms of future releases Microsoft is working on network/click analytics as well as automatic translations
– SharePoint pages support content targeting so people will see content more personlized
– “Share with” expirience will be constant on every device. Moreover all related policies will be better visible for sharing person.
– you can embed Microsoft Streams video as a webpart in SP page. Why to do that? Because Microsoft Streams supports searching inside video (!)
– Site Collection structure will be replaced by Site Hubs. Hub sites aggregate news/activity content + add same global navigation. Hub concept bases on site label tagging (rather than structural db-related site collections that makes maintenance not that easy) – you can easily move site from one hub to another.
SharePoint search:
– In new SharePoint Classic Search UX will be replaced by Modern Search. It will be also open for customization using spfx.
– OneDrive will monitor suspicious behaviours (i.e. caused by maleware) and allows you for ease restoration of all changed files
Yammer is now more integrated:
– Yammer groups connected to O365 groups (had a shared calendar, SP site)
– announcements are push msgs on mobile
– well cooperate with Streams
– will be integrated with SP search (soon)
– Future: all files in yammer will be stored in SP, content sharing improvements, further development over employee engagement and social features.
– PnP is going powerful more and more. One of the best Frameworks from Microsoft (or not that Microsoft in fact ;)). Billions of usage per month. Absolutely amazing. If you do not know it that better do – immediately!!!111oneone -> 

 – You probably may heard of Site Scripts: JSON files, which define an ordered list of actions to execute while creating the SharePoint site. The actions can include any combination of below:

  • Create a new list
  • Apply theme
  • Set site logo
  • Add navigation
  • Trigger Microsoft flow

Site design may contains 1 or more site scripts. However site scripts has it’s own limitations (i.e. no they are non-destructive. You can only add missing elements to the site). But where site scripts stops a pnp provisioning engine takes over!

On one of the sessions there were presented example of site provisioning via site scripts that runs azure function which apply pnp-provisioning.

From others topics:
– Skype for Business will be supported for on-premise solutions
– Microsoft Flow got new block that allows for calling ANY sharepoint REST endpoint…A-M-A-Z-I-N-G!
– SharePoint on-prem will have a Microsoft Flow gateway. However SharePoint Workflows will be still supported but it is recommended so that you first try to find a solution using Flow and if it is unachievable than try with SharePoint Workflows.
So to summarize it:
MS has a plan and they seems to know what they’re doing.
Paraphrasing Steve Ballmer words: Integrate, Integrate, Integrate.

Week 48/2017

This week I’m serving you great news from SharePoint Online areas:

  1. Remember Document Information Panel in Microsoft Word?

Properties area of Info Tab with Status field displaying a red border

Quite limited especially when thinking about SharePoint integration. That’s why a new panel for document properties has been released (allow even for picking managed metadata!)

2. Now you can use PowerApps to provide SharePoint list form!!!!

3. Last week I wrote about new powershell module for Microsoft Teams. What if we could use it in Azure Function? This post describe how! Awesome job.

4. And since Azure Function has been mentioned – they’re now available on IoT and Linux too!

Have a great weekend!

How to map user profile to ECT field

Last week I encountered a problem related to External Content Type (ECT). I had a SQL table that contains article information: title, content and author. I wanted to search in that table using SharePoint 2016 search (on-prem). In order to do that I’ve created an External Content Type with above data, create content source and crawl it. Then I’ve mapped all crawled props to managed props in search. I was able to see articles data from SQL in my search results. 

Perfect? Not really…

Continue reading “How to map user profile to ECT field”

How I speed up loading my SharePoint Online site component 6x – part 2

Last week I wrote a post about how I fix CSOM code in order to accelerate whole query execution. Final result was not that bad though still not good enough:

  • 0.8s for fetching ~500 subsites
  • 6.5s for fetching ~900 subsites recursively for whole subsites hierarchy

My aim is to fetch whole subsites hierarchy within time that is reasonable to wait (1-2s total).

In this post I show you how to achieve it – we can fetch whole subsites hierarchy in less than 2s!

Continue reading “How I speed up loading my SharePoint Online site component 6x – part 2”

How I speed up loading my SharePoint Online site component 6x – part 1

Intranet home page should contains all information that are needed in daily manner. In fact many companies use home page as a traffic node where everybody comes just to find a navigation link pointing to another part of intranet. In my current company, Findwise, we do that too. However one of our components that allows us to quickly navigate through intranet sites gets slower and slower year by year. Currently it’s loading time is almost 10 seconds! I decided to fix it or even rebuild it if needed. Especially that few weeks ago on ShareCon 365 conference I talked about SharePoint Framework in Search Driven Architecture where I described the customer case, PGNIG Termika, who saved about 600k PLN (~$165.000) per year thanks to their information accessibility improvements (information time access dropped from 5-10 minutes to 1-2 seconds). 

In this post I wanted to show you what was the problem, how I fixed it and how my fix cuts the component loading time 6 times!

Continue reading “How I speed up loading my SharePoint Online site component 6x – part 1”

How to get all terms from Managed Metadata Service in SharePoint?

In this post I want to show you quick solution how to get all terms from Managed Metadata Service in Sharepoint Online


A colleague from my company asked me is there an easy way to get all terms from Managed Metadata Service in SharePoint Online. I told him:

– “sure, there is managed metadata app that allows you to navigate through whole managed metadata terms structure. Have you tried that?”

– “Yeah I know. But I need to export all terms, with their structure path and present them in list” (don’t really remember specific reason – suppose some data science probably). 

– “Oh, I see…”

Continue reading “How to get all terms from Managed Metadata Service in SharePoint?”

Sharepoint Framework in SharePoint Search Driven Architecture

On 16.10.2017 I had a privilege to be one of speakers on ShareCon365. I had technical speech where I showed how to make Sharepoint Framework (SPFx) apps in Search Driven Architecture. If you were on my speech you are probably interested in materials which you can find here: My presentation materials.

If you were not…than keep reading 🙂 

Continue reading “Sharepoint Framework in SharePoint Search Driven Architecture”

How to connect SPO to AWS with AAD auth (checklist)

Not that long ago I’ve posted article about connecting from sharepoint online to azure web service using AAD authentication. I’ve checked it several times and every time I had a feeling “it’s too hard to easily follow it…”. And that’s how idea of checlist has born!
Following checklist will help you if you have any problems due to connecting from Sharepoint Online to Azure web service using Azure AD authentication.

If you’ll need life example check my code implementation here .

In this blog post I described a context for below checklist – read it if you fall into problems with CORS like:

XMLHttpRequest cannot load https://<App_URL>. No ‘Access-Control-Allow-Origin’ header is present on the requested resource. Origin ‘https://<tenant_name>‘ is therefore not allowed access.  Continue reading “How to connect SPO to AWS with AAD auth (checklist)”

Sharepoint Online to Azure Web Service authenticated with AAD


You want to communicate from Sharepoint Online with your Azure Web Application authenticated with AAD using javascript.

You configured AAD, run some AJAX call to service and received:
XMLHttpRequest cannot load https://<App_URL>. No ‘Access-Control-Allow-Origin’ header is present on the requested resource. Origin ‘https://<tenant_name>‘ is therefore not allowed access.
Continue reading “Sharepoint Online to Azure Web Service authenticated with AAD”