Classic SharePoint Troubleshooting and Development Notes (SharePoint 2007 to 2019)
Before SharePoint Online, Power Apps and SPFx, most of my work was on classic SharePoint: SharePoint 2007, 2010, 2013 and 2016 farms, SharePoint Designer workflows, InfoPath forms and lots of JavaScript. Many organisations still run these platforms or are planning their migration, so I’ve gathered all my classic SharePoint troubleshooting fixes, code snippets and reference notes on this page.
If you’re modernising, read SharePoint Online vs on-premises and the guide to creating forms in SharePoint with Power Apps, which replaces InfoPath.
Contents
- Troubleshooting SharePoint errors
- Fix “The server could not complete your request” (SharePoint 2013)
- SharePoint Designer 2013: “an error occurred while trying to fetch data”
- Cannot open or create Word documents in SharePoint 2013
- MOSS 2007: “The data source control failed to execute the insert command”
- Attachments not working in a SharePoint 2007 custom display form
- Cannot add a web part page in the SharePoint modern experience
- Issues including JavaScript files in SharePoint web parts
- From blue screens to funny error messages in Microsoft Teams
- Client-side and server-side SharePoint development
- Retrieve an SPFile object by its full URL
- SP.JS loading and timing issues
- Get all SharePoint groups with SP.JS
- Sticky headers for long SharePoint list views
- Run a SharePoint page in a different browser compatibility mode
- Content Editor and Media web parts missing in Office 365
- Redirect users back to the list item form after editing
- Remove code accidentally added to an InfoPath form
- SharePoint customisation projects
- SharePoint reference notes
Troubleshooting SharePoint errors
Fixes for errors I hit on real projects, from MOSS 2007 to SharePoint Online and Microsoft Teams.
Fix “The server could not complete your request” (SharePoint 2013)
Today, I will explain you How to fix the server could not complete your request SharePoint 2013. When I tried opening SharePoint 2013 site in SharePoint Designer, I got the following error:
When I clicked on Details, it opened another dialog and continuously pop up window is opening and not able to open the SharePoint site.


And here is the error message:

Solution:
1. Go to Run -> then type Inetmgr -> Now Open the IIS
2. In the Web Sites select “SharePoint Web Services” in the list as you can see on the following picture

- Next step, click on the Authentication and Enable “Anonymous Authentication” as shown on the below picture:

- After enabling this, I am able to open the SharePoint site in designer without any issues.
Source : sharepoint2010europeanhosting
SharePoint Designer 2013: “an error occurred while trying to fetch data”
Whilst try to open a SharePoint 2013 site with SP Designer 2013 I received this error: “an error occurred while trying to fetch data from your SharePoint site”.
A Google search returned nothing but results for similar issues with SP Designer 2010. Many of the posts (like this one) I found suggested the solution had to do with windows authentication, but none of solution matched with what I saw in windows IIS in Windows 2008 SP2.
There is a private joke among the help desk support guys that I have worked with: “Shut up and reboot” Which is the crude way of saying sometimes the only thing you can do is restart, and many times, as in this time, it works. The solution, In IIS, disabled then re-enabled Windows Authentication in on the SharePoint – 80 Site.
Let me walk you through it:
In Windows Server 2008:
1) Open IIS.
2) Click on “SharePoint – 80”
3) Double-click the Authentication icon.
4) Right Click “Windows Authentication”.
5) Click Disable.
4) Right Click “Windows Authentication”.
5) Click Enable.
Hopefully, you will no longer receive the error when trying to open a site in SharePoint Designer 2013.
Cannot open or create Word documents in SharePoint 2013
I wanted to share an issue I came across related to the SharePoint 2013. If you have installed the Office Suite 2010 and Project 2013 installed together on the same machine you will not be able to create a new Office document from the SharePoint document library, you will get a blank page displayed instead and the following URL link
ms-word:nft|u|http://o15psvr:8080/Shared Documents/Forms/template.dotx|s|http://o15psvr:8080/Shared Documents
Excel Files : “ms-excel:ofv|u|http://sharePointDocumentlibraryURL”
This problem is related to the new Microsoft SharePoint Foundation Support this installs a new version that office 2010 is not aware of.
Here are the steps to fix the problem:
You have to change your installation of Project2013 and run the Repair of the Office 2010. The issue is linked to the New Microsoft SharePoint Foundation support which Project 2013 is installing.

