This issue might occcur in SharePoint on premise versions 2013, 2016 and 2019.
Images do not load properly or load with full size that is without rendition. This can happen if Blob Cache is corrupted on one of the Web Front end or web front ends are not synced between each other.
The default max size for an image when using Image Renditions is 40 mega pixels. Should you want to modify this value you will need to add the imageRenditionMaxSourcePixels parameter. For example: <BlobCache location="C:\BlobCache\14" path="\.(gif|jpg|jpeg|jpe|jfif|bmp|dib|tif|tiff|themedbmp|themedcss|themedgif|themedjpg|themedpng|ico|png|wdp|hdp|css|js|asf|avi|flv|m4v|mov|mp3|mp4|mpeg|mpg|rm|rmvb|wma|wmv|ogg|ogv|oga|webm|xap)$" maxSize="10" imageRenditionMaxSourcePixels="100000000" enabled="true" />
Error message: I was not able to identify an error message but users complained that intranet page seems weird and images are displaying over text and etc
How to fix:
Try flushing blob cache with below PowerShell command , this will not recycle the IIS so you can do it during day as well but always good to do it outside office hours.
2. It is not necessary that above will fix the issue, in our case we identified that this did not fix the issue because cache was not getting updated in one of the web front end and time stamp was quite old.
How can you check if it is old and it’s not getting updated?
Visit the folder location of Blob cache on Web front end and each web app will have it’s own folder, check last modified date, you can also compare with other web front ends.
If your issue as explained below then do like this but make sure you have web front end outside of load balancer or you are doing in outside of office hours.
Disable blob cache temporarily: You can make the flag false in web.config file of the IIS which has issues, the line in web.conifg looks like below
Before you start reading this I would like to mention that steps mentioned here are to create a Virtual Machine in Azure for demo, development or labs purpose.
I decided to write this blog as I faced some difficulties while installing SharePoint 2019 on Azure Virtual Machine, I never faced these while installing it on Physical machines or company provided Virtual Machines.
Click on the menu and select “Virtual Machines” and then click Add from top
2. Once you get to the page you will have lots of tabs to filled in, I have highlighted few fields which are required and needs to be filled in, rest of it can be left as is.
Important field which we need to select is “Image” that is we need a Windows Server etc, for easy installation I will be selecting a Windows server with SQL Server 2016 already installed in it so that we don’t have to do that manually.
3. Select “Browse all public and private images” and search for SQL server 2016 and select Standard SP 2 version, for size I recommend 4 CPU and 16 GB memory else the server runs very slow as SQL and SharePoint both are running on the same server.
4. Next step is to create an Admin account so pick a name and password which you can remember. After that you can click “Review + Create”, although there are lot of other things which can be filled in but sake of simplicity I will just leave them as is.
5. Once on the Review tab, click “Create” to create the Virtual Machine. It will start the deployment process and might take 10 minutes. You can check the progress while it deploys.
6. After creation you can check the Virtual Machine in the list, click on the name to access it.
7. Click on the name and you will get to a window as show below, to connect to the machine we should RDP it, so click Connect and chose RDP. It will download a file which can be used to connect to machine using the Admin account you have created. This finishes step for creating Virtual Machine.
Add domain servcies to Virtual Machine
Initially I had thought that this steps is not needed but it does not work if Virtual Machine is not connected to a domain, you will get an error at the end of SharePoint 2019 installation that is Search Service Application will not be created successfully. You may get errors like below
The SDDL string contains an invalid sid or a sid that cannot be translated.Parameter name: sddlFormSystem.ArgumentException: The SDDL string contains an invalid sid or a sid that cannot be translated.Parameter name: sddlForm at System.Security.AccessControl.RawSecurityDescriptor.BinaryFormFromSddlForm(String sddlForm) at System.Security.AccessControl.RawSecurityDescriptor..ctor(String sddlForm) at
Errors were encountered during the configuration of the Search Service Application. System.ArgumentException: The SDDL string contains an invalid sid or a sid that cannot be translated. Parameter name: sddlForm at System.Security.AccessControl.RawSecurityDescriptor.BinaryFormFromSddlForm(String sddlForm) at Microsoft.SharePoint.Win32.SPNetApi32.CreateFileShareWithSecurity(String name, String description, String path, String sddl) at Microsoft.Office.Server.Search.Admi.nistration.AnalyticsAdministration.CreateAnalyticsUNCShare(String dirParentLocation, String shareName) at Microsoft.Office.Server.Search.Administration.AnalyticsAdministration.ProvisionAnalyticsShare(SearchServiceApplication serviceApplication) at Microsoft.Office.Server.Search.Administration.AnalyticsAdministration.CreateDefaultStoreLocation(SearchServiceApplication serviceApplication) at Microsoft.Office.Server.Search.Administration.AnalyticsAdministration.ProvisionRawEventStore(SearchServiceApplication serviceApplication) at Microsoft.Office.Server.Search.Administration.AnalyticsServiceAdministration.Provision() at Microsoft.Office.Server.Search.Administration.SearchServiceApplication.Provision() at Microsoft.Office.Server.Search.Administration.SearchAdminUtils.UpdateIgnoreSPUpdatedConcurrencyException(String description, SearchAdminUtilsUpdateDelegate updateDelegate, SearchAdminUtilsRefreshObjectDelegate refreshObjectDelegate) at Microsoft.Office.Server.Search.Administration.SearchConfigWizard.CreateSearchApp() at Microsoft.Office.Server.Search.Administration.SearchConfigWizard.ProvisionSearchServiceApplication() at Microsoft.Office.Server.Search.Administration.SearchConfigurationJobDefinition.ExecuteTimerJob()
Once that is done you have got rid of other error which will come as now you will be using a domain account and not local account to install SharePoint 2019.
The specified user “username” is a local account. Local accounts should only be used in standalone mode.
Check SQL Server settings :
Open SQL Server Management Studio which should be installed already as we had got server with SQL server already installed.
The account which will install SharePoint 2019 should have required access like below, this account is same as what you had created while creatin Virtual Machine. You can find it under Logins and make sure you have selected “dbcreator” and “securityadmin”. This will make sure the account has correct access to create databases while installing SharePoint 2019.
3. Another thing we need to do is to make sure the account which you updated above has name as “domain\username”, initially it will have name as “computername\username”, since we when we created Virtual Machine with SQL server there was no domain it will remain as is. If you miss this step then you will have issues while creating Search Service Application. So remember to change name as suggested by right clicking and rename. Error message while installing SharePoint 2019 will be like below
The service application “Search Service Application” could not be created because of the following error: System.Data.SqlClient.SqlException (0x80131904): Windows NT user or group
Once downloaded first step is to install pre-requisites, make sure you have an internet connection else it will not work. Click on “Pre-Requisites”, you will the installation happening
4. Once that is done successfully double click “setup” to installing SharePoint 2019, it will start the installation, check pictures below to understand the steps, in the step 2 make sure you use the same account you had created before with format as “domain\username”, in step 3 select “Single Farm”.
Once the above steps are done a IE window will open to configure further, you can chose to perform rest of the steps manually or run the wizard, I chose to run wizard.
So this should finish your SharePoint 2019 installation and you are ready to use it.
So let’s start with “yourclientid” and “yourclientsecret”, for these we need to login to Azure portal and do an “App Registration”. To call an Graph API you need an App to with correct access to resources.
Coronavirus has changed the way we live and work unprecedently. These has been difficult times for everyone and I can bet no one is untouched by this.
Things have changed in many ways for us, companies in terms of the way we work, comapnies operate and collaborate together.
Social media has been flooded with tips around how to work from home, how to take meeting etc, I am not an expert on how to work from home so I am not going to tell you anything about it even though I have been working from home for past two months now, earlier I use to work once or twice in a month.
I can certainly say that it works and it is not so difficult if you are determine to make it work and people like us who are from IT background always find a way to work with IT tools.
The challenge has been more for people from non IT backgrounds who are more than ever dependent on IT tools to work and collaborate together, conduct meetings, training etc virtually rather than in person.
Even if you are from IT background learning curve has been steeper more than ever to cope with new tools or how to use the existing tools in most efficient way.
I must say that the phrase “Survival of fittest” is true now in every sense of way, be it for health, work or companies or tools / apps.
Although all kind of institutions have been impacted due to this but my focus has been on schools, colleges and healthcare.
A tool which has seen a sharp increase in usage is Microsoft Teams, if we talk about numbers it has now more than 75 million daily active users by April end which was 44 million just a month ago in March. Microsoft teams has 200 million daily meeting participants.
We can very easily infer that Microsoft Teams is the fittest of all in its competition not just due to numbers but the way it enhances productivity and easy to collaborate, it has a great concept of chat based workspace with countless high quality apps available to be used created by Microsoft and partners.
Check my references at end if you would like to start using Microsoft Teams.
We at CGI has also been impacted like everybody else but I can say CGI has played at front, not only we contributed socially for different causes but we have taken challenges such as rolling out Microsoft Teams in just two weeks of time.
This based on my experience with a customer I have worked with for many years.
I would like to create “Product Catalog” to display 3D images for the product and display relevant documents related to the Product.
To set some context: Large product / euiqpment manufacturing comapanies such as mining, construction or vechiles upload there marketing material for sales people to be accessed internally and share externally for sales pitch when needed on portal sites.
In general in these portal sites you will find images of the product and documents related to it in OOB user interface or custom user interface.
Companies also have product 3D images but they don’t show on intranet as SharePoint Spaces was not available so not so practical I would say.
Now we have set the context let’s check how easy is to use SharePoint Spaces.
First of all you need a SharePoint Site preferably a Communication site as it will give you more space in screen to create SharePoint Spaces.
Spaces is not available automatically and feature needs to be enabled in “Manage Site Features” called “Spaces”.
Once you have enabled it you will see below option in “New”
Select a structure , input a name to create a Space Design page which will look like below depending on which structure you have selected
Click on “+” to add 360 degree image, video etc shown as below
I will be adding a two Product groups like Trucks and Cars, which will take user to two different Spaces page which will contain different Trucks and Cars, you can imagine this as Product group and when you click you go to different Products available under that group.
I will add a 3D Object with Podium , please check below screen shots
The properties which I have used are “Podium”, “Link to another space” , “Alternate text” and “Description”.
The “Link to another space or link” is great option as you can hierarchy and structure around Spaces.
I will be adding another Space which display multiple Products and then each product will also link to another Space which will have a Document Library attached
This will complete our Product Catalog so it works like this Product Group –> Products –> Document Library (Space)
Now let’s see the whole set up in action
During the process of creating this I found some improvement areas or issues
If you have only folders in a document library then the SharePoint Spaces cannot load it
If you want to connect a object to a folder in library you have to use a “Link” option and the link to Folder will not be recognized which you get from “Copy Link” option so you have to construct on your own which will also be not recognized but it will work
If you have done connections using SharePoint Spaces then the page does not reload but Space area reloads which is good but it will be good to have some kind of hirearchy navigation which can help in contructing structures
Another thing I would like to add is that it works in Microsoft Teams as well
I think SharePoint Space has lot of practical usage you just need to think in different way and visualize.
Let me know what you think and what pratical usages to you can see.
You must have booked an online appointment on sites for small businesses or salon or some kind of services but did you know that there is an service provided by Microsoft 365 as well for these kind of bookings. Although it has been around since 2016 it was made available for all E3 and E5 licenses recently.
I must say that Bookings App / service is very easy and intuitive to use, let’s have a quick walkthrough first and then we can look into some scenarios where it can be useful.
Booking page: Page is configurable in all aspects such as how booking page can be accessed, some text about data usage and control, scheduling policy, how to notify users, color theme of page. Check a screenshot below
Customers: You can add customers or import them as well
Staff: You can add staff and their availability schedule
Services: You can add what kind of services you provide
Business information: You can add more than one Business
You can create booking page which can be only accessed internally in organization
Customize email notifications
You can share booking socially and you can also disable the option if you want
Reports: You can download data upto 120 days
Booking is also available as an App in Microsoft Teams which makes it easy to use for organizations
Overall very rich functionalities and will meet your needs. Ability to access data via Graph API enables lot of possibilities.
In general Microsoft 365 Bookings can be used by enterprise, small companies, shops to enable bookings in their public facing sites but apart from this it can be used internally by enterprises for various purposes.
Appointments for Service Desk kiosks
Appointments with HR for queries
Appointments with finance for resolutions
This was a quick walkthrough of Bookings in Microsoft 365.
If you want to try out Bookings I have created a demo which you can utilize
Microsoft Build 2020 came up with lot of exciting announcements but the most interesting one was Lists as individual app in Microsoft 365.
Lists has been around for many years as part of SharePoint platform , I remember explaining my end users Lists is something like an excel rows or table in database in SharePoint 2010 days and to be frank not a lot has been changed, we have not seen huge improvements except some more templates being introduced. We got conditional formatting recently in SharePoint online, of course you can do more these days due to introduction of Power Platform (Power Apps and Automate).
This is reason I term this annoucement as interesting one as it takes the Lists to another level and put it on same level as other standalone apps.
So let’s look what all we get in Microsoft 365 Lists
It can be accessed as a standalone app from waffle of Micorosft 365
Various default predefined templates such as issue tracker, asset tracking, blank , contacts, inventory, events, onboarding etc are available
Lists has its own home page
Available as mobile app
Can be added to Microsoft Teams as an App or tab
Can have conversation around Lists in Microsoft Teams or can have conversation around each item in a Microsoft Lists
Lists will have views calendar, grid, custom, cards etc
Conditional formatting is available in Lists
Rules: You can set rules to show hide columns based on differen rules, it’s like light weight customizing forms, for definition read below statement
Building rules is as easy as writing a sentence. Once you decide on the outcome, click-fill if/then steps to design your rules. Choose people, status, and value changes to send notifications or programmatically update values elsewhere in the list. Finally, use rules to set reminders to keep everyone informed.
Lists can be shared with users so you can manage permissions and you can be owner of lists
You can boomark Lists using the favorites feature
Can create a new list from existing excel data
Able to preview a list before it is created
You can chose an icon and a color for you lists to make distinctions between different lists
Lists can be saved as draft till you are ready to share with others
You can comment on individual list items and also mention someone
You can design your own card views
Data availability and accessibility via Graph API
As you can read it has lots of features and covers a lot of scenarios which were not possible before in SharePoint lists so let’s have a look into them
Rule based email sending capabilities, earlier we used to write workflow or event receivers or Flows
Grid or card views , earlier we used to customize using JSLink, Jquery, JS etc
Earlier a whole site has to be created even though only a list was needed
In past following requests had come to be from business users which are avaialble by default now
Save as draft before it is ready to be released
Different icons to visualize it better
Simple form customziations can be done by Rules earlier we had to inject JS in edit, new or view forms
We can clearly infer that Microsoft 365 Lists are smart, powerful and easily replace SharePoint lists so we don’t need them anymore. With ability to add this in Teams we can see it is more flexible and very well integrated in Microsoft 365.
We can also infer that a need of Teams sites in SharePoint is even less now and if you are using Microsoft Teams along with Lists probably you don’t need SharePoint team sites.
As as ending note I am really forward to this new app which will be extremely useful and I would like to move most of SharePoint list to new Microsoft 365 Lists.
One of the things in which a lot of people were interested and I also get to know was about Private Channels in Microsoft Teams. Currently we are able to create Channels but they are not private and can be accessed by all Team members.
Apparently this is the most sough after feature in Teams in User Voice. Latest information I got from two guys from Microsoft in a session about Teams was Private Channel will be available in end-October and might be available in Nov to Tenants
Interestingly the Private Channel will have it’s own SharePoint site collection and not as a folder in existing SharePoint site as it happens now. It will only have four Apps available to be used in beginning for rest of Apps you have to go to main Team.
As explained to me is that idea is to get the Private Channel usage going and then later more Apps will be made available.
Some people were concerned with new Site Collection being created for each Private Channel but this seems to be logical as we do not want permission broken folder in our library as it will be a nightmare for future and having a site collection of it’s own makes it scalable.
If your organization has decided to split your company or rename or for any other reason domain needs to be changed then SharePoint will be impacted. In the first part I had explained how to do user migration from SharePoint point of view.
Next step is to do Server Migration of SharePoints in new domain.
What is the recommended way to do this?
Note that Microsoft does not support chaning domain in same existing servers. It means you have to create a new farm in new domain with new service accounts and then do a data migration.
Broadly these are the steps to do it
Create a new farm same as previous one or an upgraded one(scale) if needed.
Create new service accounts in new domain to be used in new farm. Use these accounts to create and configure new farm.
Migrate all Service Applications like Managed metadata service, Search service, User profile service, Workflow manager etc
Create web applications same as previous farm
Deloy any custom code WSP from the previous farm to new one
Use database attach upgrade process to migrate content databases and attach to newly created web applications.
Configure any SharePoint hosted app or provider hosted app
Test and verify that all data has been migrated and also custom code as working as expected
Above are very broad steps, if you have done any upgrade such as SharePoint 2010 to 2013 or SharePoint 2013 to 2016 then you will find the steps familiar.
Although you always expect these steps to be done smoothly you know it will never be like this.
Below are some things you might experience or not experience but I am listing then down from our experience