CRM Crate

Understanding Server-Side & Client-Side customizations in Dynamics 365

We will learn & understand Server-Side & Client-Side customizations in Dynamics 365 / Power Apps. Before we start, make sure to subscribe to CRM Crate so that you can stay up to date in the field of Power Platform.

Understanding Server-Side & Client-Side customizations in Dynamics 365

Server-Side Customizations VS Client-Side Customizations

Microsoft Dynamics 365, like many other CRM / ERP applications, provides both server-side and client-side customization / automation options. These two approaches serve different purposes and have their own advantages and limitations as given below.

Server-Side Customization:

  1. Plugins – A plugin is a customized event handler that triggers or activates when a particular event is triggered during the execution of a Microsoft Dataverse data operation (Such as table row Create / Update / Delete etc). This plugin is developed as a custom class, compiled into a .NET Framework assembly, and can be uploaded and enlisted within Dataverse. Multiple compiled plugin classes from an assembly can be associated with specific events (steps) in the Dataverse event framework. When the designated event takes place during data processing, the code contained in the registered plugin class runs, offering a way to enhance or alter the default data processing functions of the platform.
    They offer deep integration and are suitable for complex business logic and data processing. Plugins can be used for tasks like data validation, complex calculations, and interacting with external systems.
  2. Custom ActionsCustom actions are server-side processes that allow you to define custom operations that can be called from within Dynamics 365 or external applications. They are often used for complex operations or integrations. Server-side customization and automation is more powerful and versatile for handling complex business requirements, but it typically requires development skills and may be subject to deployment and testing processes.
  3. Custom Workflow Activities – Custom workflow activities are similar to plugins but are designed to be used within workflows. They allow you to encapsulate custom logic and actions that can be used in a more process-driven manner.

Client-Side Customization:

  1. JavaScript / TypeScript – Client-side scripting using JavaScript (or TypeScript which is later compiled into JavaScript) allows you to enhance the user interface and behavior of Dynamics 365 forms. You can create client-side validation, automate field calculations, and create interactive experiences for users.
  2. Business RulesBusiness Rules are a declarative way to define and apply client-side logic without writing code. They can be used to show/hide fields, set field values, or validate data based on predefined conditions. Note: – Entity scoped business rules are executed at Server Side.
  3. Client-Side Extensions (e.g., Ribbon Workbench) – These extensions allow you to customize the Dynamics 365 user interface, including the Ribbon and Command Bar, to create custom buttons and actions.

Utilization of Server-Side Customization & Client-Side Customization

Choosing between server-side and client-side customization and automation depends on the specific requirements of your project. Here are some considerations to help you decide as given below.

Server-Side Customization

Use server-side customization for complex business logic, integration with external systems, and tasks that require deep data manipulation.

Client-Side Customization

Use client-side customization for UI enhancements, improving the user experience, and implementing simple business rules.

In some cases, a combination of both server-side and client-side customization may be necessary to meet all your business requirements.

Remember that server-side customizations often require more rigorous testing and development processes, while client-side customizations can be more accessible to power users and administrators.

0 0 votes
Article Rating
Newest Most Voted
Inline Feedbacks
View all comments
[Step by Step] Building & implementing Low Code Plug-ins within Dataverse - CRM Crate
6 months ago

[…] Server-side logic guarantees the consistent application of business rules across all clients, mitigating the risk of errors or disparities. […]

1 month ago

[…] & ConsistencyServer-side logic guarantees the consistent application of business rules across all clients, mitigating the risk of […]

error: CRM Crate Security Engine - Disabled Right Click & Selection!


Well Done,
Welcome to CRM Crate

Stay tuned with us and get all latest updates and learning in Microsoft CRM and related techonologes.