Disable the “Microsoft
SharePoint Foundation Support “ option and continue.

After the changes take effect run the Office 2010 Repair and the issue should be solved.
MOSS 2007: “The data source control failed to execute the insert command”
When I was trying to initiate workflow from MOSS2007 to a list, an error page: The data source control failed to execute the insert command is appearing. This was upsetting me, since previously there was nothing wrong with my workflow. Then I asked uncle Google to get answer of my problem.
So, all you need to do are:
- Go to Settings > List Settings (web)
- Under Permission and Management, select Workflow Settings
- You will find your workflow name there, and then click on Remove a workflow
- Mark all instances to Remove (don’t worry, your workflow itself, will not be deleted. It is just detached from list)
- Use MOSS Designer, open that workflow, and save again. This will re-attach with your list
- Now, try again to initiate workflow. It should be working
Attachments not working in a SharePoint 2007 custom display form
It is a known issue that the attachment feature in custom form web part cannot be used. Currently, there are two workarounds for you:
Workaround 1
Note: You can use this workaround if attachment functionality is required for New or Edit custom list forms.
Use normal List Forms instead of Custom List Forms.
Workaround 2
Note: You can use this workaround if attachment functionality is required for Display custom list form.
- Open SharePoint Designer 2007. Go to File | Open Site and connect to SharePoint site.
- Expand out Lists -> [List Name] -> open DispForm.aspx
- Highlight normal list form by clicking on it. This will select the entire webpart.
- Right-click on selected web part, and choose Web Part Properties…
- Expand [+] Layout, check option for Hidden, click OK.
- With web part still highlighted, hit the right-arrow key once. Hit Enter. This creates some whitespace to insert.
- Go to File | Insert SharePoint Controls | Custom List Form…
- Select appropriate list or library, content type, and type of form to create. Click OK.
- Put cursor in the “Expires” table cell, right-click | Insert | Row below. There should now be a new table row with two column cells.
- Put cursor in the left table cell of the new row, type “Attachments”.
- Put cursor in the right table cell of the new row, go to Code view, and paste the following code:
<SharePoint:AttachmentsField ControlMode=”Display” FieldName=”Attachments” runat=”server” Visible=”true”/>
- Save page.
Cannot add a web part page in the SharePoint modern experience
Today, I came across a very strange error, for some reason when I navigate to SharePointSite/SitePages/ and try to create a new Web Part Page, I get the following error.



This was quite strange, as it used to work perfectly regardless which browser I was using.
I tried couple of things:
- Try different browsers
- Clean the cache and restart the process
- Logout of Office 365 and log in again
None of these seemed to work, so I tried one last thing, which was switching to the Classic UI.


Apparently, for some weird reasons, I was not able to create web part pages in the modern UI.
Issues including JavaScript files in SharePoint web parts
Hi guys,
I came yesterday to the following issue when I tried to load the bootstrap.min.js file in my SharePoint 2010 Visual Web Part
<SharePoint:ScriptLink ID="BootStrapScriptReg" Name="bootstrap.min.js" runat=server />
I was stopped by the following error message
Cannot make a cache safe URL for filename, file not found. Please verify that the file exists under the layouts directory.
Where should we put the .js file ?
Important question, as a web developer, you think this should go to the root level of your site, or event the site assets ?
Nope !! this has to be deployed in the FRONT END server in the 14 folder
C:\Program Files\Common Files\Microsoft Shared\Web Server Extensions\14\TEMPLATE\LAYOUTS\1033
From blue screens to funny error messages in Microsoft Teams
Today, I came across an error while working with Microsoft Teams, something usual, just Teams not being able to connect.
I’ve never had to look at the error message in details or even bother about what it says, as I knew exactly what was going on.
Today, I concentrated on this message, and I had a flash back of the old boring, scary Blue Screen, you remember it right.
I though Microsoft has done really a good job in term of User experience.

