Welcome to the SharePoint Blog! Learn best practices, news, and trends directly from the SharePoint team.
Bill Baer
Microsoft
‎04-06-2017 09:05 AM

New support for # and % in SharePoint Online and OneDrive for Business

‎04-06-2017 09:05 AM

@williambaer

 

As William Shakespeare wrote in Romeo and Juliet “What's in a name? That which we call a rose by any other name would smell as sweet.”

 

Files are as unique as the people who create them and we’re constantly working in SharePoint Online and OneDrive for Business to support a broad array of types and naming conventions.

 

In the upcoming weeks, we’ll be shipping support for # and % as supported characters in file and folder names across document libraries in SharePoint Online and OneDrive for Business.  This will allow people to create, store, and sync files containing # and % characters whether those characters are used as a prefix or suffix to the file or folder name.  # and % will be limited to use in file names in addition to SharePoint Online and OneDrive for Business document libraries and related folders.  The use of # and % outside of document libraries is not supported at this time.

 

characters

 

Getting Started with # and %

# and % support is not enabled by default in your Office 365 Tenant and will be gradually introduced over the next several weeks.  You can immediately opt in to this release starting today using the Windows PowerShell cmdlet provided later in this post.

 

For new Office 365 Tenants, in June 2017, support for # and % will enabled by default when the Tenant is provisioned.  If you would like to opt out of # and % support for your Office 365 Tenant using the Windows PowerShell cmdlet provided later in this post you must do so by September 2017.

 

All existing Office 365 Tenants that have not opted into # and % support by H2 2017 will have # and % support enabled by default.

Enabling # and % Support (Tenant Administrators)

To enable # and % support using SharePoint Online PowerShell commands, you must be a SharePoint Online global administrator.  There will be no initial administrator web-based user experience (e.g. SharePoint Online and/or OneDrive for Business admin centers).

 

Before you can run SharePoint Online commands, you must install the SharePoint Online Management Shell module and connect to the SharePoint Online service. For more information, see Connect to SharePoint Online PowerShell.

 

These commands require version 16.0.6323.1200 of the SharePoint Online Management Shell or greater.  To download the latest version of the SharePoint Online Management Shell visit https://www.microsoft.com/en-us/download/details.aspx?id=35588.

 

NOTE Prior to enabling support for # and % in your Office 365 Tenant, ensure any 3rd party solutions you are using have been updated to supported the new APIs necessary to support this change.  For information on updated APIs for # and % support see also https://dev.office.com/blogs/upcoming-changes-to-sharepoint-and-onedrive-for-business-apis-to-suppor....  It may take up to one hour for the setting to propogate once run.

 

Command:

 

Get-SPOTenant/Set-SPOTenant

 

Parameter:

 

SpecialCharactersStateInFileFolderNames

 

Value:

 

Allowed

Allows # and % characters in file and folder names in SharePoint Online and OneDrive for Business document libraries.

 

Disallowed

Disallows the # and % characters in file and folder names in SharePoint Online and OneDrive for Business document libraries.

 

NoPreference

# and % support will be enabled by Microsoft on your Office 365 Tenant when available. NoPreference state is the default state before we enable # and % on behalf of Office 365 Tenants following the schedule mentioned previously. In this state, # and % are turned off and tenant admins can run Set command to switch it to either Allowed or Disallowed. Once it is set by tenant admins, we will not change the setting when we enable on # and % on behalf of Office 365 Tenants. In addition, this is a read-only state, so it can not be set by running the Set command.

Frequently Asked Questions

Q:  Is support for # % enabled by default in my Office 365 Tenant?

A:  No.  Support for # % must be enabled by the Tenant Administrator, unless your tenant is created after the June timeframe, as noted above.

 

Q:  As a developer are there any API changes I need to be aware of?

A:  Yes.  For developer documentation and updates refer to https://dev.office.com/blogs/upcoming-changes-to-sharepoint-and-onedrive-for-business-apis-to-suppor....

 

Q:  At what levels of the system is this support being added?

A:  Files and folders with SharePoint Online and OneDrive for Business document libraries will now be able to support # and % in their file name.  While SharePoint lists and libraries can have # and % in their URLs, there are no plans to enable their use through the SharePoint user interface at this time.  In addition SharePoint sites (Web objects) and site collections (Site objects) can not have # and ; in their URL.

 

Q:  Can I search for files containing # and % in the name(s)?

A:  Yes; however, # and % are escaped characters therefore cannot be used independently in the composition of a query.  I.e.  “where contains ‘#’”.

 

Q:  When will the rollout of # and % support be completed?

A:  Rollout will commence in June 2017 for new Office 365 Tenants and H2 CY2017 for existing Office 365 Tenants.  Scheduled completing depends on a number of factors and will be updated throughout the rollout.

 

Q:  Does the Groove sync client support # and %.

