Engineered Code is proud to announce the availability of ecLearn - the Learning Management System built on top of Microsoft Dataverse

ENGINEERED CODE BLOG

Power Pages: Unprecedented Times for Long-Time Customers

With the release of documentation describing the migration from the Standard Data Model to the Enhanced Data Model, we’ve entered some unprecedented times for organizations that have been using Power Pages for a long time. For the first time since Microsoft acquired the product, a significant upgrade of the website will be necessary at some point in the future to transition to both Bootstrap v5 and the Enhanced Data Model.

Fundamental Changes

If you built a site in 2016 using what was then know as Dynamics 365 Portals, up until now in 2024, you could have gotten away with essentially no major maintenance on your site. There hasn’t really been any breaking changes that would impact most customers and would require significant work to rectify. There have been some minor updates, like the change to the default search provider, or the upgrade of jQuery, but for the most part those updates could be accommodated in a matter of hours. This is one of the advantages of a Software-as-a-Service (SaaS) product like Power Pages.

However, there are two fundamental changes coming to the product that unfortunately take a bit more effort than just clicking an upgrade button or installing a new solution: Bootstrap v5 and the Enhanced Data Model.

Bootstrap v5

Adxstudio introduced Bootstrap to what would become Power Pages in 2014. Bootstrap’s latest version at the time was version 3. Since that time, Power Pages has remained on that version of Bootstrap, while Bootstrap v4 was released in 2018, and v5 was released in 2021.

While I do know of cases where some organizations managed to use a newer version of Bootstrap on their Power Pages site, it was only with significant custom development – something not practical for most Power Pages customers.

The community has been asking for the version of Bootstrap to be updated for a long time. In 2023, Microsoft granted that wish and announced support for Bootstrap v5. Unfortunately, Bootstrap v5 is not totally backwards compatible with v3, so this means HTML, CSS and JavaScript built to target version 3 probably needs some updates to work with version 5.

The architecture of the product means that upgrading from version 3 to 5 is a shared responsibility between Microsoft and Power Pages customers. Certain aspects of Power Pages are completely controlled by Microsoft – that being the underlying site code. Any HTML, CSS and JavaScript in the site code must be (and has been) updated by Microsoft. However, Power Pages also pulls HTML, CSS and JavaScript from the customer’s Dataverse environment. This code is controlled by Power Pages customers, and in many cases has been customized by those customers, so Microsoft does not automatically update these aspects of the site.

To help with some of that effort, Microsoft has developed a tool that does its best at going through the HTML, CSS and JavaScript stored in Dataverse to produce a converted version. However, as with any tool like this, it is not perfect. Plus, there may be other less common places that Bootstrap v3 code exists that the tool might not be aware of – PCF Controls, Web Resources, externally-hosted files – so any plan to upgrade the Power Pages site should include full testing of the site to validate that nothing is missed. Depending on the amount of customizations on the Power Pages site, this could end up being a significant effort. Even for basic sites, running the conversion tool, testing and deploying to production will most likely be an effort measured in days, not hours.

Enhanced Data Model

Like Bootstrap v3, the data model for Power Pages has been around since the Adxstudio days. This is why the tables have the adx_ prefix. The only significant change to the data model occurred when Microsoft acquired the product in 2015 and introduced a different way to handle multilingual sites.

That changed in 2023 when Microsoft introduced the Enhanced Data Model (they named the previous version the Standard Data Model). The prefix for the main tables changed from adx_ to mspp_ (the mspp_ tables are actually virtual tables that point at the powerpagecomponent table).

This new data model was introduced in order to make the Power Pages data solution-aware, meaning that the data could be added to Dataverse solutions, which can be used to move it between environments like development, test and production. This was a significant enhancement to the ALM story for Power Pages, as solutions are the primary vehicle for ALM in the Power Platform.

Similar to the Bootstrap v5 upgrade, it’s not quite as simple as clicking a button to move from Standard to Enhanced. If you have any custom code that references the adx_ tables, that will need to be updated. If you’ve customized the adx_ tables in any way, that will need to be redone as well. Microsoft provides a tool to assist with the data migration of the out-of-the-box tables from Standard to Enhanced, but anything beyond that will be a bit of work.

Like with the Bootstrap v5 upgrade, any project to move to the Enhanced Data Model should include full testing of the site to validate that nothing is missed.

Don’t Panic

The migration of existing sites for both Bootstrap v5 and the Enhanced Data Model is not something you need to do right now. In fact, the tools to help you with those are still in preview. Microsoft has not announced an end-of-life for Bootstrap v3 nor the Standard Data Model. My guess is that you’ll have at least a year or two to deal with these items, if not more.

That being said, I do think that these two fundamental changes are something that should be done eventually, and once the tool are made generally available, it will probably be best to do them sooner rather than later. Organizations will benefit from a more modern version of Bootstrap, and the ALM capabilities of the Enhanced Data Model. Microsoft’s investment in Power Pages going forward will be based on these new platforms. So, while you don’t need to panic, I think now is the time to start preparing.

I think a large part of the investment in performing these upgrades will be in the testing needed to validate the upgrades. So if this investment can be shared with other initiatives (i.e. you plan on other Power Pages work that will need similar testing), that can reduce the impact of the upgrades.

And while I can’t be sure until we get a bit more real-world experience with both types of upgrades, I think it is likely that it will make sense to perform both at the same time – then you’ll only need to do all that testing once.

 

Leave a Reply

Your email address will not be published. Required fields are marked *

Contact

Engineered Code is a web application development firm and Microsoft Partner specializing in web portals backed by Dynamics 365 & Power Platform. Led by a professional engineer, our team of technology experts are based in Regina, Saskatchewan, Canada.