The bluescreen message which did not mean anything for most of us rather than (shit, something went wrong), I was always wondering why the memory details where on the screen, does anyone really troubleshoot the data in the ram ? It is volatile, what is the point ?? I ended up accepting the response that , the blue screen was for MS developers and they used it for debugging. Why was is in the final product.
Anyway, thank god, these days are waaaay behind us.
Today, in Microsoft Teams, the Error message says :
“Oh my! Looks like someone pulled the plug on the Internet. Or you’re just temporarily disconnected. ”

What a nice and gentle way of displaying an error message, I just smiled and carried on, it did not even bother me.
That’s the power of the UI.
Thanks Microsoft.
Client-side and server-side SharePoint development
JavaScript (SP.JS/JSOM), server object model and UI tweaks for classic SharePoint pages. For modern development, start with setting up the SharePoint Framework (SPFx) environment.
Retrieve an SPFile object by its full URL
It may be assumed that you need to pass separate strings when opening a SPSite / SPWeb / SPFile (leading to all kinds of nasty url string chopping to determine base URL /site URL/ file name) when actually you can do this instead (this may be well known to many, but an experienced SharePoint guy I spoke to recently was not aware of it so I thought it would be worth posting)
Helpfully the SPSite constructor doesn’t care about the library name , filename or the .docx suffix and will just open http://server/site for you. Then use the default constructor for OpenWeb() as we’ve already passed the full URL. Then use SPWeb.GetFile(), which takes the full URL. Easy, and no strings were harmed during the process.
|
1
2
3
4
5
6
7
8
9
10
11
|
using(SPSite site = new SPSite(url)){ using(SPWeb web = site.OpenWeb()) { SPFile file = web.GetFile(url); }} |
SP.JS loading and timing issues
In this post, I will share with you guys my experience with SP.JS.
First of all, I felt in love with SP.JS when I could do literally any CRUD operation from the browser.
Don’t get me wrong, coming from C#.Net background to SP.JS took some time to familiarise myself with different topics of this last. Finally, I arrived to the conclusion, that I love SP.JS (once I got myself comfortable with it).
The first issue I had with SP.JS, was the fact that I did not have any control on the load order of the scripts, so I had to make sure that all my JavaScript code would wait for SP.JS to Load. For this, I used the following line of code
SP.SOD.executeFunc('sp.js', 'SP.ClientContext', sharePointReady);
function sharePointReady() {
var clientContext = new SP.ClientContext();
// my code goes here
}
This was perfect, from the sharePointReady function, I could do pretty much anything, I re-used it in different projects, and believe me, the final results was very Wowing 🙂
PS: This was experienced in a Sharepoint On-Prem environment.
I had to migrate one of my project to SharePoint Online (Office365), and suddenly this script was not doing what I thought I have fixed in the past.
The SP.JS was running before the DOM finished loading. I noticed different behaviours when I refreshed the page (F5), or just select the URL (and hit enter).
If my script was updating any DOM object (which was the case in most of the cases), I had issues.
The solution was to do the check of SP.JS and call the sharePointReady function from the document.ready() function.
$(document).ready(function () {
SP.SOD.executeFunc('sp.js', 'SP.ClientContext', sharePointReady);
});
function sharePointReady() {
var clientContext = new SP.ClientContext();
// My code goes here
}
Get all SharePoint groups with SP.JS
In this post, I will show you how you can retrieve all the SharePoint groups in a Site using SP.JS.
I needed to implement this JavaScript code to populate a bootstrap dropdown for a project which required custom development using BootStrap, SP.JS and other client side technologies.
var RootSite = "https://YourTenant.sharepoint.com/sites/YourSite/"
function Get_Groups() {
var clientContext = new SP.ClientContext(RootSite);
this.collGroup = clientContext.get_web().get_siteGroups();
clientContext.load(collGroup);
clientContext.executeQueryAsync(Function.createDelegate(this, this.DD_GroupsSucceeded), Function.createDelegate(this, this.DD_GroupsFailed));
}
function DD_GroupsSucceeded(sender, args) {
console.log('DD_GroupsSucceeded');
var userInfo = '';
var groupEnumerator = collGroup.getEnumerator();
while (groupEnumerator.moveNext()) {
var oGroup = groupEnumerator.get_current();
var Group_ID=oGroup.get_id();
var Group_Title=oGroup.get_title();
alert (Group_ID +' - ' + Group_Title);
}
}
function DD_GroupsFailed(sender, args) {
alert('Request failed. DD_GroupsFailed' + args.get_message() + '\n' + args.get_stackTrace());
}
Sticky headers for long SharePoint list views
In some large (columns) and long lists views, it would be ideal to have sticky headers which are always displayed in the top regardless of the users scrolling.
The solution:
In order to have this, simply make a reference to the stickyheader.js file (Download):
1- From the list view, switch to edit mode
2- Add a content editor web part
3- Make reference to the stickyheader.js (ideally from your environment, if you can’t, you can reference it from a CDN).

