If you know me or follow me on Twitter/LinkedIn, you must have realized by now how much I like the PnPjs library. Enough to venture myself to speak about it on 3 SharePoint Saturday events last year. The library has packages for SharePoint and Graph endpoints and can be easily used on SPFx solutions. But if you need an SPFx solution that consumes Project Online API, what options do you have?
Kudos to Paweł Hawrylak who started creating the Project module for PnPjs and currently already offers support for a wide range of endpoints. The module is currently in a dev branch and requires additional work and testing, but it’s already a phenomenal effort.
This blog post will cover the required steps to generate a local PnPjs Project package to consume Project Online REST APIs and create an SPFx web part that uses it.
Style SPFx workbench
This blog post does not contain anything amazing or new. But it’s something I use for a very long time and decided to write it down to hopefully help someone. Style the SPFx workbench page.
Continue reading “Style SPFx workbench”Restore deleted documents already restored by OneDrive
Imagine the following scenario:
- A user syncs a SharePoint document library using OneDrive, so that he can have a local copy of the documents.
- When he doesn’t need them anymore, he deletes the documents from the machine (which is a sensible approach).
- OneDrive syncs the changes and deletes the documents in the SharePoint library.
- User notices that the documents were deleted, opens the recycle bin and restores them.
- One Drive syncs all the documents back to the SharePoint library and all is good again. NOT!
Even though all your documents are back into the SharePoint document library, they do not contain information about previous versions. This information is recorded against the original list item object. The original documents, containing the version history information are now in the site recycle bin. But, because OneDrive uploaded a new copy of the documents, you are unable to restore the deleted versions. This is because the library already contains a document with the same name.
This is simple to manually resolve if you only have a few documents affected. But what if we are talking about hundreds or thousands? And multiple libraries? Well, in this case, PnP PowerShell to the rescue!
Reusable ARM template for Web Application
SharePoint Framework is the new King of enterprise solutions. Since version 1.4.1, it allows you to easily connect to APIs secured with Azure Active Directory.
As a SharePoint developer, you will likely have to create Azure Web Apps or Functions to be consumed by your SharePoint Framework application. So why not use an ARM template for common scenarios?
The following ARM template will, hopefully, come in handy and save you some time.
Using pnpm with SPFx 1.7.0
Update 21-11-2018: As documented on the pnpm FAQs, a simpler way to use pnpm is to use the “–shamefully-flatten” flag. This will create a flat node_modules structure similar to npm and yarn.
The instructions below are relevant if you do not want to use the “–shamefully-flatten”, but be aware that you will end up modifying the package.json file.
Resources from my session at SPS Leicester 2018
Last weekend, I had the pleasure of speaking at SharePoint Saturday Leicester (SPS Leicester). Very well organized event and with a good number of attendees, especially considering that it was the first event.
You can find the slides from my presentation below.
Continue reading “Resources from my session at SPS Leicester 2018”Using pnpm with SPFx 1.6.0
When you create a new SharePoint Framework project, you have the option to use different package managers: npm, pnpm or yarn.
For a long time, I completely ignored this and just used npm. Npm is the slowest option from the list above, but it didn’t really matter as I was installing packages once a week or so. But this is not the case anymore. Simple processes, like upgrading your existing solutions to newer versions of the SharePoint Framework can make you go through that process more times than desired.
In my case, my dev laptop takes a very long time to install or delete node modules, so I found myself looking for alternative solutions.
Continue reading “Using pnpm with SPFx 1.6.0”PnP PeoplePicker reusable control disabled
The PnP PeoplePicker reusable control is one of the amazing reusable controls available from the open-source @pnp/spfx-controls-react project. You can easily include it in your SharePoint Framework projects. Unfortunately, and at the moment, there is a bug that prevents you from completely disabling the control.
Continue reading “PnP PeoplePicker reusable control disabled”SPS Barcelona – Resources from my session
Had an amazing time at SharePoint Saturday Barcelona (SPS Barcelona) last weekend! The event was very well organized and full of really nice sessions to attend. Really hope that everyone who attended had a great time.
You can find the slides from my presentation below.
Continue reading “SPS Barcelona – Resources from my session”CSOM PowerShell – add a field to a list content type
Some people will read the title of this blog post and wonder why I’m writing this when there are plenty of samples to do this online. Some of them written a long time ago. It covers a common requirement: add a SharePoint field to a list content type.
But the reason is simple: I wasn’t able to find a single one that worked on a reliable way.
Continue reading “CSOM PowerShell – add a field to a list content type”