A:  No.  Support is limited to the new OneDrive for Business sync client.  To determine which sync client is best for your scenario or which sync client you are using see also https://blogs.technet.microsoft.com/wbaer/2017/03/23/which-onedrive-for-business-sync-client-is-righ....

20 Comments
James Larsen
Occasional Visitor

How about other special characters - like the trademark or copyright symbol?

David Green
Occasional Visitor

Enabled the special character feature on our tenant using Sharepoint Online Management Shell cmdlet. The feature does not seem to be working, even though Get-SPOTenant shows the option is set to allowed. Maybe I am being impatient and it takes time to apply the feature after the command is run to enable?? We do have the latest OneDrive for Business client installed as well, so that is not the issue.

 

***Update 4/18/17***

 

After several days, the feature is now working. This is such a welcomed change...something we have waited a long time for. 

Bill Baer
Microsoft

The rollout is in progress and will take some time to be available to all Office 365 Tenants.  The Allow param will ensure your Tenant is opted-in for the experience during the rollout.

Ferenc Farkas
Frequent Visitor

Hi,

 

Is there a plan to enable this to consumer Office 365 / OneDrive users?

 

Thank you.

null null
New Contributor

Good stuff Bill!  This is removal of a deployment blocker for file migrations.

Craig Humphrey
Contributor

The SpecialCharactersStateInFileFolderNames property doesn't apear for my two Australia East based tenants.  I take it that the property will get rolled out over time and then some time after that the enforcing of the property will happen?

Checked multiple tenants this morning and no such property is yet available... Is there some timing that you can share regarding availability in the US?

Paul Haskew
Microsoft

Please make sure you are using the latest SharePoint Online Management Shell, version 16.0.6323.1200. You can download it here: https://www.microsoft.com/en-us/download/details.aspx?id=35588. Please note you will need to uninstall your existing version, and then install the latest.

Updating to the latest SharePoint Management Shell did the trick...  Thanks!  Would be nice if this application were delivered via UWP!  

 

  1. Ran the following script successfully:

    $userCredential = Get-Credential -UserName "<globaladmin@domain.com>" -Message "Type the password."Connect-SPOService -Url https://<domain>-admin.sharepoint.com -Credential $userCredentialSet-SPOTenant -SpecialCharactersStateInFileFolderNames Allowed
  2. Created file named "##%%badfile.txt" in OneDrive synched directory and received imediate notice of bad file name (cannot sync file)
  3. Exited Onedrive (personal and business - new single client)
  4. Started OneDrive desktop app (again)
  5. Reports "Can't upload files", shows ##%%badfile.txt in view sync problems list due to bad file name...

Is there some period of time before feature is enabled?  Get-SPOTenant shows "Allowed"...

Christopher Webb
Occasional Contributor

Awesome, been waiting for this. If we enabled this, does anyone with an older groove client just stop working all together or they just won't support the new characters? 

Brian .
Occasional Contributor

 @Ed, over the next several weeks. All we did today is opt in to get it sooner rather than later.

The feature did start working for me after a few hours in each tenant... Fantastic to have this old issue behind us!!!

Mike Ingebretson
Occasional Visitor

How do I do this using a Mac?  There doesn't seem to be a SharePoint Online Management Shell for Mac clients.

Robert Woods
Frequent Contributor

 Great news! This will ease the current migration we are performing from on premises file shares to OD4B!

Mark Jones
Occasional Visitor

This worked great.  Took a couple hours for ODFB to recognize.  Updated dozens of tenants using this format.

$adminUPN="xxxx@xxxxxxxx.com"
$orgName="tenantnameinsharepointURL"
$userCredential = Get-Credential -UserName $adminUPN -Message "Type the password."
Connect-SPOService -Url https://tenantnameinsharepointURL-admin.sharepoint.com
Set-SPOTenant -SpecialCharactersStateInFileFolderNames Allowed

Ashish Kanoongo
Occasional Contributor

Hello Mark

I tried same script with my credentials. I am able to login and connect without any issue, but in last line I am getting following error, Am I missing anythig

Set-SPOTenant : A parameter cannot be found that matches parameter name 'SpecialCharactersStateInFileFolderNames'.

At C:\Scripts\AllowSpecialCharacters.ps1:5 char:15

+ Set-SPOTenant -SpecialCharactersStateInFileFolderNames Allowed

+ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

+ CategoryInfo : InvalidArgument: (:) [Set-SPOTenant], ParameterBindingException

+ FullyQualifiedErrorId : NamedParameterNotFound,Microsoft.Online.SharePoint.PowerShell.SetTenant

 

 

 

See Paul Hasket's comment above.... Essentially, you need to make sure you are running the latest version of the SharePoint Online Management Shell.

Ashish Kanoongo
Occasional Contributor

Thanks Ed for pointout. It works and assuming this will take some time to update on tenant.

 

 

Patrick Vargas
Occasional Visitor

Awwsome!!

Yoav Rheims
Contributor

Just backed up 75 Gb of data into our shared SharePoint Team sites, this update is a freaking life saver!