Run a SharePoint page in a different browser compatibility mode
The problem I was faced with today, was to embed twitter feed into a new SharePoint landing page.
The widget rendered fine in most of the browsers except IE 8,9 & 11 (Yes, some companies are still on these 🙂 ).
I tried for couple of hours before trying IE Emulator, which allowed me to emulate the page in Edge, this resolved the problem.
Quickly I though of updating the master page by making it behave as if it was running in Edge, this was easily doable by following these steps :
1- Open SharePoint Designer and go to Master Pages
2- Make a copy of the actual master page (usually it is Oslo).
3- Rename it to something more user friendly (ex. Switch or Modern).
4- Open the new master page and locate in the head section
<meta http-equiv=”X-UA-Compatible” content=”IE=10″ />
5- Change the content to “IE=11”
6- Make the new master page default.
VOILA !!
Content Editor and Media web parts missing in Office 365
In this article, I will disuss the issue related to the fact that Microsoft disabled ‘By Default’ the content and media editor in Office 365.
The good news, is that you can activate it back, if you have site collection administrator privileges.
The bad news or just my suspession, is that Microsoft will kill this web part for SharePoint 2019. The reason why I think this will be done, is that Microsoft is trying to limit or avoid code injection in the pages.
I used to use SP.JS to do pretty much anything i needed, now, when I see this being deactivated out of the box, I think, Microsoft is trying to push you toward SPFx, which I agree, gives more capabilities and better code.
It might be still available for backward compatibility. So my advise, try to stay away from it if possible, to avoid re-writting your code in the future.
So for the moment, let’s look at how you can re-enable it.
- From the site collection features, enable the ‘SharePoint Server Publishing Infrastructure‘.

- And on the site where you need the Content and Media editor web part, enable the ‘SharePoint Server Publishing‘ feature.
![]()
- The final configuration you need to make, is to enable custom code, from the SharePoint admin interface.

