Showing posts with label msdyncrm. Show all posts
Showing posts with label msdyncrm. Show all posts

Friday, July 29, 2022

Thoughts about the Dynamics 365 solution architect role

I having been working as a solution architect for over 15 years now and the last 7 years as a Dynamics 365 solution architect (from when we still referred to it as simply Dynamics CRM) and I really like it.  But if I tell people that I work as a Dynamics 365 solution architect (even people work in IT), I immediately get the idea that they don't have a clue about what the role entails or what I do (and don't get me started about recruiters).



In this post I will try to shed some light on why it is so hard to clearly define the role and responsibilities of a Dynamics 365 solution architect. I will also explain on what Microsoft thinks about the Dynamics 365 role and why what Microsoft prescribes is not necessarily what applies to the project that you will be working on as a solution architect.  I will also list a number of lessons learned and learning resources that I used in the last couple of years.

Context matters

How we approach architecture, defines what architecture, in effect, is, at least for our system. That is, no matter what we say architecture is (for), architecture is (an outcome of) what we do. (Source: What is Software Architecture and related concerns

The last couple of years, I mainly worked as a solution architect in a large team at Toyota Motor Europe (TME), so I adopted the way of working of TME and the standards and boundaries set for solution architects within Toyota (I will be writing a separate blog post on lessons learned from the Toyota way)

So depending on the customer your work for, the size of the Dynamics 365 project and the associated complexity, the number of consultants working on the project and the overall maturity of the project team as well as the project methodology (agile vs waterfall) the tasks you take on as a Dynamics 365 solution architect and your role and responsibilities might differ quite a lot. 

Whether you are full-time working for a single project (embedded architect) or supporting multiple teams (wandering/travelling architect) also makes a big difference.

Architecture is about significant design decisions


I think that if you look at the role of the Dynamics 365 solution architecture from a very minimalistic viewpoint, there are three key activities and deliverables: 
  • The high level architecture visualization - remember a picture says more than a thousand words - definitely take a look at good models like C4 from Simon Brown
  • Maintaining a list of architecture design decisions together with the project team (take a look at  Architectural Decision Records | adr.github.io for some more info)
  • Coaching and mentoring the team to create an architecture awareness (understand design trade-offs, keep track of non-functional requirements, identify architecture risks and counter measures, understanding and handling technical debt)
A solution architect has to keep the long-term use of his solution in mind and implement scalability and adaptability into the solution for the future.

Success By Design and FastTrack

I learned a lot from the joint-design workshops and conversations with the Microsoft FastTrack solution architect assigned on some of my projects. For those of you unfamiliar with FastTrack for Dynamics 365, this is a Microsoft implementation support program for large Dynamics 365 implementations - this includes Customer Engagement (Sales, Customer Services, Field Services, Project Operations  and Marketing) as well as Dynamics 365 Finance, Commerce, Supply Chain Management and Human Resources.

The full FastTrack program is only available for a selected group of customers (threshold based on Dynamics 365 annual licensing revenue or internal approval by Microsoft account team)  and Microsoft partners (only partners with gold or silver status in Cloud Business Applications competency).  When you participate in the FastTrack program, you will be assigned a Microsoft FastTrack solution architect which you can use as a sounding board for design choices, receive guidance on best practices and how to plan for a successful roll-out.

Even if you can't join the Dynamics 365 FastTrack program it is still useful to take a look at the Success By Design resources - especially the Dynamics 365 Implementation Guide (recently revised) is a very extensive reference.

Also take a look at Dynamics 365 Fasttrack Architecture Insights - recordings created and shared by solution architects from the Dynamics 365 engineering team.

Microsoft about the Dynamics 365 solution architect

Two years ago I took a Microsoft certification exam targeted at solution architects in the Dynamics 365 space. I really enjoyed taking the exam MB-600: Microsoft Dynamics 365/Power Platform Solution Architect (now replaced by PL-600: Microsoft Power Platform Solution Architect) since it gives great insights on how Microsoft looks at the role of a Dynamics 365 solution architect. 

As a preparation for this exam, I followed the Architect solutions for Dynamics 365 and Microsoft Power Platform (screenshot below taken from this learning path) and together with the Microsoft FastTrack boot camp for Dynamics 365 CE solution architects, this shaped a lot of my thinking about the role of a Dynamics 365 solution architect. 


A key task of the solution architect is solution envisioning. Traditionally, a development-focused architect would start with custom development and low-level Azure services. A business applications focused solution architect will instead start with Dynamics 365 and Power Platform and then use third party components, custom development and Microsoft Azure to address any gaps.

In-depth knowledge of the products in the Microsoft BizApps stacks is therefore a must have and hands-on experience with one or more products helps you in becoming a better architect.  If you look at the videos from Gus Gonzalez on How do you become a solution architect and 3 rules for solution architects and consultants or listen to some of the episodes of the CRM MVP Podcast you will also get a feel about what other solution architects think about their role.

Microsoft seems to assume that a solution architect needs to be embedded into the team and does not make any mention of the notion of the travelling architect. The idea behind a travelling architect is that he/she will support multiple projects and provide support for teams who lack architectural skills by either coaching them, tackling specific architecture issues by him/herself, etc ... If you are working for a partner organization who is doing multiple smaller projects in parallel the role of a travelling architect makes more sense.

Working with other architects 

Depending on their scope of work, different types of architects work at different levels of abstraction - until now I have worked with enterprise architects, business architects and technical architects. In my current project, I work very closely with EA to make sure that the solution blueprint aligns with the set of architecture principles and principles defined by EA. 




A solution architect is not the same as an enterprise architect (although you might combine both roles) - an enterprise architect has a more strategic role and handles the initiatives that are required within a digital transformation at enterprise level to ensure that the business achieves their goals (business intent). It is however useful that you have a good understanding about enterprise architecture as a function and affinity with EA frameworks.

Get involved during the initial definition of a project/program

When I took a TOGAF training course years ago, I still remember an architect being called a "best effort architect" when he is not involved in the early stages of a program or project. If you are working on customer side and you are not involved during the initial business case creation, project or program initial scope definition, you are a "best effort architect" meaning that you miss a lot of the context and a large numbers of important decisions have already been made so you can only give it your best effort. 

Same goes for architects working at a consultancy or implementation partner, if you are not involved during the initial presales phase, you are constrained due to (implicit) design decisions which were already made during presales phase while answering the RFP or presenting demo cases.

Learn by doing
So if you are a Dynamics 365 solution consultant or technical consultant and you want to take the leap, there are a lot of resources to ease into the role but nothing beats learning by doing. Also keep in mind that as a solution architect lifelong learning is a prerequisite for success (but probably also for other roles)



If you are lucky, you might encounter someone within the company you work for who can coach you to grow into the role but also reach out to the broader Dynamics 365 community for questions or feedback.


References:

Wednesday, February 10, 2021

Power Platform and Dynamics 365 API request entitlements

Based on the number and the different types of licenses that you have within your Office 365 tenant you are granted a specific number of API request entitlements in a 24 hour window. For more details take a look at Request limits and allocations (Microsoft documentation)

It is important to keep in mind that these entitlement limits are different from the service protection limits  which are already enforced today.


It is time to start reviewing your architecture and consumption of API requests on Power Platform and Dynamics 365 as Microsoft announced that they will start enforcing these limits once the transition period ends (no date available yet in the official documentation - last updated February 2d 2021) - see Power Platform > Licensing > Request limits and allocations for more details.





Wednesday, August 26, 2020

Dynamics 365 and Power Platform monthly reading list July 2020

Technical topics (Configuration, customization and extensibility)
Topics for Dynamics 365 Business Application Platform consultants, project managers and power users

Friday, August 07, 2020

Notes on the Power Virtual Agent in a day lab

Microsoft recently also released a Power Virtual Agent in a day and I decided to give it a try. Power Virtual Agents are one of the components in the Power Platform which allow you to built intelligent chat bots without any coding or AI experience.

Since Power Virtual Agents are built on the Power Platform and the Azure Bot Framework you still have the option to extend the capabilities to suit your organisations needs.

Some notes on the Power Virtual Agent lab:
  • The creation of a virtual agent or bot is super easy and intuitive with a simple graphical interface for authoring the logic  that will drive your bots. The authoring canvas for the conversation tree has a great user experience and enables non-developers to create a powerful chatbot experience.

  • After you import the SolutionPowerVirtualAgentInADay.zip solution file, you will need to reconfigure the connections in the different Power Automate Flows - to do this you will need to use the unique name of the CDS instance - so if you have used a Dynamics CRM instance you can not use the readable name - don't forget to add the region shorthand as well.
  • If you are familiar enough with Dynamics 365 and/or Power Platform you will be able to complete the labs in a couple of hours.
  • The built-in integration with Power Automate allows you to leverage the over 250+ external services and systems so the only limit is your imagination.

References:

Wednesday, June 17, 2020

How to fix a broken Easyrepro project after upgrading Chrome

After I recently upgraded Chrome I noticed that my Easyrepro test project did not build/run anymore. (read Easyrepro - UI automation test library for Dynamics 365 and  CDS if you are not familiar to Easyrepro)

Luckily the exception pointed in the correct direction "System.InvalidOperationException: session not created. This version of ChromeDriver only supports Chrome version 79 (SessionNotCreated)".


The EasyRepro testing framework leverages Selenium ChromeDriver so you need to check the compatibility - see https://chromedriver.chromium.org/downloads 

To fix the error I just had to update the Nuget package to a version which is compatible with the installed Chrome on my machine.



Thursday, June 11, 2020

Farewell to the Dynamics 365 Admin Center

In 2019 Microsoft announced that they would consolidate the different admin centers for Power Platform and Dynamics 365 Sales/Customer Service/Field Service. In the meanwhile, more and more functions seem to be moving to the new Power Platform Admin Center. Although the legacy Dynamics 365 admin center deprecation is not listed (yet) on the Important changes (deprecations) coming in Power Apps, Power Automate and model-driven apps in Dynamics 365. I expect this admin portal to quickly fade away.  

Update June 28th: @jukkan just mentioned that there is an update in Message Center which officially states that the old Dynamics 365 Admin Center will go away. I like the speed of innovation in the cloud but this seems like incredibly short notice.



To be able to access the Power Platform Admin Portal you will need to assign an appropriate service admin role - see Use service admin roles to manage your tenant for more details.

Features/functionality which is now surfaced in the new Power Platform Admin Portal:
  • App management in the Applications tab of the legacy Dynamics 365 Admin center has now moved to Power Platform Admin Center - see  Manage Dynamics 365 Apps for more details. This applies to installing and managing Microsoft first party apps like Customer Service but also to other apps installed through AppSource. You first need to select your environment in the new admin center and use the Resources>Dynamics 365 apps menu to open the list of available apps to install. This same screen can be used to upgrade existing apps to newer versions. (Unfortunately there is no indication when there is a new app version available)





Monday, May 18, 2020

Power Platform ALM process guidance published and Power Platform Build Tools general available

Microsoft just published dedicated documentation around Application Lifecycle Management (ALM) with the Power Platform and Dynamics 365. This is a great starting point for everyone who wants to mature their development and deployment practice.

At the same time Microsoft announced the general availability of their Microsoft Power Platform Build Tools for Azure DevOps .  If you have used the preview version of the Power Platform Build Tools you will need to install the new extensions and you will need to recreate your build and release pipelines. You can install the Power Platform Build Tools extension from Azure Marketplace and they are free to use within Azure DevOps Services (online) or Azure DevOps Server.


Keep in mind though that setting up a good ALM practice, is about more than just tooling being in place (For a good discussion take a look at Continuous Integration is not a tooling problem)

If you are already using tooling like the Power DevOps Tools from @waelhaemze, it might not (yet) make sense to switch over but if you are new to DevOps/ALM for Dynamics 365/Power Platform definitely take a look (for more background on this topic see My Perspective on the PowerApps Build Tools for Azure DevOps )

Friday, May 15, 2020

Quick tip: generate and integrate mock data for Dynamics 365

If you are doing demos for Dynamics 365 it might be needed to generate mock data - an interesting tool for this is Mockaroo. You can just download a dataset that you generate from the website but Mockaroo also exposes a number of APIs that you access.


An interesting example of leveraging the API is outlined in Power Automate your demo data by @dylanhaskins


Thursday, May 14, 2020

Easyrepro - UI automation test library for Dynamics 365 and CDS

With the "One version" update policy of Dynamics 365 (Sales,Customer Service, Field Service,...) it starts making more sense to include some level of test automation in your projects. If you look at the test pyramid - it however also becomes apparent that user interface testing is still quite cumbersome and I think that the majority Dynamics 365 projects do not include any form of automated UI testing.

With the release of the Easyrepro - the automated UI testing framework for Dynamics 365 on Github in June 2017, writing automated UI test has become easier although it still requires basic developer skills and access to Visual Studio tooling.



The purpose of the Easyrepro library is to provide Dynamics customers the ability to facilitate automated UI testing for their projects. The Easyrepo API's provide an easy to use set of commands that make setting up UI testing quick and easy. The functionality provided covers the core CRM commands that end users would perform on a typical workday and developers area able to extend that coverage to more functionality.

If you want to quickly explore what is possible with the EasyRepro framework, clone the repo on Github and take a look at Microsoft.Dynamics365.UIAutomation.Sample project and see how the different test classes are implemented.



Afterwards I highly recommend you to take a look at the excellent series of blog post written by the Microsoft PFE team:


References:


Thursday, April 30, 2020

Updates to Dynamics 365 release schedule, unified interface transition and team member license enforcement

As outlined in Our commitment to customers help ensure business continuity Microsoft has delayed some of the mandatory upgrades and changes to existing Dynamics 365 environments - below a short overview:
  • Existing Dynamics 365 environments will receive the Wave 2020 update one month later starting beginning of May . See Dynamics 365 release schedule for the exact dates for your geo.
  • Deprecation of the legacy web client and the mandatory transition to the Unified Interface is postponed from October 1th to December 1th 2020.
  • Deprecation of the Dynamics 365 for Outlook (Outlook COM add-in) is scheduled for October 2020 - see The future of Outlook integration for more details
  • Technical enforcement for Dynamics 365 Team Members licenses purchased or transitioned after October 1, 2018 will come into effect on January 31, 2021 (extended from September 30, 2020 - initially planned for April 1, 2020). 

Thursday, February 06, 2020

Quick tip: keep your Dynamics 365 development tools up to date using Nuget

I recently encountered an issue when I tried switching the view of the registered plugins & custom workflow activities in the Plugin Registration Tool.



When updating to the latest version using the PowerShell script listed on Download Dynamics 365 development tools from Nuget the error got resolved. Lessons learned: make sure that you keep your Dynamics 365 development tools up to date.

Monday, February 03, 2020

Lessons learned about Dynamics 365 solution layering - Part 1


This is the first in a series of blog posts on Dynamics 365 solutions and solution layering in which I will cover the basics about Dynamics 365 solutions and gradually delve deeper into the mysterious world of the inner workings of Dynamics 365 solutions.

In my opinion,  based on how managed solutions and solution layering work - I think that in the majority of cases you should only use a single managed solution to avoid issues down the line. Read on to see why...


This blog post assumes that you are using managed solutions to deploy to all environments and only have unmanaged solutions in your development environment.

Dynamics 365 solutions fundamentals

If you work with Dynamics 365/CDS solutions, you should be aware of the concept of solution layering. Solution layering occurs on import of solutions when a specific component is affected by a change within one or more solution. Solution layering will determine the kind of behavior that a user will see in Dynamics 365.

The figure above shows how layering works: at the bottom, you have the standard CDS solutions on top of which you might have some first party apps installed like Dynamics 365 Sales/Customer Service etc... If you deploy custom managed solutions, they will go on top based on the order in which they are installed. Direct customizations and unmanaged solutions are always at the top but there is no real layering of unmanaged solutions - they all end up directly modifying the base behavior.

Solution layers describe the dependency chain of component from the root solution introducing it, through each solution that extends or changes the component’s behavior. Solution layers are created through extension of an existing component (taking a dependency on it) or through creation of a new component or version of a solution. So it is very important to understand that layers should be considered on a per component basis.

In April 2019, Microsoft introduced a new user interface component which visualizes the different solution layers which are impacting the behavior of a specific component - View solution layers for a component. Below is an example of the solution layers of the case form which was quite an interesting example.


Going beyond the basics

But what happens if two or more solutions define solution components differently? This article  - Introduction to solutions - conflict resolution explains the two conflict resolution strategies - Merge and Top Wins. The article is also valid for online according to Microsoft support - even though it was written for Dynamics 365 on premise and last updated in December 2017.


When importing a managed solution with the overwrite customization option, it is possible to override the "top wins" conflict resolution  but this does not apply to components which apply a “merge strategy” - for more details see Understand how managed solutions are merged

So you need to be very careful when adding components which apply a merge strategy in multiple solutions with different publishers since the merge behavior might cause unexpected side effect such as creating a separate active layer on top which would block your customization to appear to the user.

An active layer can emerge in two scenarios - a direct customization was done in the instance but it seems that it is also possible that a managed active layer is created when using only managed solutions without direct customizations in the system. This happens when managed solutions in one system, with different publishers (the Microsoft solutions count as a different publisher) are trying to update the same component. It is a defense mechanism that Microsoft has built in when there are object inconsistencies across managed solutions.

The general recommendation is that you keep the number of managed solutions with common components (e.g. forms with a different form layout) to a minimum. This will avoid merging issues across the layers.

Single solution to rule them all?


Taking into account all of the above it seems that you would opt to use a single managed solution to deploy to other environments.

Single solution approach
Pros:

  • Easier to version control
  • Avoid solution layering issues
  • Less environments needed
  • Easier to promote across environments
Cons:

  • Longer duration of solution import
  • Long list of components


I do think that a single solution might make sense in the majority of cases but there are of course exceptions to this rule.  I would recommend you to take a look at the Solution Lifecycle Management: Dynamics 365 for Customer Engagement Apps whitepaper and especially the section on solution boundaries which outlines some of other valid scenarios for having multiple solutions e.g.  the scenario where you need to deploy to multiple regional production instances with small variations with a core solution approach and on top local solutions  or the scenario where you need to release subsets of applications on different cadence/timeline.


Friday, January 31, 2020

Dynamics 365 and Power Platform monthly reading list December 2019

Technical topics (Configuration, customization and extensibility)

Topics for Dynamics 365 Business Application Platform analysts, project managers and power users

Thursday, January 16, 2020

Dynamics 365 or Power Platform New Year's resolutions

We are already 3 weeks in 2020 but there is still time for New Year's solution so choose one of the 12  potential Dynamics 365/Power Platform New Year's resolution as proposed in Episode 69 of the CRM MVP Podcast hosted by @gusgonzalez2.



I will try to take at least 10 out of 12 in 2020 so what is yours?
  1. Write a valuable blog article every week - I probably want to go for 52 blog posts this year.
  2. Deliver at least 4 webinars or  community presentations in a year
  3. Register for the Dynamics Insider program and commit to test every new release and provide feedback to Microsoft
  4. Answer 60 questions on the forums (Microsoft Dynamics Forums, CRMUG Forums, etc...) 
  5. Attend a training from a Dynamics 365/Power Platform expert that you admire or who you consider to be a top expert in the domain
  6. Create a XrmToolBox plugin 
  7. Speak at a major conference
  8. Contribute 24 tips to @crmtipoftheday by sending an e-mail to jar@crmtipoftheday.com
  9. Learn something new about Power Platform/Dynamics 365 every month - you can learn a lot by dedicating 8 hours a month on a single topic
  10. Teach something new about Power Platform/Dynamics 365 every month e.g by delivering a lunch&learn session in your company
  11. Use "new" functionality in Power Platform/Dynamics 365 at least once every month e.g. use Flow/Power Automate instead of using workflows or use the new Admin portal and solution designer
  12. Release a free solution to the community  e.g. a PCF control 

Update on Dynamics 365/CDS request limits

End of August Microsoft announced an API based limitation which is based on users and the type of licenses they have - the latest documentation is available on http://aka.ms/platformlimits  as well as PowerApps and Microsoft Flow licensing FAQs for October 2019. I would recommend regularly checking these pages as they have been updated quite a few times in the last months.

During interactions with Microsoft the last couple of months, they explained that the allocated number of API calls within the different licenses are based upon internal telemetry on the current Dynamics 365 customer base. The claim is that 95% of customers fall within the standard allocated API limits. But if you are using a lot of integrations, you might need to  re-architect part of your solution.

Listed below are the key takeaways:
  • Users with a Dynamics 365 Enterprise Application license have 20.000 API requests allocated in a 24 hour window.
  • Technical/non-interactive/application users get allocated 100.000 API requests if at least one Dynamics 365 API license is available.
  • If a user exceeds the limits the admin for the tenant/environment will receive a notification - end users will not be blocked from using the app.
  • This new licensing went into effect for new customers who on boarded after October 2019. Existing customers have a transition period until October 2020 or when their licensing contract expires. Whichever is longer. For customers with an enterprise agreement this will be the end of their EA (in most cases I know these contracts are valid for 3 years), customers on a CSP contract typically have a yearly expiration date. Reach out to your licensing partner or Microsoft for more details. 
  • The currently available statistics in the Power Platform Admin Center are still quite rudimentary but are a good starting point to assess the impact on your environment 
  • It is possible to purchase additional blocks of 10,000 daily API requests for $50 per month (For details reach out to your licensing partner)
  • Batch requests (Executemultiple) only count as 1 API call, so you can wrap a 1.000 individual calls in one ExecuteMultiple call.
References:

Tuesday, January 14, 2020

My perspective on the PowerApps Build Tools for Azure DevOps

Mid July 2019 Microsoft released a preview of a set of PowerApps specific Azure DevOps Build tasks.  In the last months this tooling has been updated on a quite regular pace which indicates that  ALM (Application Lifecycle Management) for Power Platform (and Dynamics 365 Sales/Customer Service/etc..) is high on the priority list for Microsoft.


For those of you who are new to Azure DevOps, here is a small summary. Azure DevOps is a set of services hosted on Microsoft Azure cloud which support your full software development lifecycle  e.g. you can use Azure Boards for work tracking and backlogs, Azure Pipelines for  CI/CD, Azure Repos for source control, and much more.  Azure DevOps is successor to  Visual Studio Team Services (VSTS) and the best thing of all you can get started with it for free. (For more details see Pricing for Azure DevOps). You can start learning Azure DevOps by exploring the Azure DevOps Hands-On Labs

In the past most Dynamics 365 CE consultants largely relied on a BYOALM (Bring Your Own ALM) approach meaning that you need a combination of PowerShell script, SDK extensions, etc … to automate the build and release of Dynamics components. I even think that in the majority of cases there is no fully automated build and release process in place - meaning that a deployment relies on a number of (hopefully documented) manual steps.  In one of the projects I recently worked on - we have been using the excellent Dynamics 365 Build Tools for Azure DevOps from Wael Haemze so there are other extensions available for Azure DevOps as well.

After you have installed the PowerApps Build Tools you will see a whole set of build and release tasks that you can use in your build and release pipelines. To explore the possibilities you can start with the PowerApps Build tools for Azure DevOps Hands On Lab files which contains a walk through of the different scenarios like for example using the PowerApps Solution Checker (see reference section for more information on this)



If you compare the PowerApps Build Tools with the Dynamics 365 Build Tools, you will probably see that Dynamics 365 Build Tools currently still offers more capabilities but it does seem worthwhile to start exploring the newly released Microsoft tooling.  I recently also got feedback within the context of a Microsoft support case that they recommended to use the new PowerApps build tooling because they would not troubleshoot issues with other extensions on top of Azure DevOps in combination with Dynamics 365.

I  also expect more information to come available in the coming weeks as we are getting closer to the Dynamics 365 and Power Platform 2020 Release Wave 1 . In the meanwhile I will be sharing more information in some upcoming blog posts.


References:


Tuesday, December 31, 2019

Dynamics 365 Customer Engagement release version transparency

By now, you should be aware know that all Dynamics 365 Customer Engagement Online environments are on the same “major” version but it is also important to understand that Dynamics 365 CE receives continuous updates on a weekly release cadence. You probably already saw these updates being announced in Office 365 message center.



Each update is deployed as part of a Release Train, stopping at each ‘station’ along the way before rolling on to subsequent station. Not all regions would be on the same release as any time. Early station will have lower levels of number of customers impacted, ending with Europe and North America where majority of our customers are and then dedicated scale groups where customers with larger organisations are hosted. For a more in-depth session on this topic I can highly recommend the recording BRK2039 - Microsoft PowerApps and Dynamics 365: Modernizing the way we update

In November 2019  Microsoft updated their documentation and provides a lot more transparency on this release process - so you can now get a full overview of Released Versions of Dynamics 365 for Customer Engagement which outlines all previous releases as well as the upcoming releases in the different stations.

The version number mechanism for Dynamics 365 CE instances has also been updated so it is now easier to see which update has already been rolled out to a specific instance.


Dynamics 365 and Power Platform monthly reading list November 2019

Technical topics (Configuration, customization and extensibility)

Topics for Dynamics 365 Business Application Platform analysts, project managers and power users

Thursday, November 28, 2019

Dynamics 365 and Power Platform monthly reading list October 2019


Dynamics 365 – 2019 Wave 2 topics

Technical topics (Configuration, customization and extensibility)

Topics for Dynamics 365 Business Application Platform analysts, project managers and power users