Creating a Multi-Lingual PowerApps Portal

   Words by CRM Consultancy

   on 30/06/2021 11:40:00

Untitled design (11)

PowerApps Portals provide you with the tools to allow external users to view and interact with your CDS data in their local language. Using Microsoft's vast array of language packs and a bit of extra customisation

detailed in this article, you can open up possibilities for connecting with more people, from more places.

1. Enable your language in Dynamics

First, we need to enable our new language in our Dynamics/PowerApps environment. Microsoft supports a host of standard language packs, and will provide translations for all OOTB entities and fields for these languages.

To enable a new language, go to the advanced settings are of Dynamics, select Settings à Administration then select the Languages section. Scroll to your desired language, tick the box, and click apply. This is all you need to do here, but note that it can take 5-10 mins to fully apply all the required settings.


2. Export translations from your solution

First select the solution you’ve been working in, then click export translations on the navigation bar. This will download a ZIP file with two XMLs inside, the one we want to use is titled ‘CrmTranslations’. Extract the ZIP file and open the ‘CrmTranslations’ XML in Excel. This has a tab called ‘Localized Labels’ – here you get a list of all entity names, field names, labels, and descriptions that are included within the solution. We get this with the first language column showing our environments default language, and then a new column for each new language we have enabled.

You will notice here that any OOTB field rows already have the newly enabled language columns populated. Now you can use your preferred method to translate the custom rows. I used Google Translate’s document translation functionality. The benefit of this is that it’s free and quick to do, the negative being that it’s not the most advanced translation software, so if you’re going down this route it’s best to schedule in some time for someone to go in and sense check the translations before publishing for all users.


N.B. For the purpose of the project I am working on, we only need to enable new languages for external portal users, not for internal CRM users. Therefore, we only need to think about translating entity information that is included in the client facing portal. I therefore ensured that the solution I exported translations for only included the entity forms and views that we use in the portal, so as not to be doing lots of unnecessary work.

3. Upload translations into your environment

When you’ve made all the required translations in your CrmTranslations file, you need to save this back into an XML file with the same name, and zip it back up with the other file extracted (at the time of writing, the only two files you get from the export are the CrmTranslations and another XML called [Content_Types].

Then, you can go back to the solutions area of the advanced settings, and click ‘upload translations’ on the navigation bar. Then select the edited ZIP folder, and wait for thew new translations to import, this again can take a few minutes to process.


4. Edit portal specific text

While some areas of the portal are driven off CRM data, fields, and labels, there are some that totally driven through the portal. These will not be affected by the upload of the translations file in CRM. I will show you the

a. Content Pages

Any web page that you create on your portal will automatically create a subsidiary ‘localized content’ page that houses the actual page content. This can be viewed in a subgrid on the web page form. When you enable a new language, a new localized content page will be automatically created in that language. However this won’t be automatically translated, so you must go to each web page that your portal uses, and go into the newly created localized content page, and translate any text in the Copy (HTML) field, the Summary (HTML) field, and don’t forget the Content: Title field.


b. Web Link Sets

When you create a new web link set, there will be a version created for each language enabled. Likewise, when you enable a new language, a new version of existing web link sets will be created. When you view your web link sets, you will see this with the language column specified. You need to go into each web link set for your new language and edit the title for each web link within this web link set to be in that language.


5. How to test, and use your new language capabilities in the portal

Now that you’ve enabled and edited all the relevant areas, your users will see the option to switch between languages when they log into the portal, this will appear as a dropdown to the left of the profile navigation button.

The best way I found to test this is to switch languages and click through every possible page in your portal, scanning all the text ensuring there hasn’t been anything missed.


One thing to make sure when testing every page, is that you’ve considered all pages shown to different web roles/to anonymous web roles.

Another easy one to forget to look at is the footer – make sure you’ve edited the footer web page localized content!

Designing and Developing Microsoft Power Apps Portals  /  VISIT: Open Up New Possibilities with Power Apps Portals

If you have any questions for CRMCS you can contact us on 0161 348 7360 or 

Share this Article

Search Articles

Filter Articles

CRM Tech DocMan

Recent Articles

HOW TO: Integrate SQL Users into Dataverse Teams HOW TO: Prepare to go LIVE on Linked-In! Creating a Homepage Canvas App HOW TO: Virtual Entities in Dynamics 365 Release Wave 2 New Feature: The Columns Button HOW TO: Search a date field in Microsoft Dynamics The Relevance Search COMING SOON to Power Apps Portals HOW TO: Manage Your Dynamics 365 Database Size (Video Included) Dynamics 365 Marketing vs ClickDimensions It’s time to pause, reflect and acknowledge a new era of inclusivity and collaboration. Part 2 - How to get the most from a Technology Expert – Asset Management Hub Property & Asset Management Hub Part 1 – Balancing CRM and Asset Management Scopes - Asset Management Hub Creating a Multi-Lingual PowerApps Portal How to Set Up a Microsoft Teams Site Using DocDrive365 Microsoft Teams - Adding a Microsoft Teams URL to a Dynamics Appointment Dynamics 365 Marketing – Customer Voice Survey Not Appearing In Emails? Using SQL Management Studio to connect to the Dynamics DB Calling a Power Platform AI Builder Model via oData How to use DocDrive365 to integrate permissions between Business Units in Dynamics with Sites in SharePoint Getting started with the Power Platform AI Builder. Power Apps Portal Information Hub DocDrive365 Security: Day One - Getting Started with Dynamics to SharePoint Permissions Part 5 - Power Apps Portals: How To Connect Azure B2C With Linked-In Part 4 – Power Apps Portals: Styling Azure B2C for Power Apps Portals
Contact Us

Want expert advice or a demo?

Get in touch now and see how we can help your business grow.

  • Name
  • Email Address
  • Phone Number

Understanding Your Challenges

Our strong understanding of CRM and emerging technologies within the Microsoft environment means we deliver the right solutions for you.

Proven Real-World Solutions

As a leader in the field of Dynamics solutions, our pedigree developing and delivering real-world solutions is unsurpassed.

Long Term Support

We provide support beyond our design, implementation and 'go-live' delivery using Sprints and continual updates to our AppSource apps.

CRMCS | Design by Thinktank Marketing | Citrus-Lime Limited

To improve your experience today and in the future, this site uses cookies. Read our full Privacy Policy & Cookie information here I Understand