CDS Solution Development – Best Practices – ModelFeatureApp Architecture

Introduction.

Hi all! Another week went by, another page in the GitHub wiki added… In case you’re new here, read this article which explains the motivation behind it all.

I wasn’t able to add new content last week and I’m very sorry for that. Hopefully this week will make up for it.

Continue reading “CDS Solution Development – Best Practices – ModelFeatureApp Architecture”

Office 365 domain ForceTakeOver

If you are an Office 365 administrator, I believe that you have experienced this scenario. The situation when you want to add a domain to an Office 365 tenant, but you cannot because it is blocked by a different tenant .

More specifically, a customer wants you to set up a domain in their current tenant and when you try to add the domain it keeps telling you that the domain is being used already.

Continue reading “Office 365 domain ForceTakeOver”

Solution Import Failure Message: Cannot add a Root Component 80


Have you tried to upload your own solution containing a model driven app into your environment, but for some unexpected reason, you got a very non descriptive error that the solution just cannot be uploaded, and only after a closer inspection, you discovered that the solution cannot add Root Component of type 80 because it is not in the target system?

I know I did, and here is how I fixed the problem.

Continue reading “Solution Import Failure Message: Cannot add a Root Component 80”

CDS Solution Development – Best Practices – Developed Components

Introduction.

Hi all! Another week went by, another page in the GitHub wiki added… In case you’re new here, read this article which explains the motivation behind it all.

There’s not a lot I can comment on for these few new pages. But I can think of one thing.

Continue reading “CDS Solution Development – Best Practices – Developed Components”

CDS Solution Development – Best Practices – Tooling

Introduction.

Hi all! Another week went by, another page in the GitHub wiki added… In case you’re new here, read this article which explains the motivation behind it all.

What are my thoughts on current CDS tooling? Let’s get into it.

Continue reading “CDS Solution Development – Best Practices – Tooling”

Integration tests with Table Storage in Azure DevOps

We need database so we need SQL Server. How many times have you heard this nonsense? There are many alternatives to traditional relation databases that are more suitable for some use cases. One of them is Table Storage. In this article, I will show you how to test your code that is using Table Storage in your Azure DevOps CI pipeline.

Continue reading “Integration tests with Table Storage in Azure DevOps”

Common Data Service Solution Development – Best Practices

Introduction.

I started with series of articles about managed and unmanaged solutions from the ISV (Independent Software Vendor) perspective. You can find the first about merging forms and layering views here, and the second about missing dependencies here. I was thinking about the next topic in the managed vs. unmanaged series and decided to start over with best practices for CDS (Common Data Service) in general.

I just want to state one thing. We are ISV. We build and endorse managed solutions and these best practices are our own based on the documentation from Microsoft and implementations of customer projects.

Continue reading “Common Data Service Solution Development – Best Practices”

Logic App in a multi tenant environment

Since 2018 I am playing with Logic Apps. All that time I have been thinking about the best approach for authentication and authorization. There are certain scenarios where the standard approach (OAuth2, basic, static API key) are not ideal. Consider sending REST API call to someone else’s Azure Active Directory. You can use HTTP with Azure AD, but you need to have someone’s username and password, which is not the nice way of doing this.

Continue reading “Logic App in a multi tenant environment”

Dynamics 365 – Subgrids without relationship

Have you ever wanted to display a view from different entity and there was no straight relationship? Worry not! I finally figured out how to do it. So, let’s just jump into it!

Continue reading “Dynamics 365 – Subgrids without relationship”

Conditional groups across different linked entities in FetchXML

In CDS, the Advanced find gives us a great tool for generating FetchXML files, but even it has some limitations that can be worked around. Today we will focus on more complex FetchXML queries, that require logical OR or AND groups that depend on fields that are not on a single entity.

Continue reading