SharePoint Online has been there since the start of Office 365, initially based on SharePoint 2010, and then has evolved.
Because it started with SharePoint 2010, SharePoint Online has been providing some capabilities and features from SharePoint 2010, such as workflows.
Well, the SharePoint 2010 workflow capability is going to be retired with the following schedule:
- Starting August 1st, 2020, SharePoint 2010 workflows will be turned off for newly created tenants
- Starting November 1st, 2020, Microsoft will begin to remove the ability to run or create SharePoint 2010 workflows from existing tenants
SharePoint 2013 workflow capability is not impacted (yet?).
This means if you have implemented on your SharePoint Online some SharePoint 2010 workflows, you need to start looking to move forward with Power Automate (also known as Flows.
To help you identify if you will be impacted, Microsoft has released a tool to scan and analyse your SharePoint Online environment called SharePoint Modernization Scanner.
- You need to download the SharePoint Modernization Scanner here https://github.com/SharePoint/sp-dev-modernization/blob/dev/Tools/SharePoint.Modernization/Releases/SharePoint.Modernization.Scanner.exe?raw=true
- Then you need to grant access to your environment using either an Azure AD App-Only or the SharePoint App—Only
- Launch the scan using either of the above options
Create the Azure AD App for the modernization scanner
- Create a self-signed certificate using either makecert.exe from the Windows SDK or the script available here https://docs.microsoft.com/en-us/sharepoint/dev/solution-guidance/security-apponly-azuread#setting-up-an-azure-ad-app-for-app-only-access
- Connect to your Azure AD portal (either https://portal.azure.com/ or https://aad.portal.azure.com/) and reach the Azure Active DirectoryApp Registrations blade
- Register a new application with the following settings:
- Supported account types: Accounts in this organizational directory only
- Redirect URI: web; not need for setting an URL
- Grab the Application ID
- Then grant the permissions to access SharePoint by accessing the API Permission to grant Sites.FullControl.All for the SharePoint workload under the Application Permissions and then Grant the permission
- Finally upload the self-signed certificate by accessing the Certificates & secrets blade
- You are good to go (see below for the User the Modernization Scanner section)
Create the SharePoint App for the modernization scanner
- Connect to your SharePoint tenant and call the appregnew.aspx page; the URL will looks like https://<your tenant name>.sharepoint.com/_layouts/15/appregnew.aspx
- There you can generate the SharePoint App by clicking the Generate buttons for both Client ID and Client Secret and manually filling up the remaining fields
- Grab both the Client ID and Client Secret generated
- Then you need to connect to your SharePoint Online administration portal to access the appinv.aspx page; the URL will looks like https://<your tenant name>-admin.sharepoint.com/_layouts/15/appinv.aspx
- Then fill up the App ID with the information you generated above and look it up and add the below XML code in the App’s permission field and hit the Create button
<AppPermissionRequests AllowAppOnlyPolicy=”true”>
<AppPermissionRequest Scope=”http://sharepoint/content/tenant” Right=”FullControl” />
< /AppPermissionRequests>
- Confirm you are trusting the application you are granting permission to
- Once completed you are returning back the the home page of the SharePoint Online administration portal
- The newly created app will be listed in your Azure Active DirectoryEnterprise application and you can search for it using the Client ID
Use the Modernization Scanner
- After executing one of the above steps and downloaded (https://github.com/SharePoint/sp-dev-modernization/blob/dev/Tools/SharePoint.Modernization/Releases/SharePoint.Modernization.Scanner.exe?raw=true) the scanner, launch the scanner (SharePoint.Modernization.Scanner.exe)
- Then select the option you have configured above; either Azure AD App or SharePoint App (called Azure ACS) and fill the corresponding application ID and secret/certificate
You can note you can also use username and password (also with MFA) but this will only works if the user account has access to the site to be scanned; this will not scan the entire SharePoint environment for you, you need to fill up the exact URL of the site and have the permission. This means also if you have multiple SharePoint sites, you will need to repeat these steps for each sites
- Then (if you one of the App options), define if you want to scan your entire SharePoint tenant or one or more sites
- Define the modernization mode you want to analyse, in this context you should choose Classic workflow usage (you can also select the last option All of the above)
- Define few additional settings related to performance or few details (like site usage or user information); the options are defined as below
- Number of threads: the scan is multi-threaded, default is 10 but for larger scans 20-30 threads delivers a better scan performance (your mileage might vary)
- Don’t use search: if you’re not interested in page/site usage information then you can select this option. As this removes one search query per site collection, it will make the scan slightly faster
- Don’t include user information: check this box if you’re not interested in seeing user information (user names) as part of the produced data
- Exclude lists: For the “Modern list and library experience” scan you can exclude lists that are only blocked due to an OOB reason
- Export page details: By default the scan isn’t exporting detailed web part information (web part properties) as that dataset can be huge. Check this box if you would like to have the full web part option data
- Don’t generate reports: by default you get Excel-based dashboards as scan output, but you can skip these if you’re only interested in the raw CSV files
- Disable feedback: the scanner will send feedback to Microsoft to help improve the scanner. If you don’t like that, then feel free to check this box
- Separator: the default separator for the generated CSV files is a comma, but you can change this to semi-colon if you would prefer that
- Date format: the default date format in the generated CSV files is month/day/year. You can optionally switch this to day/month/year
- You are ready to scan your environment; NOTE the interface is switching to a command line interface
- Depending of your options and size it may take some time to generate the reports
- Once completed you will find the reports in the same location than where the scanner (SharePoint.Modernization.Scanner.exe) is located; you can then identify which site(s) is still using SharePoint 2010 workflow and if it can be migrated to Power Automate