In this example I demonstrate how to create a simple solution that allows users to submit a request to a list, then a workflow fires that updates the request ID field with our custom ID number.
ID numbers, reference numbers, ticket numbers…this is something that regularly gets asked to be a part of any SharePoint solution or request based system. My first thought when this is required is “easy, we can just use the SharePoint item ID column and use that”. However, creating a simple calculated column that leverages the in-built ID column is not as easy as it seems.
My first attempt at creating a custom ID column involved creating a new calculated column, and appending some text before the ID and then inserting the ID column into the formula, like this:
="REQ-00"&[ID]
The problem with this approach is that when new items are added, the ID appears to “slip” resulting in the custom ID column having no ID number being pulled from the SharePoint ID.
Custom ID column – modern SharePoint
1. Pre-requisites
Before you begin you will naturally need to create either a list or library in SharePoint, and the relevant apps checked as part of your O365 license.
2. The setup
Create a new column, with the type Number – I called this ‘solIncrementNum‘
Create a new column, with the type Calculated – I called this ‘solReqNum‘, later renamed ‘Request Number’
In the formula field, add the following: ="SOL-00"&[SolIncrementNum]
For the Data Type, select Single line of text
Setting the formula for the solReqNum column in list settings
NOTE: for the Request Number formula if you want to prefix your custom ID with something else just replace what’s between the ” “ in the formula field above.
3. Build the Flow
Flow action: when a new item is created
Create a new flow from the template “when a new item is created, complete a custom action”
Give your Flow a name, I called mine “Populate Solution Request Number”
In the “when a new item is added” step, make sure the site address and list name are the same as the list you built the custom ID column for earlier
Step 1 of the Populate Solution Request Flow
Flow: update item
Press + New step, start typing “update item”, select the update item action from the selection
Select the site in question, then copy and paste the List Name from the previous action
Make sure this action has the following fields set:
Id: ID
Title: Title
solIncrementNum: ID
NOTE: make sure that when you set these fields, that the values you use are coming from the “when a new item is created” action.
Step 2 of the Populate Solution Request Flow
Now when new items are created within the list or library, the flow will fire and create a new request number.
Modern SharePoint list with Flow that populates Request Number
This is a take on my a previous post on creating an a – z page in classic SharePoint, but this time using modern SharePoint pages. If you want to take a look at the classic SharePoint example, please click on the link below.
Finally, you can make your root site a modern communication site or a modern team site! Using the new PowerShell cmdlet: Invoke-SPOSiteSwap, switches the location of a source site with another target site.
Note: the source or target sites cannot be “associated” with an Office 365 group or connected to a hub site.
Site owners can now associate their sites to a hub they have permissions to join. Previously this ability required site collection level admin privileges.
The activity highlights shows you if someone you work with edits, comments, or @mentions you on files you’re working on. This is displayed in the File Hover Card, with a link to the relevant activity.
Now you can find relevant content at the top of the Shared with me view in OneDrive. Files which are recommended based on your working relationships will surface to help you find trending information faster and discover new content.
You can already comment on Office docs in Office on the web, but now you can comment on other file types in OneDrive on the web such as PNGs, JPGs, or PDFs. You can also comment while using the viewer in OneDrive.
OneDrive will be natively integrated into the Samsung Gallery app, providing automatic syncing of your photos and videos and enabling new protection and cross-device experiences. The Galaxy Note10 will be the first to get the OneDrive integration, with more Samsung devices to follow.
When you schedule “focus time” through MyAnalytics, Teams will automatically help you stay focused by changing your presence to “focusing” and silencing all notifications during the focus period (based on your priority access settings).
The Microsoft Teams Room app has been updated to include a “content camera” feature. This detects the whiteboard in the room, crops and frames it, and shares the content with remote participants.
Meetings First is a configuration mode that allows organizations to continue to use Skype for Business Server for their chat and enterprise voice needs, but move their meetings workload to the cloud.
Any version of Skype for Business Server is supported, though more recent clients will have a better coexistence experience. In addition, organizations need to be licensed for Teams, including Audio Conferencing if PSTN dial-in/dial-out functionality is required.
SoftBank has released their UniTalk calling plans to Office 365 customers in Japan. The Softbank Calling Plans enables SoftBank to sell and support PSTN calling services specifically for the Japanese market.
Audio Conferencing via Direct Routing for GCC High and GCC DoD
o Conferencing via Direct
Routing for GCC High and GCC DoD
This feature enables participants to join your organization’s meetings using a standard phone number. Configuring this feature requires your GCC High or GCC DoD organization to use its own numbers for dial-in access and all meeting dial-outs to phones are via Direct Routing.
Currently in developer preview, Personal apps can extend and customize Microsoft Teams for your organization. It provides a capability for people in your organization to use 3rd party apps within Teams.
Personal apps in developer preview has been rolled out, with a a broader target rollout in the last quarter of 2019.
The
enhanced Assignments tab now shows a clear view of what’s coming up next, when
creating a class assignment, educators can add resources from your Staff or PLC
team. Simply select Add resources on your assignment and choose it from the
file picker. You no longer need to move your content between teams.
In August the PowerApps team added videos to the release notes show casing upcoming innovations as part of the wave 2 releases. You can see the video below:
PowerApps Portals now uses the selective entity caching approach to improve reliability and performance of your portal. With this update, you can now see changes reflected on the portal immediately.
PowerApps component framework can now see changes in the test harness as they are made and push components directly into an org using the CLI.
The push capability will make you more efficient because it bypasses the custom component versioning requirements and does not require you to build your solution in order to import into your development environment.
The watch capability removes the need to reload your test harness after every change is made.
The SetFocus function gets data entered faster by having the app position the cursor in the input field where we should begin. When you go to validate, the app will take you directly to the offending entry, even if it scrolled off screen.
You can now simplify large formulas by dividing them into named sub-formulas, eliminate redundant sub-formulas, and easily work with functions that return records.
Inline navigate to all of our modern model-driven designers
To reduce the amount of clutter within your browser while building apps, Microsoft have introduced an option to open the modern view and form designers inline. To get back, you can simply press the back button in the designer.
Data source experience & Common Data Service views
New data source experience and Common Data Service views that allow adding data sources into the app, or creating new connections without inserting a control have been updated.
Also updated is enabling a Common Data Service entity view that can be selected in the property pane and the Items property. The property pane will update the Items property to add the Filter function taking the the view name as the filter.
Now in public preview, this feature enables canvas apps to be shared with guests of your organization! This enables teams of individuals made up of different organizations participating in a common business process to access the same app.
Sharing canvas apps with guests of your organization
Please note: there are also several updates for the PowerApps Unified Interface that I haven’t been able to list here, but you can find all the details from the link below:
Work-in-progress diagrams and slides in PowerPoint
You can now transform standard shapes in PowerPoint, Word, and Excel into rough outlines that look handdrawn and convey a sense of in-progress work. Sketched Shapes is perfect for building wireframes, drafting designs, or adding an artistic touch.
Work-in-progress diagrams and slides in PowerPoint
You can now get a link to an individual slide from PowerPoint and share it with recipients. This will help others land on the most relevant information without having to find what you were trying to show them through a stack of presentation slides
Recently announced, a new Yammer mobile experience to iOS and Android devices. Some highlights include a modernized feed experience that reduces visual clutter and delivers improved readability, live events, and townhalls that you can view on the go; Seen Counts to let you know how many people have viewed your messages; and group search to cut down on search time and find the information you need.
I’ve been suitably inspired by Andrew Warland’s fantastic two-part series documenting his approach and migration to SharePoint Online, so much so that I thought it would be a fun series to write about my own experiences.
It is’nt my intention to necessarily document Microsoft best practice in this series, rather just to explore some of the challenges, sucesses and experiences I notice along the way.
The current situation
My organisation has recently made the decision to move to to the cloud, with O365 being the naturally preferred destination. SharePoint has been well embedded, and heavily used within the business for several years, with on-premises SharePoint 2010 currently in production.
Finally, in terms of the SharePoint architecture and data volume, there are only three web applications to merge together as part of the migration effort. However, there are several site collections within our main intranet web app, plus many sub-sites nested within them, meaning the huge database sizes behind these site collections could prove difficult come migration time.
A note on the new, flat structure
Our current environment has a well established top-down structure in place that is generally consitent across the environment.
Having already made the investment in ShareGate, this will be the tool of choice for the migration. In the version 11.0 release of ShareGate, a new restructure option now allows you to promote sub-sites to top-level sites post inital migration from the source SharePoint environment.
The new restructure option in ShareGate 11.0
Considerations for a successful migration plan
One of the biggest issues to be resolved before we can start any sort of migration activity, is the fact that we have several content databases well over the 200GB recommended general use size limit.
Microsoft best practice suggests that any environment that has site collections, sites, content databases, libraries or lists that exceed the software boundaries and limits should be remediated prior to any migration activity. In this case, the main idea is to split each content database that exceeds 200GB into seperate content db’s, and where neccessary, move or promote sub-sites to site collections and attach new db’s.
Armed with the knowledge of the recent restrcuture functionality coming to ShareGate, plus my own personal feeling that any remediation activities to our current environment may in of itself carry adverse risk to the estate we proposed a different approach.
With all the reporting capabilities at our disposal via ShareGate, I was able to get a firm grasp of what resides within each site collection in our environment, in terms of:
The size of each sub-site underneath the top-level
Number/ size of libraries and lists
Number of items in each of the above
Any workflows running in any of the above
From this I ran a trial migration of a sub-site from SharePoint 2010 to a newly created team site in SharePoint Online.
Pre-migration
Before I kicked off the migration, I ran the source analysis tool within the Migration > Plan section of ShareGate. I noted the following obersavations:
The source analysis within “migration” in the ShareGate tool, although listed as only being able to analyze up to SharePoint 2013, does in-fact work for 2010
ShareGate source analysis
The source analysis cannot run at the sub-site level, meaning that you need to run it at the site collection level then just filter down to the sub-site in question through the report itself
Source analysis gives you a report of all checked-out files within a source site.From this, I created a simple view within each of the libraries that contained checked-out files to send to the site owners for action
Post-trial migration
The trial migration completed successfully as expected, however there were several interesting results I noted:
1. Everyone receieves a welcome email
If you migrate the permissions, once the source permission groups migrate each user will recieve a welcome email to the new SharePoint Online site.
Publishing sites seem to be the trickiest to migrate, especially those with custom master pages or page layouts. When migrating publishing sites, the Pages library is migrated wholesail, meaning the content won’t reside in the SitePages library (where new client-side pages are located).
3. Un-editable modern homepage
After the migration had completed, the new team site homepage threw up an error every time you tried to edit it.
I tried some of the documented resolution steps found here, but none of them worked for me. My solution was to just create a new page to replace the broken homepage, add all the relevant webparts and make this one the new default homepage.
Transforming classic publishing site pages to client-side pages
Publishing site pages will all be migrated as classic SharePoint pages, without the modern look and feel of a client-side page. My understanding is that for publishing pages with custom page layouts, additional metadata or custom content types will need to be transformed via PowerShell and creating a custom mapping file.
(I’m planning on writing a seperate blog post walking through an advanced publishing page transformation in the near future)
Its also worth considering that in the release notes for ShareGate 11.0 it makes mention of the fact they are researching the ability to transform classic to modern pages, so that could well simplify this process in a future release.
Conclusion
Overall, I was happy with our trial migration and believe it is a viable approach for us to move from on-prem to O365. Some lessons learned for myself would be to consider and SharePoint permissions audit prior to migration to remove any unecessary permissions, send an inventory out to site owners aswell as checked-out files, all in the name of reducing the migration effort.
This will be an ongoing series of posts, which i’ll focus more the on the nitty-gritty of the migration effort than anything else, but as always if there is any feedback or suggestions on how to improve this site, please let me know!
Update: The SharePoint Starter Kit is now a solution that’s available to apply from the SharePoint Online Provisioning Service: https://provisioning.sharepointpnp.com/
This is second part of my two-part series on how to provision and deploy the SharePoint starter kit into your SharePoint tenant. You can read part one below:
At this point all the pre-requirement steps should be completed, our Office 365 tenant should have an app catalog site, a dev site collection and a custom user profile service property.
Download the SharePoint Stater Kit
In order to deploy the SharePoint Starter Kit to your tenant you will need to clone or download a copy of the repository. I downloaded a copy of the repository and followed the steps below:
Save the files locally and make a note of their location
Downloading the SharePoint Starter Kit
Deploy the SharePoint Starter Kit
Now for the fun part…deploying the SharePoint Starter Kit to your tenant! Before you begin, make sure you have run the following cmdlet to connect to your tenant:
Deploying the SharePoint Starter Kit in PowerShell
Once the SharePoint Starter Kit has concluded it will provision 3 site collections as well as other tenant level settings like themes, site designs and taxonomy term sets. You will be able to access all the site collections and web parts deployed through the starter kit in your tenant either through the new SharePoint admin center or through the SharePoint app in Office 365.
This post is a reference point for all the restrictions and limitations around the restrictions that apply to file names and file types in SharePoint and OneDrive.
When uploading files into SharePoint or OneDrive that are subject to any of the restrictions, you may receive an error similar to something like this:
What are the restrictions?
Restrictions have become more difficult to untangle in Microsoft 365 with SharePoint and OneDrive, plus the ability to sync. The key takeaway is that the entire decoded file path, including the file name can’t contain more than 400 characters. This limit applies to the combination of the folder path + file name after decoding:
.lock, CON, PRN, AUX, NUL, COM0 – COM9, LPT0 – LPT9, _vti_, desktop.ini, any filename starting with ~$. are not allowed for files or folders
“forms” isn’t supported when the folder is at the root level for a library
You can’t create a folder name in SharePoint that begins with a tilde (~)
Blocked file types
There are currently no known types of files that cannot be added to a list or library in SharePoint Online. Custom scripting must be allowed for custom script file extensions to be work
Temporary TMP files will not be synced to OneDrive
Files that are used by your local computer, such as desktop.ini on Windows or .ds_store on macOS, don’t normally sync
Outlook .PST files are supported, however they are synced less frequently compared to other file types to reduce network traffic
File uploads, names and path length
The file size limit for uploads is 250GB
Each segment of a path cant exceed 255 characters if files are synced to a PC or Mac
The length of the root folder in OneDrive, or synced SharePoint library, plus the relative path of the file (up to 400 characters) cannot exceed 520 characters
In SharePoint Server, the entire path of files can’t exceed 260 characters
Thumbnails are not generated for images larger than 100 MB
PDF previews are not generated for files larger than 100 MB
Sharing
There is a limit of 50,000 items that can be shared within a folder and any sub-folders
You can’t synchronize the Shared with me view grouping of files from a OneDrive for work or school site
Syncing, copying or moving files
Although SharePoint Online can store 30 million documents per library, for optimum performance Microsoft recommend syncing no more than 300,000 files across all document libraries. Additionally, performance issues can occur if you have 300,000 items or more across all libraries you are syncing, even if you are not syncing all items in those libraries.
If you use the previous OneDrive for Business sync client (Groove.exe), the sync limit per library is 20,000 items (including 5,000 items per team site)
Differential sync is possible for Microsoft Office files in the new file format, .docx, .pptx, .xlsx
You cannot copy or move more than 100 GB of the total file size
You cannot copy or move more than 30,000 files
Each file being copied/ moved must be less than 15 GB
SharePoint libraries/ lists can hold 50,000 major versions and 511 minor versions
When using onedrive.com, you can only copy up to 2500 files at one time
How it used to be – restrictions in SharePoint Sever
Here are some, more specific restrcitions again applying to site collections, sub-sites, libraries or lists:
Teams: Blur background to improve video call focus
The new Background Blur feature in Teams eliminates potential distractions that might be lurking behind you on video calls and keeps the focus on you. Once you’re in a meeting, select the more options button (that’s the one that looks like an ellipsis), then click Blur my background. You’ll appear nice and clear while everything behind you is subtly concealed.
This feature is currently available in the desktop app for most newer PCs. To find out if it’s available on your device, select more options while in a meeting.
Teams: blur background to improve video call focus
SharePoint: SharePoint migration tool to migrate your files to the cloud
At Microsoft Ignite several new capabilities were annonced as coming soon to the SharePoint Migration Tool. This tool provides a simple, no cost, and intuitive point and click interface that helps you migrate your existing SharePoint, OneDrive, and File Shares content to SharePoint Online, OneDrive for Business and Microsoft Teams.
Microsoft are introducing a completely revamped SharePoint Admin center that draws heavily on our modern design principles. It’s designed to help IT achieve more, so their users can achieve more.
Microsoft are making it much easier to manage Office 365 group-connected sites by allowing SharePoint administrators to manage ownership, change sharing settings, and delete and restore sites.
Admins can now more easily manage existing hub sites, and associate existing sites with a hub site, even in multi-geo scenarios.
Finally, Security and compliance enhancements in the admin center include access control policies for unmanaged or non-compliant devices, idle-session sign-out, and the ability to restrict or allow access from known IP address ranges.
Office 365 has earned HITRUST Certification from the Health Information Trust Alliance, the widely adopted security and risk management framework in the U.S. healthcare industry. This also includes the National Institute of Standards and Technology, or NIST, Cybersecurity Framework certification. The HITRUST Common Security Framework (CSF) helps health organizations address security, privacy and regulatory compliance through a comprehensive, flexible, framework of both prescriptive and scalable security controls.
Office 365 now enables health and life sciences organizations to be trusted data stewards and grow capabilities to transform patient care and experiences.
Explorer view in classic SharePoint sites has been a widely used bypass for users actually interacting with SharePoint libraries for a number of years.
Now in some cases that’s for good reason, from being able to upload multiple files easily in older versions of SharePoint to a familiar navigation of nested folder structure.
With modern SharePoint libraries, the old school ribbon has gone the way of the dodo…and so it seemed had open with explorer.
But fear not! If you still use IE you can still use the trusty open with explorer
How to open with explorer
Go to the library that you wish to open with explorer
On the right-hand side, press the drop-down icon next to all documents
Press View in File Explorer
Some weird stuff will then happen, where a classic 2013 version of your SharePoint site/library will open in a new tab and for me I got a message at the bottom of the browser window to allow popups from Microsoft then got another, more serious popup like this (multiple times):
I pressed allow to all of these then voila! we have file explorer!
PLEASE NOTE:
File explorer only works for Internet Explorer, I tested in IE11 and it categorically doesn’t work in Firefox, Chrome, Edge or Edge Dev (beta).
Have you ever been asked to hide a list or library from a SharePoint site? If so, you go straight for selecting ‘no’ to displaying the list or library on the Quick Launch or removing it from the navigation. However, your eagle eyed users notice the handy view all site contents option and see that it is still listed there – they want it gone!
Luckily, all you need is SharePoint Designer and it is as simple as a click of a button…
(These steps were created using SharePoint Server 2010)
Open the site that where list or library resides in SharePoint Designer
Under Lists and Libraries – Select the list or library you wish to hide
On the main list settings page – find the Settings section
Check the Hide from browser option
Thats it! when you option the view all site content page now, that list or library will no longer be showing. Also, if you want to re-instate it at a later date, just un-check the box and it will re-appear.
This also works for SharePoint 2013, 2016 and SharePoint Online, under the site contents page.
One thing that has been bugging me recently is being able to get a list of all my Office 365 SharePoint group sites all at once. With the new SharePoint Admin Centre due to be rolled out any time now, this will soon be a solved problem, but i just want a list of all the sites i’ve created now, should be simple right?
An easy way to get a list of all SharePoint Online/ Office 365 group sites
There are ways online to do this using PowerShell, but surely there has to be an easier way…here’s what I did:
Navigate to the Office 365 SharePoint group sites landing page
Click in the search bar – press enter to start a search
In the all results type filter – change to sites
Press enter
Bingo! All of your SharePoint sites are now showing, you’ll notice that the classic sharepoint sites and Office 365 SharePoint group sites are both included in the results, which is exactly what I wanted.