These three steps should bring back to life the lovely Content and Media editor web part.
Redirect users back to the list item form after editing
You can create a custom form by with SharePoint Designer then customize the OK Button to save and redirect to the display view. To create custom edit form using SharePoint Designer here is a full instructions on how to do thi http://office.microsoft.com/en-ca/sharepoint-designer-help/create-a-custom-list-form-HA010119111.aspx
Once you done this then find this line on the source code of you new page
<xsl:decimal-formatNaN=""/><xsl:paramname="dvt_apos">'</xsl:param><xsl:variablename="dvt_1_automode">0</xsl:variable>
and append this line below
<xsl:paramname="ListItemId">0</xsl:param>
“this will make the id of the current item accessible by the button” replace both of your OK buttons
<SharePoint:SaveButtonrunat="server"ControlMode="Edit"id="savebutton1"/>
whit this one
<inputtype="button"value="OK"name="btnSave"onclick="javascript:{ddwrt:GenFireServerEvent(concat('__commit;__redirect={dispform.aspx?id=',$ListItemId,'}'))}"/>
Save and test :). You don’t necessarily have to replace your OK buttons for this one you can also add this extra button and instead of calling it OK call it something like Save and display and let the user decide what to do (just and idea)
Hope this helps!
Remove code accidentally added to an InfoPath form
When working with buttons on a form, we often add rules. You access the rules editor from the properties of the button.
When clicking around quickly, it’s easy to accidentally click on “Edit Form Code” instead of “Rules …”.
The first time I did this, I canceled out of the code editor. However, when I tried to publish the form a little while later, it required that I publish as an “Administrator-approved form template (advanced)”. I didn’t actually do any programming and I absolutely didn’t want to go through an unnecessary approval process. I was in a bit of panic at the time due to time constraints. To get past it, I simply restored a previous backup and continued. I had recently seen some blog posts about people going into the form’s XML to tweak things and I was afraid I would have to do something similar.
Today, I did it again. This time, I had a little more time on my hands and found that you can easily undo this.
Go to:
Tools -> Form Options -> Programming: “Remove Code”
It does not get much easier than that.
SharePoint customisation projects
Examples of SharePoint solutions I designed and built for clients.
BlueChips and KPIs in SharePoint with Bootstrap, SP.JS and jQuery
Duration
~ 6 Weeks
Client
Rolls Royce
Used technologies
SharePoint, SP.JS, BootStrap, Html5, Css3, Jquery.
The blue chips are corporate goals defined at the highest level and have sub goals assigned to team leader (executives).
The top management want to keep track of the monthly updates and be able to check at any time how we are doing with each Blue Chip.
A team leader can divide a blue chip into smaller tasks and delegate each task to his/her team members.
The structure of the blue chips system is a two-level hierarchy
- The Blue Chip:
- Title,
- Corporate Goal
- Owner
- Details
- Blue Chips’ Sub Goals
- Id Blue Chip
- Details
- Jan (RAG)
- Jan (Details)
- Feb (RAG)
- Feb (Details)
- Mar (RAG)
- Mar (Details)
- ….
- Dec (RAG)
- Dec (Details).
Each month a sub goal responsible will update the month RAG (Red, Amber, Green), and submit comments.
A workflow triggers to update the main Blue-Chip status based on the worst RAG status.
These are the two main lists that I have created in SharePoint, on top of which, I have used Bootstrap, SP.JS and JQuery to build a nice-looking UI which
Screenshots
Restyling the SharePoint search page
Client
Holchem Laboratories
Duration
1 Day
Used technologies
SharePoint, BootStrap, Html5, Css3.
On the last sprint of the SharePoint Intranet Branding, I noticed that the search page was a bit ‘fade’. The out of the box Search Centre Page is quite empty, a big blank page, which I thought it would benefit from some styling.

I also wanted to keep it quite simple, so adding some styles without heavily cusomizing the page. I switched the page to the edit mode, Added a Content Editor Web Part, in which I added my CSS styles and texts.

