IceFire BlogTips on using SharePoint in a multilingual environmenthttp://blog.icefire.ca/
http://www.rssboard.org/rss-specificationBlogEngine.NET 2.9.1.0en-UShttp://blog.icefire.ca/opml.axdhttp://www.dotnetblogengine.net/syndication.axdMy nameIceFire Blog0.0000000.000000Localization of SPFx webparts in Microsoft Teams tabsThis post was prompted by a conversation with <a href="https://twitter.com/bob1german" style="">Bob German</a>, a Partner Technology Architect for Microsoft.<br><br>In his <a href="http://www.collabsummit.org/sessions/" style="">talk </a>at the <a href="http://www.collabsummit.org/" style="">Collaboration Summit</a> in Branson MO, he touted the localization features of <a href="https://docs.microsoft.com/en-us/sharepoint/dev/spfx/web-parts/get-started/using-web-part-as-ms-teams-tab" style="">developing custom tabs for Teams using SPFx</a>.<div><br></div><div>We chatted a bit after that, and discussed the fact that Microsoft Teams has a language setting that is independent of the language settings in the Office 365 user profile, which SharePoint uses.&nbsp; I was of the opinion that even within a Teams tab, the SPFx webpart would follow the SharePoint language setting.&nbsp; So let's try it out.</div><div><br></div><div>There is some very useful very complete guidance for localizing SharePoint SPFx webparts here</div><div><div><a href="https://docs.microsoft.com/en-us/sharepoint/dev/spfx/web-parts/guidance/localize-web-parts" style="">https://docs.microsoft.com/en-us/sharepoint/dev/spfx/web-parts/guidance/localize-web-parts</a></div><div><br></div><div>It is simple to create a small example webpart and localize the manifest, the property pane, and the content using the SharePoint guidance.&nbsp; In this case, it was localized in English and Dutch.&nbsp; Turning that webpart into a Microsoft Teams tab is just a matter of adding an extra manifest file and zipping it.</div><div><br></div><div>Add the webpart's sppkg file to your site catalog and&nbsp;ensure that the “Make this solution available to all sites in the organization” option is checked, so that the web part can be used from Microsoft Teams, then Deploy.</div><div><br></div></div><img src="/FILES%2f2019%2f03%2fdeploy.png.axdx"><div><br></div><div>Then in Teams, select "Manage team" then the Apps tab, then "More apps" and "Upload a custom app".&nbsp; Upload the "manifest.zip" file created earlier, which refers to the app in your app catalog.&nbsp; Then click on the app name and click on Install, then setup and Save.&nbsp; Let's have a look.</div><div><br></div><img src="/FILES%2f2019%2f03%2fen-en.png.axdx"><div>Here, both my Teams language setting and my SharePoint language setting are English.&nbsp;</div><div><br></div><div>Let's change the Teams language setting.&nbsp; You can do that by clicking on your picture then on Settings and selecting a new language.</div><div><br></div><img src="/FILES%2f2019%2f03%2fsetting.png.axdx"><div><br></div><div>I picked Dutch and re-started the Teams app.&nbsp; So now the Teams interface, near the top of the screenshot, is mostly in Dutch, while the webpart is still in English.</div><div><br></div><img src="/FILES%2f2019%2f03%2fnl-en.png.axdx"><div><br></div><div>If we do it the other way around, with the Teams setting in English and SharePoint in Dutch, we have the opposite effect, the Teams interface is in English and the webpart/tab is in Dutch.&nbsp; So the SharePoint language setting determines the language of the localization of the custom tab.</div><div><br></div><img src="/FILES%2f2019%2f03%2fen-nl.png.axdx"><div><br></div><div>We will go further still. Go to the SharePoint site that was created when the team was created.&nbsp; Go to the site settings and remove Dutch as an alternate language of that site without removing it as your personal language preference.</div><div><br></div><img src="/FILES%2f2019%2f03%2falt-nl.png.axdx"><div><br></div><div>Go back to Teams and now the webpart is back to English.&nbsp; This is because the language of the tab is not just determined by your Office 365 profile language setting, it is determined by the ability of the associated SharePoint site to render its interface in that language, as though the tab was a webpart on that site.</div><div><br></div><div>Many thanks to my colleague Srikanta Barik for his help.</div>http://blog.icefire.ca/post/localization-of-spfx-webparts-in-microsoft-teams-tabs
http://blog.icefire.ca/post/localization-of-spfx-webparts-in-microsoft-teams-tabs#commenthttp://blog.icefire.ca/post.aspx?id=811471a2-59bd-4679-9806-8626771a423dTue, 19 Mar 2019 20:03:00 -1100BlogSharePoint tips365Laplantehttp://blog.icefire.ca/pingback.axdhttp://blog.icefire.ca/post.aspx?id=811471a2-59bd-4679-9806-8626771a423d0http://blog.icefire.ca/trackback.axd?id=811471a2-59bd-4679-9806-8626771a423dhttp://blog.icefire.ca/post/localization-of-spfx-webparts-in-microsoft-teams-tabs#commenthttp://blog.icefire.ca/syndication.axd?post=811471a2-59bd-4679-9806-8626771a423dPhysical vs Logical Topology: How the move to modern sites changes who is responsible for languagesThis is the first of a series of posts based on my talk "Using Communication, Team, and Hub Sites in a Multilingual Organisation".<div><br></div><div><div>Once upon a time, large transnational organizations had many separate SharePoint farms in different countries or regions.&nbsp; This made sense.&nbsp; A SharePoint farm could only handle a few thousand users comfortably before the complexity and the management of the farm wiped out any economies of scale.&nbsp; A large global farm meant you had a lot more to worry about.</div><div><br></div><div>You had to worry about access via internal networks, you had to worry about security and network latency for people accessing the SharePoint farm from a different office.&nbsp; You had to worry about access control: who in the organization had enough knowledge of different users across the organization and of various organizational assets stored in the SharePoint sites to manage all of these users across the world and what they are allowed to do, to set up the governance policies and their exceptions?&nbsp; You had to worry about maintenance windows and support hours when operations spanned many time zones.</div><div><br></div><div>Very importantly, you had to worry about data residency.&nbsp; Many jurisdictions across the world have laws governing where different types of data can be physically stored.&nbsp; That made it difficult to have a single farm that served several different countries.</div><div><br></div><div>The simplest way to deal with all of this was to have separate SharePoint farms in different countries or regions.&nbsp; This is a physical topology.&nbsp; The organization has multiple farms, each farm has multiple web application each web application has multiple site collections, each site collection has multiple sites.&nbsp; All nice and hierarchical.</div><div><br></div><div>What if the organization has multiple languages? Where is language in this physical topology?&nbsp; Every farm that needs more than one language needs to have language packs installed.&nbsp; Installing those is the responsibility of whoever is managing that farm, in other words it is a country or regional responsibility.&nbsp; Different farms can have different base languages and different language packs.&nbsp; Every site has a base language, and the site template from which it is created is language-specific.&nbsp; When new sites are created on these farms, they support a single language unless significant effort is put into having some support for other languages.&nbsp; They are <u>unilingual by default</u>.</div><div><br></div></div><img src="/FILES%2f2019%2f01%2ftopology.png.axdx"><div><br></div><div><div><div>If you are using Variations, then responsibility for languages is much lower down in the hierarchy.&nbsp; All Variation labels need to be within the same site collection.&nbsp; And with Variations, each site is defined by its one language, so each site is unilingual.&nbsp; Variations creates each site using a language-specific site template.&nbsp; Therefore, responsibility for the language of the content is at the lowest level of the hierarchy, within a site collection, and few people have to manage more than one language at once.</div><div><br></div><div>There are two possible exceptions to this general rule: the content type hub and managed metadata service. Both have multilingual features and both are centrally managed.&nbsp; In order for syndicated content types and managed metadata to work properly on sites that support a different language, then whoever is managing these central resources must activate those languages and maintain the translations of the terms and column names and so forth being used.&nbsp; That is an exception, and a topic for another day; in the more general case the physical topology of on premise SharePoint means that language is an issue that is handled locally, within a country and often within a site collection, one language at a time.</div><div><br></div><div>SharePoint Online and in particular Modern sites are different.&nbsp; When you create a tenant, every language pack is already installed.&nbsp; When you create a modern site, all 50 languages are already activated.&nbsp; The templates from which modern sites are created are not very language-specific.&nbsp; There is very little difference between a site created in English and one created in Japanese.&nbsp; If you go to a site that was freshly created in Japanese, you will see it in English, if English is your preferred language because every language is activated.&nbsp; Modern sites are <u>multilingual by default</u>.</div><div><br></div><div>There are no farms or web applications in SharePoint Online or Office 365, only tenants.&nbsp; If you use modern sites you are discouraged from using site collections.&nbsp; You cannot have two modern sites in the same site collection.&nbsp; There is no hierarchy, it is flat.&nbsp; Sites can be clustered around hubs, but that is not the same thing as the type of hierarchy that you had with site collections.&nbsp; And a site that belongs to one hub today can easily move to a different hub tomorrow.&nbsp; Rather that the inflexible physical topology of on premise farms, you have a flexible logical topology.</div><div><br></div><div>There is still the possibility for an organization to have many different tenants, physically hosted in different data centres.&nbsp; Microsoft offers data centres located in over a dozen different countries.&nbsp; What is better, having a single tenant for the entire world, or having different regional tenants, each of them physically located near the users you have in that country?&nbsp;&nbsp;</div><div><br></div><div>Even though SharePoint Online resolves a lot of the hosting, security, and scale problems, you still have the issues of data residency laws and of network latency.&nbsp; But there are so many benefits to having a single global tenant, even more so than in the days of multiple on premise farms.&nbsp; Because now, the boundaries between regional tenants are impenetrable.&nbsp; Getting data from across that boundary is just as hard as getting it from the intranet of a competitor.&nbsp; With multiple regional farms, you could <a href="https://docs.microsoft.com/en-us/sharepoint/administration/global-architectures" style="">share some services across farms</a>.&nbsp;&nbsp;But with SharePoint Online, you cannot search across tenants, you cannot easily share content types or metadata, or benefit from other collaboration opportunities of Office 365 like Groups, Teams, and Outlook.&nbsp; You can't easily transfer staff from one to the other and have information follow them.&nbsp; Office 365 resolves all the other problems associated with a single farm, is solving the data residency and network latency issues worth keeping regional tenants?</div><div><br></div><div>Now even that argument is gone.&nbsp; For larger organizations, Microsoft now has multi-geo, the ability for the data of specific employees to physically reside in different data centres while still enjoying the benefits of a single global tenant.&nbsp; A tenant does not need to have all of its data physically residing in one place, and it is easy for an employee to transfer from one region to another.&nbsp; With a single tenant, you get the added benefits of the ability to share and to find information about documents and about employees throughout the organization.&nbsp; One tenant to rule them all! One tenant to find them!</div><div><br></div></div><div>The impact of this move from the old physical topology to a more flexible logical topology, with flatter structure and where both sites and users can move easily, is that the issue of multiple languages now shifts being from a purely local issue delegated to site collection administrators to being a central problem that must be tackled by HQ at the corporate level.&nbsp; The move of modern sites from being unilingual by default to multilingual by default underlines this.</div><div><br></div><div>Rather than having language as a leaf node of a hierarchy of farms, web applications, site collections, and sites, support for multiple languages has to be designed into the structure from the start.&nbsp; If a hub site can have sites that are used by people of different languages, even if the member sites themselves are unilingual, then the hub site needs to be multilingual.&nbsp; Right now, it is the hub navigation that must be multilingual, and someone needs to think about multilingual news aggregation and filtering news by language, but in the very near future more and more hub site features will be released, all of which will have to support multiple languages.</div><div><br></div><div>In the next post, we will discuss in more details what "multilingual by default" means, whether you use PointFire or just out of the box features of SharePoint.</div></div><div><br></div>http://blog.icefire.ca/post/physical-vs-logical-topology-how-the-move-to-modern-sites-changes-who-is-responsible-for-languages
http://blog.icefire.ca/post/physical-vs-logical-topology-how-the-move-to-modern-sites-changes-who-is-responsible-for-languages#commenthttp://blog.icefire.ca/post.aspx?id=604c1d99-26dd-446c-87e4-29772ed2d4e0Tue, 08 Jan 2019 21:01:00 -1100BlogSharePoint tips365Laplantehttp://blog.icefire.ca/pingback.axdhttp://blog.icefire.ca/post.aspx?id=604c1d99-26dd-446c-87e4-29772ed2d4e01http://blog.icefire.ca/trackback.axd?id=604c1d99-26dd-446c-87e4-29772ed2d4e0http://blog.icefire.ca/post/physical-vs-logical-topology-how-the-move-to-modern-sites-changes-who-is-responsible-for-languages#commenthttp://blog.icefire.ca/syndication.axd?post=604c1d99-26dd-446c-87e4-29772ed2d4e0New product releases for SharePoint Online and SharePoint 2019<h3>PointFire Power Translator is Released&nbsp;</h3><div>9 months ago we showed how PointFire Power Translator can be used to translate modern SharePoint pages. Nothing else does this. It uses the latest neural network translation engines, not the old Bing engine.&nbsp;&nbsp;<span style="background-color: transparent;">Thanks to all the beta testers, the final product is simpler to install and easier to use.</span><div>&nbsp;</div><div><span style="background-color: transparent;">It's still command-line, but t</span><span style="background-color: transparent;">he GUI version, integrated into SharePoint, is coming out in beta this month.</span></div><div><span style="background-color: transparent;"><br></span></div>
<table cellpadding="0" border="0" align="left" cellspacing="0" class="m_6078672532240468133rnb-btn-col-content" style="border-collapse: separate; margin: 0px auto;"><tbody><tr><td width="auto" valign="middle" bgcolor="#3499db" align="left" height="32" style="font-family: Arial, Helvetica, sans-serif; margin: 0px; border-collapse: collapse; font-size: 14px; text-align: center; color: rgb(255, 255, 255); padding-left: 18px; padding-right: 18px; background-color: rgb(52, 153, 219); border-radius: 4px; border-width: 0px; border-style: none; border-color: rgb(0, 0, 0);"><a href="http://pointfire.ca/try/" target="_blank" style="color: rgb(255, 255, 255);">Download free trial</a></td></tr></tbody></table><br></div><div><br></div><div><br></div><div><div><span style="font-size: 24px;">PointFire 365 v2.2 update</span></div><div>&nbsp;</div><div>The latest version of PointFire 365 for SharePoint Online has simpler installation and licensing, better support for mobile, and improvements in Manage Variations and in date/number formatting.</div><div>&nbsp;</div><div>The PowerShell scripts for provisioning and upgrading have been enhanced.</div></div><div><br></div><div><div><table cellpadding="0" border="0" align="left" cellspacing="0" class="m_6078672532240468133rnb-btn-col-content" style="border-collapse: separate; margin: 0px auto;"><tbody><tr><td width="auto" valign="middle" bgcolor="#3499db" align="left" height="32" style="font-family: Arial, Helvetica, sans-serif; margin: 0px; border-collapse: collapse; font-size: 14px; text-align: center; color: rgb(255, 255, 255); padding-left: 18px; padding-right: 18px; background-color: rgb(52, 153, 219); border-radius: 4px; border-width: 0px; border-style: none; border-color: rgb(0, 0, 0);"><a href="http://pointfire.ca/try/" target="_blank" style="color: rgb(255, 255, 255);">Download free trial</a></td></tr></tbody></table><br></div><div><br></div></div><div><br></div><div><span style="font-size: 24px;">PointFire 2019 is coming!</span></div><div><div><br></div><div>SharePoint 2019 is coming, and PointFire 2019 will not be far behind.&nbsp; It has all the features of PointFire 2016 and more!&nbsp; Support for modern sites and improved interface translation are going to be among the new features.&nbsp; If you would like to get access to beta versions before everyone, contact sales @ icefire.ca</div></div><div><br></div>http://blog.icefire.ca/post/new-product-releases-for-sharepoint-online-and-sharepoint-2019
http://blog.icefire.ca/post/new-product-releases-for-sharepoint-online-and-sharepoint-2019#commenthttp://blog.icefire.ca/post.aspx?id=4d30f140-9c2f-4b40-96bb-fac6242d3b76Tue, 09 Oct 2018 20:10:00 -1100BlogNewsReleasesVersion365Laplantehttp://blog.icefire.ca/pingback.axdhttp://blog.icefire.ca/post.aspx?id=4d30f140-9c2f-4b40-96bb-fac6242d3b760http://blog.icefire.ca/trackback.axd?id=4d30f140-9c2f-4b40-96bb-fac6242d3b76http://blog.icefire.ca/post/new-product-releases-for-sharepoint-online-and-sharepoint-2019#commenthttp://blog.icefire.ca/syndication.axd?post=4d30f140-9c2f-4b40-96bb-fac6242d3b76