<style>
#s4-workspace
{
background-image: url('LinkToYourImage/bkg2.jpg');
background-size: cover;
}
#contentBox
{
margin: 0px;
}
#sideNavBox
{
display: none;
}
#contentRow
{
position: absolute;
bottom: 100px;
left:0px;
right: 0px;
}
</style>
<img src="LogoLink/logo.svg" style="width:100px; padding-top: 20px; display:block; margin: 0 auto;"/>
XGED: a SharePoint document management system
Client
LogiSam Solutions (DZ)
Duration
6 Months
Used technologies
C#, ASP.net, SQL Server, Entity FrameWork, BootStrap, JQuery, Web APIs.
In this blog post, I will describe a document management system I am building which is simple, easy to use, quick and very straightforward.
My Goal is to have a customised document management system for customers who cannot afford to use a big beast like SharePoint, or simply look for a simple and secure way of managing their documents.
The XGED provide different functionalities to help you with your day to day document management system such as :
- Managing files by Areas and Folders
- Watch actions (to be notified of any changes)
- Drag and drop files
- Files extensions
- Security at the area, folder or file level
- Version control (with a lovely interface :), nothing like SharePoint hhhh)
- Workflows
- Quick Search (Instant results).
- ActiveDirectory Authentication
- Log of actions.
- Online file editor
- And a lot more …
Screenshots
Versions (as a timeline)
Permissions (inheritance or unique just as SharePoint 😉 ), plus a file preview.
Search with autocomplete, and file watch actions.
File search (with inline intelligent search)
The technologies used for this project are:
- ASP.net with C#
- SQL Server for the backend, I use SQL Server to save only the metadata, no file will be saved as Blob in the DB, as I have had some nightmares with SharePoint blob storage.
- Jquery for RIA.
- JavaScript and CSS for random stuffs.
SharePoint reference notes
Quick-reference tables and opinions that are still handy when you work with legacy farms or plan a migration. See also identifying SharePoint build numbers and SharePoint 2013 versions and features compared.
SharePoint site template codes (STS#0, BLOG#0 and more)
| Parameter value | Description |
| GLOBAL#0 | Global template |
| STS#0 | Team Site |
| STS#1 | Blank Site |
| STS#2 | Document Workspace |
| MPS#0 | Basic Meeting Workspace |
| MPS#1 | Blank Meeting Workspace |
| MPS#2 | Decision Meeting Workspace |
| MPS#3 | Social Meeting Workspace |
| MPS#4 | Multipage Meeting Workspace |
| CENTRALADMIN#0 | Central Admin Site |
| WIKI#0 | Wiki Site |
| BLOG#0 | Blog |
| SGS#0 | Group Work Site |
| TENANTADMIN#0 | Tenant Admin Site |
| ACCSRV#0 | Access Services Site |
| ACCSRV#1 | Assets Web Database |
| ACCSRV#3 | Charitable Contributions Web Database |
| ACCSRV#4 | Contacts Web Database |
| ACCSRV#6 | Issues Web Database |
| ACCSRV#5 | Projects Web Database |
| BDR#0 | Document Center |
| OFFILE#0 | (obsolete) Records Center |
| OFFILE#1 | Records Center |
| OSRV#0 | Shared Services Administration Site |
| PPSMASite#0 | PerformancePoint |
| BICenterSite#0 | Business Intelligence Center |
| PWA#0 | Project Web App Site |
| PWS#0 | Microsoft Project Site |
| SPS#0 | SharePoint Portal Server Site |
| SPSPERS#0 | SharePoint Portal Server Personal Space |
| SPSMSITE#0 | Personalization Site |
| SPSTOC#0 | Contents area Template |
| SPSTOPIC#0 | Topic area template |
| SPSNEWS#0 | News Site |
| CMSPUBLISHING#0 | Publishing Site |
| BLANKINTERNET#0 | Publishing Site |
| BLANKINTERNET#1 | Press Releases Site |
| BLANKINTERNET#2 | Publishing Site with Workflow |
| SPSNHOME#0 | News Site |
| SPSSITES#0 | Site Directory |
| SPSCOMMU#0 | Community area template |
| SPSREPORTCENTER#0 | Report Center |
| SPSPORTAL#0 | Collaboration Portal |
| SRCHCEN#0 | Enterprise Search Center |
| PROFILES#0 | Profiles |
| BLANKINTERNETCONT | Publishing Portal |
| SPSMSITEHOST#0 | My Site Host |
| ENTERWIKI#0 | Enterprise Wiki |
| SRCHCENTERLITE#0 | Basic Search Center |
| SRCHCENTERLITE#1 | Basic Search Center |
| SRCHCENTERFAST#0 | FAST Search Center |
| visprus#0 | Visio Process Repository |
SharePoint search versions compared
| Feature | SharePoint Foundation 2010 | Search Server 2010 Express | Search Server 2010 | SharePoint Server 2010 | FAST Search Server 2010 for SharePoint |
| Basic site search | Y | Y | Y | Y | Y |
| Best Bets | Y | Y | Y | Y | |
| Visual Best Bets | Y | ||||
| Similar Results | Y | ||||
| Duplicate Results | Y | ||||
| Search Scopes | Y | Y | Y | Y | |
| Search Enhancement based on user context | Y | ||||
| Crawled and Managed Properties | Y | Y | Y | Y* | |
| Query Federation | Y | Y | Y | Y | |
| Query Suggestions | Y | Y | Y | Y | |
| Sort Results on Managed Properties or Rank Profiles | Y | ||||
| Relevancy Tuning by Document or Site Promotions | Y | Y | Y | Y* | |
| Shallow Results Refinement | Y | Y | Y | Y | |
| Deep Results Refinement | Y | ||||
| Document Preview | Y | ||||
| Windows 7 Federation | Y | Y | Y | Y | |
| People Search | Y | Y | |||
| Social Search | Y | Y | |||
| Taxonomy Integration | Y | Y | |||
| Multi-Tenant Hosting | Y | Y | |||
| Rich Web Indexing Support | Y |
Three big reasons to say goodbye to InfoPath
1. Legacy Status
‘Legacy – relating to software or hardware that has been superseded but is difficult to replace because of its wide use’
In January 2014, Microsoft announced that their investment in InfoPath had come to an end. With no significant roadmap in sight from preceding years, this was an inevitable conclusion to their e-forms product. Four different alternatives were offered for forms building – Excel, Word, Access and Forms on SharePoint Lists (FOSL), with some of these offerings not yet available, while others have since been canned – e.g. FOSL. To rectify this situation they’ve decided to give it a lifeline with inclusion in SharePoint 2016, but the damage has already been done. It’s now a legacy software.
2. The Limitations
InfoPath was never built for SharePoint to begin with – a valid fact that many users and developers missed. It was retro-fitted to support SharePoint, so Microsoft could provide a forms solution to be used on SharePoint, but there were always limitations!Several years ago, we encountered that even when using Microsoft InfoPath for client projects, we struggled with building a tangible business case for them. The tangible return on investment became difficult to prove for business process enablement projects, because a significantly large proportion of work was still required to go into workflow development.
3. The New Digital World
HTML5, mobile, cloud, analytics, social – people working in real-time, anywhere, anytime, empowered. New demands, new technology required. What’s the answer?
Reusable site solutions and templates (site designs)
A newcapability allows to create re-usable solutions and templates to provision your sites are now available.
Using the pnp provisioning engine, and adapted to your needs can leverage all the efforts needed to create multiple sites/ site collections.
The engine has been changed a bit and allows new capabilities
Tenant template : Allows to provide
- Themes
Taxonony - Refer to the JSON file (as it will be ugly to embed them in the
xml file). - A sequence of site collections, which will allow to create the site collections and start applying the templates.
- The site template allows
to define thelists , document libraries, features, pages, web parts …etc.
This is not only about the provisioning, it has also couple of web parts for modern pages
The xml file is the actual template, and the .pnp is a packaged (zipped) file of all the resources
To apply an existing pnp file we can do that with
Or you
can use provisionningpnp site, Awesome 😉
First impressions of the new SharePoint admin center

Usually, I get very excited about the new features that Microsoft announces, and try to be part of the first users to test them, but this time, I am very disappointed.
This is not really a new layout, it has been arround for a while, and I have really tried to get familiar with it without success.
Most of the features that were accessible with two clicks, have now been hidden and it make me very stressed to navigate through this layout.
Thankfully, there is stil lthe possibility to roll back to the old lovely layout

I am sure, this will be turned off at certain point, unless Microsoft hears what the admins and developers are reporting, and believe me, I am not the only one complaining.
Probably a re-design using the new SPFx and keeping the previous navigation and layout would have a better acceptance and positive feedback.
Moving from classic SharePoint to modern
- InfoPath forms: rebuild them as Power Apps forms. See mastering Power Apps forms.
- SharePoint Designer workflows: rebuild them in Power Automate. See the Power Automate tutorial.
- Script Editor and Content Editor customisations: move them to SPFx web parts and extensions.
- Farm-based search and reporting: use Microsoft Search, Microsoft Graph and Power BI.

