The document describes the architecture of Microsoft Dynamics CRM. It identifies four main extensibility points: web service programming, custom workflow activities, plug-ins, and client programming. It also describes the two Outlook clients and how the offline client works. Finally, it explains that Microsoft Dynamics CRM uses a metadata-driven architecture with platform and application layers to store entity definitions and customizations separately from code.
The document provides an overview of extensibility features in Microsoft Dynamics CRM. It discusses how the software is designed to be extended affordably and adapted to business needs through features like custom workflow activities, plug-ins, client-side scripting, web services, and custom web pages. It also outlines the skills needed for developers, such as .NET, JScript, and using the Microsoft Dynamics CRM SDK. Resources for developers are highlighted, including the SDK, online communities, code samples, support, and certification.
Microsoft Dynamics CRM 2011 Walkthrough Part 2Jukka Niiranen
This document provides an overview of processes (formerly known as workflows) in Microsoft Dynamics CRM 2011. It discusses the differences between workflows and dialogs, with dialogs allowing for interactive user input through multiple pages. Examples of how dialogs can be used to replace built-in dialog windows and guide new record creation are provided. The document also notes that processes now use .NET Framework 4.0 workflows and allow for the creation of custom workflow activities through a declarative XAML modeling approach.
Service Analysis - Microsoft Dynamics CRM 2016 Customer ServiceNaveen Kumar
Microsoft Dynamics CRM includes default dashboards and reports for analyzing customer service performance. The Customer Service Manager Dashboard provides an overview of open activities, cases, queues, and entitlements. PowerBI dashboards connect to additional data sources and provide advanced reporting capabilities beyond the standard CRM dashboards. Service reports include case summaries, neglected cases, and activity reports. Goals can be created for metrics like average resolution time and tied to entities like cases to track performance.
20 reasons to upgrade to microsoft dynamics crm 2011Nerea
Microsoft Dynamics CRM 2011 includes many new features to improve the user experience for users, administrators, and developers. Key upgrades include dashboards and charts, improved SharePoint integration for document management, enhanced auditing, field level security, multiple forms, team ownership of records, improved data importing, and new capabilities for opportunities, sales goals, recurring appointments, and queues. The new solutions framework allows customizations to be packaged and moved between organizations. Workflows and dialogs provide improved processes to guide users through tasks. Authentication also supports newer industry standards.
Microsoft Dynamics CRM Multi - Tier ArchitectureNaveen Kumar
In order to effectively customize Microsoft Dynamics CRM, you must first have good understanding of the application's architecture. The system's architecture influences how and where you can customize the system components.
The key to understanding the Microsoft Dynamics CRM architecture as it relates to customization is the Microsoft Dynamics CRM platform. One way to understand the value of the Microsoft Dynamics CRM platform is to contrast it with the client/server (two-tier) architecture that has been around for more than two decades.
Microsoft Dynamics CRM - Accelerators For Microsoft Dynamics CRM Functional ...Microsoft Private Cloud
This document provides an overview and frequently asked questions about Accelerators for Microsoft Dynamics CRM. The Accelerators are add-on modules that extend the capabilities of Microsoft Dynamics CRM 4.0 and include Analytics, eService, Event Management, Enterprise Search, and Sales Methodologies. The Accelerators provide additional functionality, workflows, reports, source code, and documentation. They are available at no additional charge on CodePlex and can be installed on the standard Microsoft Dynamics CRM virtual machine in around 5-20 minutes. Microsoft will provide support for the Accelerators in the same way they support other customizations that follow their SDK guidelines.
Control Outlook Synchronization Settings for Dynamics CRM usersJukka Niiranen
Use the XrmToolBox Sync Filter Manager to configure Outlook synchronization filters for Microsoft Dynamics CRM users. This tutorial shows 3 common scenarios for how to modify the contact synchronization settings.
This document provides an overview of the Microsoft Dynamics CRM 4.0 Resource Center, which contains various articles, videos, and other resources accessible within the CRM application to help customers and partners. Some example article topics included are cloning records, configuring picklists, controlling Resource Center access, and best practices for test environments.
The document provides an overview of extensibility features in Microsoft Dynamics CRM. It discusses how the software is designed to be extended affordably and adapted to business needs through features like custom workflow activities, plug-ins, client-side scripting, web services, and custom web pages. It also outlines the skills needed for developers, such as .NET, JScript, and using the Microsoft Dynamics CRM SDK. Resources for developers are highlighted, including the SDK, online communities, code samples, support, and certification.
Microsoft Dynamics CRM 2011 Walkthrough Part 2Jukka Niiranen
This document provides an overview of processes (formerly known as workflows) in Microsoft Dynamics CRM 2011. It discusses the differences between workflows and dialogs, with dialogs allowing for interactive user input through multiple pages. Examples of how dialogs can be used to replace built-in dialog windows and guide new record creation are provided. The document also notes that processes now use .NET Framework 4.0 workflows and allow for the creation of custom workflow activities through a declarative XAML modeling approach.
Service Analysis - Microsoft Dynamics CRM 2016 Customer ServiceNaveen Kumar
Microsoft Dynamics CRM includes default dashboards and reports for analyzing customer service performance. The Customer Service Manager Dashboard provides an overview of open activities, cases, queues, and entitlements. PowerBI dashboards connect to additional data sources and provide advanced reporting capabilities beyond the standard CRM dashboards. Service reports include case summaries, neglected cases, and activity reports. Goals can be created for metrics like average resolution time and tied to entities like cases to track performance.
20 reasons to upgrade to microsoft dynamics crm 2011Nerea
Microsoft Dynamics CRM 2011 includes many new features to improve the user experience for users, administrators, and developers. Key upgrades include dashboards and charts, improved SharePoint integration for document management, enhanced auditing, field level security, multiple forms, team ownership of records, improved data importing, and new capabilities for opportunities, sales goals, recurring appointments, and queues. The new solutions framework allows customizations to be packaged and moved between organizations. Workflows and dialogs provide improved processes to guide users through tasks. Authentication also supports newer industry standards.
Microsoft Dynamics CRM Multi - Tier ArchitectureNaveen Kumar
In order to effectively customize Microsoft Dynamics CRM, you must first have good understanding of the application's architecture. The system's architecture influences how and where you can customize the system components.
The key to understanding the Microsoft Dynamics CRM architecture as it relates to customization is the Microsoft Dynamics CRM platform. One way to understand the value of the Microsoft Dynamics CRM platform is to contrast it with the client/server (two-tier) architecture that has been around for more than two decades.
Microsoft Dynamics CRM - Accelerators For Microsoft Dynamics CRM Functional ...Microsoft Private Cloud
This document provides an overview and frequently asked questions about Accelerators for Microsoft Dynamics CRM. The Accelerators are add-on modules that extend the capabilities of Microsoft Dynamics CRM 4.0 and include Analytics, eService, Event Management, Enterprise Search, and Sales Methodologies. The Accelerators provide additional functionality, workflows, reports, source code, and documentation. They are available at no additional charge on CodePlex and can be installed on the standard Microsoft Dynamics CRM virtual machine in around 5-20 minutes. Microsoft will provide support for the Accelerators in the same way they support other customizations that follow their SDK guidelines.
Control Outlook Synchronization Settings for Dynamics CRM usersJukka Niiranen
Use the XrmToolBox Sync Filter Manager to configure Outlook synchronization filters for Microsoft Dynamics CRM users. This tutorial shows 3 common scenarios for how to modify the contact synchronization settings.
This document provides an overview of the Microsoft Dynamics CRM 4.0 Resource Center, which contains various articles, videos, and other resources accessible within the CRM application to help customers and partners. Some example article topics included are cloning records, configuring picklists, controlling Resource Center access, and best practices for test environments.
Smarter Sales Process in Dynamics CRM 2015 - Part 2: Revenue EstimationJukka Niiranen
Webcast notes from "A Non-Developer's Guide to Smarter Sales Processes in Microsoft Dynamics CRM 2015", as presented on MSDynamicsWorld.com on May 6th, 2015. The second part explores how the CRM 2015 calculated fields feature can be leveraged in simplifying the data entry and maintenance process for opportunity revenue estimates.
Lundi 27 octobre 2014
Groupe Architecture
Sujet: Microsoft Dynamics CRM, vue d'ensemble de la plateforme et architecture de solution 101
Conférencier: Salim Adamon
Avec les nombreux ajouts de fonctionnalités effectués par Microsoft sur sa plateforme Dynamics CRM au cours des dernières années, le produit se compare de plus en plus aux acteurs majeurs dans le domaine du CRM et commence à acquérir une grande part du marché partout dans le monde. En tant qu’architecte de solution travaillant avec des technologies Microsoft, il est important de connaître les atouts de la plateforme Dynamics CRM afin de pouvoir envisager son utilisation si elle répond à des besoins existants et d’économiser un grand temps de développement.
Cette présentation va dans un premier temps vous donner une vue d'ensemble de la plateforme: les modules classiques de gestion de la relation client (CRM), ainsi que les possibilités d'extensions et de personnalisations. Dans un second temps, nous parlerons de différentes considérations à prendre en compte lorsqu'on fait le design d'une solution avec Dynamics CRM. Cette section couvrira à haut niveau le développement, l'intégration, l'infrastructure, la performance et d’autres concepts importants pour architectes, analystes d’affaires et développeurs en entreprise.
Connecting software Whitepaper: Integrating Dynamics CRM and SharePoint securityConnecting Software
This whitepaper provides an overview of CB Dynamics CRM to SharePoint permissions replicator solution and explains how it works. It explains architecture of the solution and the mapping between security model of Dynamics CRM and SharePoint.
MIcrosoft Dynamics CRM 2013 - Deep DiveBrad Tornberg
The session agenda document discusses how Microsoft Dynamics CRM can help businesses adapt to changing buyer behaviors and expectations. It summarizes how Dynamics CRM provides tools to personalize experiences across marketing, sales, and customer service. These include social networking integrations, mobile access, process automation, and data/insights tools to understand customers throughout their journey. Case studies show Dynamics CRM helping businesses increase sales volumes by over 150% and reduce customer support times by 75%.
More than just marketing, “x”RM4Legal offers firms the opportunity to integrate all their line of business applications within one easy to use, easy to manage, easy to afford environment. xRM is the evolution of CRM, where the X in xRM can be anything. xRM is based on Microsoft CRM and the .NET platform.
This document compares Microsoft Dynamics NAV and Dynamics AX. It summarizes that Dynamics NAV is geared toward small to mid-sized businesses, is easier to implement and maintain, and offers flexibility for decentralized global operations. Dynamics AX is designed for large enterprises, allows for greater visibility across global operations but is more complex to implement and maintain. Both can scale as a business grows, but AX better addresses the needs of very large, complex multi-national organizations.
Maximizer CRM 11 includes new features to provide real-time business insights across various areas including sales, marketing, and mobility. Key updates include wizard-driven dashboards for executives to view KPIs, sales quota management and opportunity monitoring tools, an online campaign manager for marketing, and an intuitive mobile interface for BlackBerry smartphones. The new version aims to help users make better business decisions, optimize revenue generation, execute effective marketing campaigns, and collaborate efficiently on the go.
CaliberRM is a requirements management tool that helps software teams effectively capture, communicate, and manage changing requirements. It provides a centralized repository for requirements and traces dependencies to facilitate impact analysis and change management. Key features include rich editing of requirements, generation of specifications documents, validation of requirements quality, and notifications of changes.
Microsoft Dynamics CRM 2011 Walkthrough Part 1Jukka Niiranen
Microsoft Dynamics CRM 2011 includes several new and enhanced end-user tools and features, including:
1) An improved Outlook client that allows browsing CRM data and filtering views directly from Outlook.
2) Enhanced form customization options, such as adding sub-grids and filtered lookups.
3) New auditing features that record changes to records over time and allow viewing audit histories.
Dynamics CRM document covers many topics related to customizing and extending the functionality of Dynamics CRM including: creating custom entities and fields, form and view customization, entity relationships, business rules, plugins, workflows, and connecting CRM to external systems using SSIS. The agenda covers areas like security, user management, and administration as well as development topics such as client-side scripting, CRUD operations, and advanced querying.
Microsoft Dynamics NAV 2009 introduced new technologies like the RoleTailored user experience to simplify access to information, streamline integration, enhance reporting, and maximize investment in Microsoft products. Microsoft Dynamics NAV 2013 builds on this platform and delivers new features to help users gain greater control, increase margins, and grow business through capabilities like Cash Flow Forecasting, Cost Accounting, and the new Microsoft Dynamics NAV Web Client. It provides greater deployment flexibility and tools to realize business ambitions.
xRM4Legal Makes Microsoft Dynamics CRM Viable for Law FirmsDavid Blumentals
More than just marketing, xRM4Legal offers law firms the opportunity to integrate all their line of business applications within one easy to use, easy to manage, easy to afford environment. xRM is the evolution of CRM, where the X in xRM stands for eXtended Relationship Management. xRM is based on Microsoft CRM and the .NET platform
Many Microsoft partners have found success driving revenue and delivering solutions with Office 365. Partners have built profitable service portfolios by selling, implementing, and creating value-added services for Office 365.
But there are many additional opportunities from Microsoft which enable Office 365 partners to elevate productivity for their customers. Microsoft Dynamics CRM Online is such an opportunity.
Dynamics CRM Online is a customer relationship management solution which allows your customers to track relationships and interactions, automate business processes and gain valuable insights into their own customers. Capabilities include Sales Force Automation, Marketing Automation, Customer Service and Social Media Insight.
O365 and CRM Online give customers an incredible solution and partners a fantastic new offering. Adding CRM Online to O365 lets customers cut through the clutter—to zero in and easily identify what they need to do next. It lets them find a relevant way to connect with their customer so they can win faster. And lets them collaborate with people, find, and access the information they need to ultimately sell more and grow their business.
By adding CRM Online, you elevate the discussion to business solutions. Plus, in addition to sales, Dynamics CRM has great solutions across marketing, customer service, and social listening & engagement.
xRM extends this to industry-specific solutions.
In this technical training we introduce Dicker Data reseller partners to Managing and deploying customizations; Configuring role-based security; Customizing entities, adding fields and relationships; Building forms for users to input and retrieve data; Presenting clear information in views and charts; Combining data sources on a dashboard; Going beyond role-based record-level security and assisting users through their business processes.
The document summarizes a presentation about new features in Microsoft Dynamics CRM 2011. It highlights enhancements in three areas: making CRM more familiar through an improved user interface, more intelligent through new analytics and process tools, and more connected through enhanced collaboration and integration features. The presentation also demonstrates these new capabilities through live demos and discusses Microsoft's momentum in the CRM market in terms of customers, partners and cloud deployment options.
The Pivotal SharePoint Connector enables integration between a company's Pivotal CRM system and Microsoft SharePoint for improved document storage and collaboration capabilities. It allows sharing of content and information between SharePoint and Pivotal records. The connector plugs into SharePoint Server to enable communication with Pivotal CRM through supported interfaces. It automatically creates unique SharePoint sites for companies and opportunities linked to Pivotal records.
Architecture of Dynamics CRM with Office 365 and AzurePedro Azevedo
This document provides an overview of Microsoft Dynamics 365 and how it integrates with other Microsoft technologies like Office 365 and Azure. It discusses the CRM market share and Dynamics 365's growth. It describes how Dynamics 365 can be deployed on Azure and leverages various Azure services for capabilities like offline syncing, machine learning, voice of customer, and more. It also mentions related technologies like PowerApps, Logic Apps, and pricing considerations.
Raju Vaneshwar Nareshwar has over 5 years of experience as a technical consultant specializing in customizing and extending Microsoft Dynamics NAV. He has expertise in C/Side, SQL Server, JavaScript, C#, and integrating NAV with other systems. His roles have included custom development, support, and implementations for clients in manufacturing, agriculture, and construction. He holds a Bachelor's degree in ICT from the University of Colombo School of Computing and is a Microsoft Certified Professional for Dynamics NAV 2013.
The document provides a summary of Catherine E. Sullivan's qualifications and experience as a programmer and software developer with over 16 years of experience. She has extensive skills in .NET, C#, SQL, Java, Perl and other programming languages and databases. Her experience includes roles at the University of Washington, CapitalOne, NY State Insurance Fund, and NY State Education Department developing and maintaining various software systems. She holds certifications in UNIX/C/C++/Java and completed an intensive .NET Master's program.
Smarter Sales Process in Dynamics CRM 2015 - Part 2: Revenue EstimationJukka Niiranen
Webcast notes from "A Non-Developer's Guide to Smarter Sales Processes in Microsoft Dynamics CRM 2015", as presented on MSDynamicsWorld.com on May 6th, 2015. The second part explores how the CRM 2015 calculated fields feature can be leveraged in simplifying the data entry and maintenance process for opportunity revenue estimates.
Lundi 27 octobre 2014
Groupe Architecture
Sujet: Microsoft Dynamics CRM, vue d'ensemble de la plateforme et architecture de solution 101
Conférencier: Salim Adamon
Avec les nombreux ajouts de fonctionnalités effectués par Microsoft sur sa plateforme Dynamics CRM au cours des dernières années, le produit se compare de plus en plus aux acteurs majeurs dans le domaine du CRM et commence à acquérir une grande part du marché partout dans le monde. En tant qu’architecte de solution travaillant avec des technologies Microsoft, il est important de connaître les atouts de la plateforme Dynamics CRM afin de pouvoir envisager son utilisation si elle répond à des besoins existants et d’économiser un grand temps de développement.
Cette présentation va dans un premier temps vous donner une vue d'ensemble de la plateforme: les modules classiques de gestion de la relation client (CRM), ainsi que les possibilités d'extensions et de personnalisations. Dans un second temps, nous parlerons de différentes considérations à prendre en compte lorsqu'on fait le design d'une solution avec Dynamics CRM. Cette section couvrira à haut niveau le développement, l'intégration, l'infrastructure, la performance et d’autres concepts importants pour architectes, analystes d’affaires et développeurs en entreprise.
Connecting software Whitepaper: Integrating Dynamics CRM and SharePoint securityConnecting Software
This whitepaper provides an overview of CB Dynamics CRM to SharePoint permissions replicator solution and explains how it works. It explains architecture of the solution and the mapping between security model of Dynamics CRM and SharePoint.
MIcrosoft Dynamics CRM 2013 - Deep DiveBrad Tornberg
The session agenda document discusses how Microsoft Dynamics CRM can help businesses adapt to changing buyer behaviors and expectations. It summarizes how Dynamics CRM provides tools to personalize experiences across marketing, sales, and customer service. These include social networking integrations, mobile access, process automation, and data/insights tools to understand customers throughout their journey. Case studies show Dynamics CRM helping businesses increase sales volumes by over 150% and reduce customer support times by 75%.
More than just marketing, “x”RM4Legal offers firms the opportunity to integrate all their line of business applications within one easy to use, easy to manage, easy to afford environment. xRM is the evolution of CRM, where the X in xRM can be anything. xRM is based on Microsoft CRM and the .NET platform.
This document compares Microsoft Dynamics NAV and Dynamics AX. It summarizes that Dynamics NAV is geared toward small to mid-sized businesses, is easier to implement and maintain, and offers flexibility for decentralized global operations. Dynamics AX is designed for large enterprises, allows for greater visibility across global operations but is more complex to implement and maintain. Both can scale as a business grows, but AX better addresses the needs of very large, complex multi-national organizations.
Maximizer CRM 11 includes new features to provide real-time business insights across various areas including sales, marketing, and mobility. Key updates include wizard-driven dashboards for executives to view KPIs, sales quota management and opportunity monitoring tools, an online campaign manager for marketing, and an intuitive mobile interface for BlackBerry smartphones. The new version aims to help users make better business decisions, optimize revenue generation, execute effective marketing campaigns, and collaborate efficiently on the go.
CaliberRM is a requirements management tool that helps software teams effectively capture, communicate, and manage changing requirements. It provides a centralized repository for requirements and traces dependencies to facilitate impact analysis and change management. Key features include rich editing of requirements, generation of specifications documents, validation of requirements quality, and notifications of changes.
Microsoft Dynamics CRM 2011 Walkthrough Part 1Jukka Niiranen
Microsoft Dynamics CRM 2011 includes several new and enhanced end-user tools and features, including:
1) An improved Outlook client that allows browsing CRM data and filtering views directly from Outlook.
2) Enhanced form customization options, such as adding sub-grids and filtered lookups.
3) New auditing features that record changes to records over time and allow viewing audit histories.
Dynamics CRM document covers many topics related to customizing and extending the functionality of Dynamics CRM including: creating custom entities and fields, form and view customization, entity relationships, business rules, plugins, workflows, and connecting CRM to external systems using SSIS. The agenda covers areas like security, user management, and administration as well as development topics such as client-side scripting, CRUD operations, and advanced querying.
Microsoft Dynamics NAV 2009 introduced new technologies like the RoleTailored user experience to simplify access to information, streamline integration, enhance reporting, and maximize investment in Microsoft products. Microsoft Dynamics NAV 2013 builds on this platform and delivers new features to help users gain greater control, increase margins, and grow business through capabilities like Cash Flow Forecasting, Cost Accounting, and the new Microsoft Dynamics NAV Web Client. It provides greater deployment flexibility and tools to realize business ambitions.
xRM4Legal Makes Microsoft Dynamics CRM Viable for Law FirmsDavid Blumentals
More than just marketing, xRM4Legal offers law firms the opportunity to integrate all their line of business applications within one easy to use, easy to manage, easy to afford environment. xRM is the evolution of CRM, where the X in xRM stands for eXtended Relationship Management. xRM is based on Microsoft CRM and the .NET platform
Many Microsoft partners have found success driving revenue and delivering solutions with Office 365. Partners have built profitable service portfolios by selling, implementing, and creating value-added services for Office 365.
But there are many additional opportunities from Microsoft which enable Office 365 partners to elevate productivity for their customers. Microsoft Dynamics CRM Online is such an opportunity.
Dynamics CRM Online is a customer relationship management solution which allows your customers to track relationships and interactions, automate business processes and gain valuable insights into their own customers. Capabilities include Sales Force Automation, Marketing Automation, Customer Service and Social Media Insight.
O365 and CRM Online give customers an incredible solution and partners a fantastic new offering. Adding CRM Online to O365 lets customers cut through the clutter—to zero in and easily identify what they need to do next. It lets them find a relevant way to connect with their customer so they can win faster. And lets them collaborate with people, find, and access the information they need to ultimately sell more and grow their business.
By adding CRM Online, you elevate the discussion to business solutions. Plus, in addition to sales, Dynamics CRM has great solutions across marketing, customer service, and social listening & engagement.
xRM extends this to industry-specific solutions.
In this technical training we introduce Dicker Data reseller partners to Managing and deploying customizations; Configuring role-based security; Customizing entities, adding fields and relationships; Building forms for users to input and retrieve data; Presenting clear information in views and charts; Combining data sources on a dashboard; Going beyond role-based record-level security and assisting users through their business processes.
The document summarizes a presentation about new features in Microsoft Dynamics CRM 2011. It highlights enhancements in three areas: making CRM more familiar through an improved user interface, more intelligent through new analytics and process tools, and more connected through enhanced collaboration and integration features. The presentation also demonstrates these new capabilities through live demos and discusses Microsoft's momentum in the CRM market in terms of customers, partners and cloud deployment options.
The Pivotal SharePoint Connector enables integration between a company's Pivotal CRM system and Microsoft SharePoint for improved document storage and collaboration capabilities. It allows sharing of content and information between SharePoint and Pivotal records. The connector plugs into SharePoint Server to enable communication with Pivotal CRM through supported interfaces. It automatically creates unique SharePoint sites for companies and opportunities linked to Pivotal records.
Architecture of Dynamics CRM with Office 365 and AzurePedro Azevedo
This document provides an overview of Microsoft Dynamics 365 and how it integrates with other Microsoft technologies like Office 365 and Azure. It discusses the CRM market share and Dynamics 365's growth. It describes how Dynamics 365 can be deployed on Azure and leverages various Azure services for capabilities like offline syncing, machine learning, voice of customer, and more. It also mentions related technologies like PowerApps, Logic Apps, and pricing considerations.
Raju Vaneshwar Nareshwar has over 5 years of experience as a technical consultant specializing in customizing and extending Microsoft Dynamics NAV. He has expertise in C/Side, SQL Server, JavaScript, C#, and integrating NAV with other systems. His roles have included custom development, support, and implementations for clients in manufacturing, agriculture, and construction. He holds a Bachelor's degree in ICT from the University of Colombo School of Computing and is a Microsoft Certified Professional for Dynamics NAV 2013.
The document provides a summary of Catherine E. Sullivan's qualifications and experience as a programmer and software developer with over 16 years of experience. She has extensive skills in .NET, C#, SQL, Java, Perl and other programming languages and databases. Her experience includes roles at the University of Washington, CapitalOne, NY State Insurance Fund, and NY State Education Department developing and maintaining various software systems. She holds certifications in UNIX/C/C++/Java and completed an intensive .NET Master's program.
Tad Henry has over 15 years of experience as a software developer in the Seattle area, working for companies including Microsoft, Nordstrom, EMP, Getty Images, and Vulcan. He has strong skills in web development, data visualization, API integration, and data modeling. Recently he has been building a mobile application for Seattle open data. Previously he designed and developed media-rich websites and dashboards at Microsoft to visualize and monitor large datasets.
Eva J. Simmer has experience developing Java REST APIs and mobile applications. She has worked as a Java developer at Porch.com and OnAir, creating APIs to process background checks, aggregate and render project data, and handle payments. Simmer also founded a web design company in college and created mobile apps to scrape and display barcode data while allowing sharing on social media. She holds a computer engineering degree and has experience with languages like Java, C#, C++, and technologies including Spring, Hibernate, SQL, and git.
Team building games help develop team cohesiveness and tear down communication barriers. The document describes several team building exercises for cheerleading squads, including relay races, scavenger hunts, and trust-building activities. It emphasizes that team building takes ongoing effort but results in increased commitment and productivity for accomplishing team objectives.
Jay Nicely has over 20 years of experience managing complex IT programs and projects for Fortune 500 companies. He specializes in implementing Oracle ERP applications such as Oracle EBS, Oracle Financials, and Oracle HRMS. As a program/project manager, he has led teams in successfully delivering multi-million dollar projects on time and within budget. His core skills include managing budgets, resources, schedules, and client relationships.
The document discusses the differences between role-based security and object-based security in Microsoft Dynamics CRM. Role-based security uses the authentication and authorization mechanisms of the application server and defines privileges at design time on a system-wide basis. Object-based security applies access rights to individual instances of objects. A privilege grants rights to a class of objects, while an access right only applies to a single object if the user has the required privilege.
Java EE is an open standard for developing and deploying multi-tier, web-enabled, server-centric enterprise applications. It includes specifications, libraries, documentation and tools that build upon Java SE. JBoss Application Server is an open-source application server that implements the Java EE platform. It provides reliability, performance and scalability out of the box. JBoss AS 5 introduced the JBoss Microcontainer, which replaced the previous JMX microkernel and simplified component lifecycles and dependencies. It has a modular, service-oriented architecture and supports features like clustering, security and transactions.
The Ring programming language version 1.2 book - Part 4 of 84Mahmoud Samir Fayed
The document provides an overview and documentation of the Ring programming language. It discusses the history and development of Ring, beginning in 2013. Key features of Ring include being small and fast, with a compact syntax, dynamic typing, garbage collection, object-oriented support, and the ability to embed Ring code in C/C++ programs. The documentation also covers Ring's license, language design principles such as simplicity and organization, and its visual implementation process.
CRM Integration Options–Scribe, SmartConnect, Microsoft Connector. What's the...BDO IT Solutions
Integration of CRM to your financial or operational systems can increase overall value, reduce manual entry effort, and reduce errors. Integration will also accelerate the speed of your business. During this session learn about the integration options available, price points and implementation effort.
Dynamics Crm Reference Architecture Version 1.0dekini
This document provides an overview of the key architectural components of Microsoft Dynamics CRM 2011 including the core CRM components, extended CRM capabilities, deployment in the cloud, and considerations for performance and scalability. It describes Dynamics CRM 2011 as a set of logical components including the server architecture, integration points, and user authentication methods. The reference architecture is intended to help guide deployment and management of Dynamics CRM 2011 instances.
This presentation is dedicated to Microsoft Dynamics, its organizational and technical points.
This presentation by Dmytro Kuiavets, SPM at GlobalLogic Kharkiv, and Dmytro Golodiuk, Solution Architect at ZEPPELIN International, was delivered at IT Weekend in Kharkiv on May 27, 2017.
This document discusses the shift from traditional on-premise software to cloud-based applications and services. It notes that the era of monolithic on-premise systems is coming to an end, driven by factors like the consumerization of IT, marketplaces, and the economics of cloud computing. The document provides examples of how companies like Angry Birds and Zynga have built successful businesses in the cloud. It also discusses opportunities for Microsoft Dynamics CRM partners, including building add-on cloud services as independent software vendors or focusing on specialized cloud-based applications and services as systems integrators.
The document discusses how K2 software can be used to build business applications with Microsoft Dynamics CRM. It highlights K2's visual workflow and form designers that integrate with CRM and other systems like SharePoint. The presentation demonstrates how K2 provides capabilities beyond standard CRM, including complex workflows, data integration, and building workflows and forms that span on-premises and cloud systems. It also notes limitations of native CRM and how K2 can help overcome these by delivering enhanced processes, forms experiences and no-code integration across lines of business systems.
How to implement Dynamics CRM to empower businesses?NexSoftsys
Microsoft Dynamics CRM implementation will empower your business with integrated tools for Customer management, Lead management, Task Automation, sales improvements, and enhanced visibility.
This document provides an introduction to Microsoft Dynamics CRM. It discusses what Microsoft Dynamics and CRM are, as well as the history and features of Microsoft Dynamics CRM. Key points covered include that Microsoft Dynamics CRM is a customer relationship management software from Microsoft focused on sales, marketing and service. It can be deployed on-premises or as Software as a Service. The document also summarizes customization and extension options, as well as how solutions can be used to package and distribute customizations.
B. Munikishore is a Microsoft Dynamics CRM technical consultant with over 7 years of experience customizing, extending, and testing CRM applications. He has worked on numerous projects for clients in various industries, customizing CRM to meet requirements and automating processes using workflows, plugins, and JavaScript. His technical skills include C#, ASP.NET, SQL Server, and he holds a bachelor's degree in computer science and engineering.
What Are the Various Solutions Provided by Microsoft Dynamics 365?Business Experts Gulf
Microsoft Dynamics 365 Dubai is a comprehensive suite of cloud-based business applications that help organizations streamline their operations, enhance customer engagement, and drive growth. Microsoft Dynamics 365 offers a unified platform that integrates various business functions, including sales, marketing, customer service, finance, operations, and more. Learn More!
Website - https://www.bemea.com/microsoft-dynamics-365-dubai/
PivotalCRM - Pivotal_crm and microsoft_usPivotal CRM
For more than a decade, Pivotal CRM has been the choice of Microsoft-centric organizations that want the flexibilityto model their specific business practices within their customer relationship management system. CDC Softwarecooperates closely with Microsoft to ensure Pivotal CRM customers can always take advantage of the latest advancesin Microsoft technology
This document provides an overview of Customer Relationship Management (CRM) and Microsoft Dynamics CRM. It defines CRM and describes how Dynamics CRM allows organizations to track customer interactions across the customer lifecycle. The document outlines the basics of Dynamics CRM including its features, modules for sales, marketing and service management, and new features in the 2016 release like the interactive service hub and one click document generation. It also discusses CRM terminology, the Dynamics application components, and career opportunities working with Dynamics CRM.
Microsoft Dynamics 365 is the all-new next level of business applications that facilitates intelligence enabling organizations to evolve, grow, and completely transform.This powerful software suite amalgamates CRM and ERP functionalities by delivering new purpose-built applications that work and integrate together to accomplish specific business process workflows
Microsoft dynamics 365 implementations shreyGupta87
Microsoft Dynamics 365 is a suite of Intelligent Business Applications from Microsoft that enable organizations run all aspects of their operations, and deliver ever improving results through predictive AI drive insights. Dynamics 365 covers the traditional scope of ERP and CRM, and stretches far beyond covering areas that were not conceived of until a couple of years ago.
Devops can accomplish this by occasionally meeting as a team or through written documentation. Both groups commit time to improving their processes when they work together on implementing solutions.
Dynamics Day '11 - Dynamics CRM Update and RoadmapIntergen
Steven Foster presented a Dynamics CRM update and roadmap. He discussed Microsoft's positioning of Dynamics CRM as a flexible business application that helps organizations increase productivity through connections across people, processes, and ecosystems. Foster then reviewed highlights of the Dynamics CRM 2011 roadmap, including a focus on delivering familiar, intelligent, and connected experiences. He demonstrated several new features aimed at improving the user experience, sales, marketing, and customization capabilities.
Dynamics 365 will integrate common modules from Dynamics AX and CRM, allowing users to choose apps from the AppSource portal. It will include modules like Sales, Customer Service, and Finance. Developers will be able to extend Dynamics 365 using tools like Visual Studio, Office 365, Power BI, Power Apps, and Azure. They can develop custom solutions and integrate data from sources like SharePoint, OneNote, and Outlook. Overall, Dynamics 365 aims to provide a unified platform for business applications and data.
Informatica provides a cloud data management platform that allows users to integrate, cleanse, and manage data across cloud and on-premise systems. The platform offers hundreds of pre-built connectors, a visual designer tool, out-of-the-box templates, and capabilities for real-time integration between systems. It utilizes a secure agent architecture to access both cloud and on-premise data sources. The platform is optimized for different types of users, including developers, business analysts, and line of business administrators.
The document summarizes the key updates and new capabilities in the Spring 18 release of Microsoft Dynamics 365. Major focuses of the release include GDPR compliance, accessibility, and the new Unified Interface Framework apps for Sales, Service, Field Service and PSA. A major evolution is the Business Application Platform with PowerApps, Flow and the Common Data Service (CDS). CDS now enables model-driven and canvas apps to be built on Dynamics 365 entities and integrated with external data sources. The future of the platform is focused on a unified mobile experience, improved data integration and analytics capabilities.
Getting started with Microsoft dynamics crm 2016Firoz Muhammed
It was the slide deck I presented on the 'Microsoft dynamics CRM developers meetup- Hyderabad' on 13th August 16.
The Content of the presentations is:
What is CRM?
Intro to Microsoft Dynamics CRM
Microsoft Dynamics Stack
History of Dynamics CRM
Basic CRM Terminologies
Basic Modules in Dynamics CRM
New Features in Dynamics CRM 2016
Certification path for Dynamics CRM
To learn more about Dynamics 365 and Power Apps visit www.dynamics365academy.com.
Subscribe YouTube Channel: https://www.youtube.com/channel/UCMBU1f6rshoFVB90yGwRE0w| training@magnifez.com | +91 9739 222 782
This document summarizes Microsoft products and technologies including its service-oriented architecture, web services, Windows Communication Foundation, Windows Workflow Foundation, BizTalk Server, Office SharePoint Server, SQL Server, business intelligence solutions including dashboards and reporting, and Microsoft Dynamics solutions for CRM, SCM, and ERP. The purpose is to provide an academic and informative benchmark of Microsoft's offerings.
How to Make a Field Mandatory in Odoo 17Celine George
In Odoo, making a field required can be done through both Python code and XML views. When you set the required attribute to True in Python code, it makes the field required across all views where it's used. Conversely, when you set the required attribute in XML views, it makes the field required only in the context of that particular view.
This document provides an overview of wound healing, its functions, stages, mechanisms, factors affecting it, and complications.
A wound is a break in the integrity of the skin or tissues, which may be associated with disruption of the structure and function.
Healing is the body’s response to injury in an attempt to restore normal structure and functions.
Healing can occur in two ways: Regeneration and Repair
There are 4 phases of wound healing: hemostasis, inflammation, proliferation, and remodeling. This document also describes the mechanism of wound healing. Factors that affect healing include infection, uncontrolled diabetes, poor nutrition, age, anemia, the presence of foreign bodies, etc.
Complications of wound healing like infection, hyperpigmentation of scar, contractures, and keloid formation.
LAND USE LAND COVER AND NDVI OF MIRZAPUR DISTRICT, UPRAHUL
This Dissertation explores the particular circumstances of Mirzapur, a region located in the
core of India. Mirzapur, with its varied terrains and abundant biodiversity, offers an optimal
environment for investigating the changes in vegetation cover dynamics. Our study utilizes
advanced technologies such as GIS (Geographic Information Systems) and Remote sensing to
analyze the transformations that have taken place over the course of a decade.
The complex relationship between human activities and the environment has been the focus
of extensive research and worry. As the global community grapples with swift urbanization,
population expansion, and economic progress, the effects on natural ecosystems are becoming
more evident. A crucial element of this impact is the alteration of vegetation cover, which plays a
significant role in maintaining the ecological equilibrium of our planet.Land serves as the foundation for all human activities and provides the necessary materials for
these activities. As the most crucial natural resource, its utilization by humans results in different
'Land uses,' which are determined by both human activities and the physical characteristics of the
land.
The utilization of land is impacted by human needs and environmental factors. In countries
like India, rapid population growth and the emphasis on extensive resource exploitation can lead
to significant land degradation, adversely affecting the region's land cover.
Therefore, human intervention has significantly influenced land use patterns over many
centuries, evolving its structure over time and space. In the present era, these changes have
accelerated due to factors such as agriculture and urbanization. Information regarding land use and
cover is essential for various planning and management tasks related to the Earth's surface,
providing crucial environmental data for scientific, resource management, policy purposes, and
diverse human activities.
Accurate understanding of land use and cover is imperative for the development planning
of any area. Consequently, a wide range of professionals, including earth system scientists, land
and water managers, and urban planners, are interested in obtaining data on land use and cover
changes, conversion trends, and other related patterns. The spatial dimensions of land use and
cover support policymakers and scientists in making well-informed decisions, as alterations in
these patterns indicate shifts in economic and social conditions. Monitoring such changes with the
help of Advanced technologies like Remote Sensing and Geographic Information Systems is
crucial for coordinated efforts across different administrative levels. Advanced technologies like
Remote Sensing and Geographic Information Systems
9
Changes in vegetation cover refer to variations in the distribution, composition, and overall
structure of plant communities across different temporal and spatial scales. These changes can
occur natural.
Chapter wise All Notes of First year Basic Civil Engineering.pptxDenish Jangid
Chapter wise All Notes of First year Basic Civil Engineering
Syllabus
Chapter-1
Introduction to objective, scope and outcome the subject
Chapter 2
Introduction: Scope and Specialization of Civil Engineering, Role of civil Engineer in Society, Impact of infrastructural development on economy of country.
Chapter 3
Surveying: Object Principles & Types of Surveying; Site Plans, Plans & Maps; Scales & Unit of different Measurements.
Linear Measurements: Instruments used. Linear Measurement by Tape, Ranging out Survey Lines and overcoming Obstructions; Measurements on sloping ground; Tape corrections, conventional symbols. Angular Measurements: Instruments used; Introduction to Compass Surveying, Bearings and Longitude & Latitude of a Line, Introduction to total station.
Levelling: Instrument used Object of levelling, Methods of levelling in brief, and Contour maps.
Chapter 4
Buildings: Selection of site for Buildings, Layout of Building Plan, Types of buildings, Plinth area, carpet area, floor space index, Introduction to building byelaws, concept of sun light & ventilation. Components of Buildings & their functions, Basic concept of R.C.C., Introduction to types of foundation
Chapter 5
Transportation: Introduction to Transportation Engineering; Traffic and Road Safety: Types and Characteristics of Various Modes of Transportation; Various Road Traffic Signs, Causes of Accidents and Road Safety Measures.
Chapter 6
Environmental Engineering: Environmental Pollution, Environmental Acts and Regulations, Functional Concepts of Ecology, Basics of Species, Biodiversity, Ecosystem, Hydrological Cycle; Chemical Cycles: Carbon, Nitrogen & Phosphorus; Energy Flow in Ecosystems.
Water Pollution: Water Quality standards, Introduction to Treatment & Disposal of Waste Water. Reuse and Saving of Water, Rain Water Harvesting. Solid Waste Management: Classification of Solid Waste, Collection, Transportation and Disposal of Solid. Recycling of Solid Waste: Energy Recovery, Sanitary Landfill, On-Site Sanitation. Air & Noise Pollution: Primary and Secondary air pollutants, Harmful effects of Air Pollution, Control of Air Pollution. . Noise Pollution Harmful Effects of noise pollution, control of noise pollution, Global warming & Climate Change, Ozone depletion, Greenhouse effect
Text Books:
1. Palancharmy, Basic Civil Engineering, McGraw Hill publishers.
2. Satheesh Gopi, Basic Civil Engineering, Pearson Publishers.
3. Ketki Rangwala Dalal, Essentials of Civil Engineering, Charotar Publishing House.
4. BCP, Surveying volume 1
Communicating effectively and consistently with students can help them feel at ease during their learning experience and provide the instructor with a communication trail to track the course's progress. This workshop will take you through constructing an engaging course container to facilitate effective communication.
ISO/IEC 27001, ISO/IEC 42001, and GDPR: Best Practices for Implementation and...PECB
Denis is a dynamic and results-driven Chief Information Officer (CIO) with a distinguished career spanning information systems analysis and technical project management. With a proven track record of spearheading the design and delivery of cutting-edge Information Management solutions, he has consistently elevated business operations, streamlined reporting functions, and maximized process efficiency.
Certified as an ISO/IEC 27001: Information Security Management Systems (ISMS) Lead Implementer, Data Protection Officer, and Cyber Risks Analyst, Denis brings a heightened focus on data security, privacy, and cyber resilience to every endeavor.
His expertise extends across a diverse spectrum of reporting, database, and web development applications, underpinned by an exceptional grasp of data storage and virtualization technologies. His proficiency in application testing, database administration, and data cleansing ensures seamless execution of complex projects.
What sets Denis apart is his comprehensive understanding of Business and Systems Analysis technologies, honed through involvement in all phases of the Software Development Lifecycle (SDLC). From meticulous requirements gathering to precise analysis, innovative design, rigorous development, thorough testing, and successful implementation, he has consistently delivered exceptional results.
Throughout his career, he has taken on multifaceted roles, from leading technical project management teams to owning solutions that drive operational excellence. His conscientious and proactive approach is unwavering, whether he is working independently or collaboratively within a team. His ability to connect with colleagues on a personal level underscores his commitment to fostering a harmonious and productive workplace environment.
Date: May 29, 2024
Tags: Information Security, ISO/IEC 27001, ISO/IEC 42001, Artificial Intelligence, GDPR
-------------------------------------------------------------------------------
Find out more about ISO training and certification services
Training: ISO/IEC 27001 Information Security Management System - EN | PECB
ISO/IEC 42001 Artificial Intelligence Management System - EN | PECB
General Data Protection Regulation (GDPR) - Training Courses - EN | PECB
Webinars: https://pecb.com/webinars
Article: https://pecb.com/article
-------------------------------------------------------------------------------
For more information about PECB:
Website: https://pecb.com/
LinkedIn: https://www.linkedin.com/company/pecb/
Facebook: https://www.facebook.com/PECBInternational/
Slideshare: http://www.slideshare.net/PECBCERTIFICATION
Strategies for Effective Upskilling is a presentation by Chinwendu Peace in a Your Skill Boost Masterclass organisation by the Excellence Foundation for South Sudan on 08th and 09th June 2024 from 1 PM to 3 PM on each day.
Main Java[All of the Base Concepts}.docxadhitya5119
This is part 1 of my Java Learning Journey. This Contains Custom methods, classes, constructors, packages, multithreading , try- catch block, finally block and more.
BÀI TẬP DẠY THÊM TIẾNG ANH LỚP 7 CẢ NĂM FRIENDS PLUS SÁCH CHÂN TRỜI SÁNG TẠO ...
8969 a 02
1. Chapter 2: Microsoft Dynamics CRM Architecture
CHAPTER 2: MICROSOFT DYNAMICS CRM
ARCHITECTURE
Objectives
The objectives are:
• Identify the extensibility points within the Microsoft Dynamics CRM
Architecture .
• Locate Microsoft Dynamics CRM Outlook clients within the
Microsoft Dynamics CRM Architecture.
• Enumerate the layers of the Microsoft Dynamics CRM application
and their responsibilities.
• Identify specific responsibilities of the Application Layer .
• Identify specific responsibilities of the Platform Layer .
• Identify deployment considerations that may impact the extensibility
of Microsoft Dynamics CRM.
Introduction
Microsoft Dynamics® CRM is built on technologies designed to work now and
into the future, protecting business value and providing an integrated
environment that can be extended across systems and platforms. The .NET
architecture of Microsoft Dynamics CRM combines with Microsoft® Windows
Server™ and Microsoft® Active Directory®, Microsoft® SQL Server®, Microsoft®
Exchange Server, and Microsoft® BizTalk® Server families to help ensure:
• High performance.
• Tight security.
• Rich messaging functionality.
• Efficient, affordable customizations and integrations.
Because it is built on .NET technologies, users can access Microsoft Dynamics
CRM through a Web application that is running in Microsoft® Internet Explorer
and through a Microsoft® Outlook® client. Microsoft Dynamics CRM offers
tightly integrated sales, customer service, and marketing functionality.
There are many details of the Microsoft Dynamics CRM architecture and design
that may be interesting to software architects from a design perspective. But this
course focuses on how the architecture affects practical decisions that developers
make when planning and creating solutions that solve business problems with
Microsoft Dynamics CRM.
2-1
2. Extending Microsoft Dynamics® CRM 4.0
Extensibility Points
FIGURE 2.1 FIGURE 2-1: MICROSOFT DYNAMICS CRM 4.0 EXTENSIBILITY
ARCHITECTURE
Outside the customization tools that are included in Microsoft Dynamics CRM,
four extensibility points are identified for this course. These are the focus of this
topic. These extensibility points are as follows:
• Web Service Programming
• Custom Workflow Activities
• Plug-ins
• Client Programming
Web Service Programming
The Microsoft Dynamics CRM Web application and any other client applications
provided with Microsoft Dynamics CRM, such as Deployment Manager, use
APIs available through Microsoft Dynamics CRM Web services to perform
actions in Microsoft Dynamics CRM.
When writing code to perform actions in Microsoft Dynamics CRM, use APIs
documented in the Microsoft Dynamics CRM SDK. These Web services provide
strongly typed access to all entities in Microsoft Dynamics CRM, including
custom entities and attributes.
2-2
3. Chapter 2: Microsoft Dynamics CRM Architecture
Custom Workflow Activities
The Microsoft Dynamics CRM Asynchronous Service runs on the Microsoft
Dynamics CRM Server. This service responds to events, schedules events, and
runs processes. Workflow rules can include actions which invoke class methods
that are contained in .NET assemblies.
Plug-ins
Use Plug-ins to register .NET assemblies to subscribe to a published set of events
and to have the code run when the event occurs. Plug-ins are the way that custom
business logic, including data integration with other systems, can be achieved.
Client Programming
All client programming code is stored as metadata in the Microsoft Dynamics
CRM database. This enables the client programming to be transported easily
from one deployment to another and also for the code to function in the Outlook
client.
Microsoft Dynamics CRM does not support modification of the files included in
the application. All client code must be added in the locations specified in the
Software Development Kit (SDK). Customizations must be made using the tools
provided in the Web application, by importing customizations in an XML file or,
in some circumstances, by editing customization files.
When forms are rendered in either the Web or Outlook clients, the code is
included and is executed on the client computer when the designated events
occur.
Microsoft Office Outlook Clients
There are two Outlook clients for Microsoft Dynamics CRM:
• The Microsoft Dynamics CRM for Microsoft Office Outlook
• The Microsoft Dynamics CRM for Microsoft Office Outlook with
Offline Access
Microsoft Dynamics CRM for Microsoft Office Outlook
This client can only be used when connected to the Microsoft Dynamics CRM
Server through the network. It allows for multiple users to access Microsoft
Dynamics CRM through Outlook on the same computer. A simple way to
understand it is that it provides access to the Microsoft Dynamics CRM Web
application through Outlook.
2-3
4. Extending Microsoft Dynamics® CRM 4.0
Microsoft Dynamics CRM for Microsoft Office Outlook
with Offline Access
This client supports offline use. The user interacts with Microsoft Dynamics
CRM data in Outlook just like the Microsoft Dynamics CRM for Microsoft
Office Outlook client. To support offline use, the Microsoft Dynamics CRM for
Microsoft Office Outlook with Offline Access client uses a local version of the
Microsoft Dynamics CRM Web application hosted on a local Web server. This
local Web server can only be used for the local instance of the Outlook client to
access Microsoft Dynamics CRM. A SQL Server 2005 Express database
provides data storage.
When the offline client is synchronized, any customizations applied on the
Microsoft Dynamics CRM server are transferred to the local Microsoft Dynamics
CRM application.
The Client programming model includes methods to determine which client is
being used and whether the user is online or offline. Developers can use these
criteria to disable functionality that requires a connection to the network.
Workflow rules are not included in the offline client, but plug-ins can be
deployed to the offline client. Workflow rules and Plug-ins are applied when the
user synchronizes data.
In Microsoft Dynamics CRM Web Service Programming can be performed on
the local version of the Microsoft Dynamics CRM application in the Microsoft
Dynamics CRM for Microsoft Office Outlook with Offline Access client. This
behavior is an improvement upon previous versions of Microsoft Dynamics
CRM, which did not provide a supported way to access CRM programmatically
in the offline client.
Layers
Microsoft Dynamics CRM uses a metadata driven architecture to provide the
flexibility to create custom entities and additional system entity attributes and
also to make upgrades and enable transportation of customizations easier. This
allows for changes in the data structure without requiring any change to code in
the Microsoft Dynamics CRM Platform or applications.
Metadata-driven Architecture
Platform Metadata
All the information necessary for Microsoft Dynamics CRM Server to operate is
stored in the Microsoft Dynamics CRM metadata. This includes information
about:
• Entities
• Attributes
2-4
5. Chapter 2: Microsoft Dynamics CRM Architecture
• Mappings
• Relationships
Application Metadata
The Microsoft Dynamics CRM Web application also uses metadata to store:
• Form Customizations
• Client-side code
• SiteMap configurations
• Custom buttons, menu and navigation items
In a multi-tenant implementation of Microsoft Dynamics CRM, multiple
organizations can be created. Each organization's metadata is maintained
independently from all other organizations.
Divisions of Layers
The design of Microsoft Dynamics CRM 4.0 can be discussed at many different
levels of depth. There are different physical and logical components that may be
organized several different ways. The most appropriate division of these layers
depends on the depth of the analysis and type of task being performed.
The most common division is into the following horizontal layers:
• Application
• Platform
• Database
This division can be implemented physically within Microsoft Dynamics CRM,
with different servers being configured for different roles, which map to the
logical layers as follows:
• The Application layer is implemented in the Application Server role.
• The Platform layer is implemented in the Platform Server role.
• The Database layer is implemented on the Microsoft SQL Server.
Application Layer
As a Web application Microsoft Dynamics CRM runs within Internet
Information Server (IIS). Transactions are initiated when users submit forms by
clicking the different types of ‘save’ buttons on forms found in the application.
The Microsoft Dynamics CRM Application includes logic that controls security
and data validation. When the Microsoft Dynamics CRM pages are presented
within Internet Explorer, custom logic that can be attached to events and data
validation logic is included on the client.
2-5
6. Extending Microsoft Dynamics® CRM 4.0
This lesson includes the following topics:
• Application Level Security discusses how security is applied
related to:
o Forms and Navigation
o No Field Level Security
• Data Validation discusses how the Application layer enforces:
o Data Integrity
o Data Validity
• Business Logic discusses the kinds of business logic that is applied
in the application layer.
• Metadata driven UI discusses how metadata is used in the
application layer.
Forms and Navigation
When they use Microsoft Dynamics CRM, users should never receive a message
saying they do not have permissions to perform an action. This is because the
individual user's security metadata is used by Microsoft Dynamics CRM to select
which parts of the application are displayed and how the user can interact with
the application.
The individual user's security metadata refers to the security roles that are
assigned to the user. This controls the data the user can view and the actions he
or she can perform specific to areas of the application:
• Navigation: If the user does not have access to read Opportunities in
Microsoft Dynamics CRM - that user does not see Opportunities in
the application navigation. If the user does not have privileges to
perform Customization, the Customization area is not displayed.
• Forms: The Microsoft Dynamics CRM supports read-only and also
writable forms for entities. For example, if a user can view
Opportunities but cannot update them, the application displays
opportunities in a special ‘read-only’ form where all the input fields
are disabled. Users who cannot view a particular record do not see
the record returned in any view or report - they are never aware that
it exists.
No Field Level Security
Microsoft Dynamics CRM Security is set at the entity level. In Microsoft
Dynamics CRM there is no mechanism provided to implement field level
security based on security roles. If there is sensitive data that needs to be stored
in Microsoft Dynamics CRM that is related to a particular entity, it is recommend
to create a separate custom entity and to configure security separately for that
entity.
2-6
7. Chapter 2: Microsoft Dynamics CRM Architecture
NOTE: Use DHTML in the OnLoad event to hide fields, tabs or sections in a
form that is based on user security roles. But this method is not supported and
will not completely hide the data from users. Users can still access data in fields
using the Print, Advanced Find, or Export to Microsoft® Excel capabilities.
Data Validation
The Microsoft Dynamics CRM application provides data validation for
information entered in forms. Data validation is performed by using DHTML on
the client to improve performance. This represents a best practice that can be
applied to create Web applications that use the Microsoft Dynamics CRM
platform.
This data validation represents two types:
• Data Integrity
• Data Validity
Data Integrity
Data Integrity
Some entities require a relationship to exist. For example, Opportunities must be
related to either a Contact or an Account. The application uses mapping to make
this easier when a new record is created or by preventing a record from being
saved when required fields are not provided.
The Microsoft Dynamics CRM platform is ultimately responsible for data
integrity. The application supports the requirements of the platform in the
following ways:
• Mapping: The mapping capabilities that make the entry of relational
data easier can also be customized to include additional fields, which
should be copied to new records created in Microsoft Dynamics
CRM. This customization is performed by using the customization
tools in the Web application.
• Constraints: Constraints can be set on individual fields to make
them required. This prevents users from saving a record unless data
is included in the field.
2-7
8. Extending Microsoft Dynamics® CRM 4.0
Data Validity
Data Validity
Only valid data can be entered through the Microsoft Dynamics CRM
application. This is controlled by using various DHTML methods to test the data
that is entered in each field. Whenever the data in a field is changed, the validity
of the data is checked. The data must represent a valid data type expected by the
Microsoft Dynamics CRM platform. Invalid values are rejected. Most
customizable fields can be configured by modifying attribute properties to set
specific validity settings that may vary within implementations.
The Microsoft Dynamics CRM platform is ultimately responsible for data
validity. The application supports the requirements of the platform so that users
will not experience errors originating from the Microsoft Dynamics CRM
Platform.
Business Logic
The term ‘business logic’ refers to the intrinsic processes that are built into
Microsoft Dynamics CRM. For example:
• Accounts can be active or inactive.
• Service cases follow a resolution process when they are completed.
• Opportunities must be assigned to a user and related to either a
Contact or Account record.
Business Logic in the Application Layer
Business Logic in the Application Layer
The Microsoft Dynamics CRM platform includes most of the business logic to
implement the application. The application layer must reflect the business logic
that is defined in the platform.
However, the Microsoft Dynamics CRM application includes some business
logic that is not defined in the platform. One example of this business logic
illustrates how custom applications can use a similar approach to add
functionality on the Microsoft Dynamics CRM platform.
Convert Lead
A good example is the ability to convert leads into Accounts, Contacts and
Opportunities. The Microsoft Dynamics CRM platform does not include a
method called “Convert Lead,” but this functionality is included in the Microsoft
Dynamics CRM application. The user is provided with a button to convert a lead.
When this is done the user can make choices about exactly which new objects to
create.
2-8
9. Chapter 2: Microsoft Dynamics CRM Architecture
The Microsoft Dynamics CRM application then calls the Create method on each
of the new objects.
API Building Blocks
API building blocks
When working with the methods documented in the Microsoft Dynamics CRM
SDK Server Programming guide specific messages can be located to execute
business actions on objects. To convert an Order to an Invoice, or to close a
service case, for example.
If a specific message cannot be located to perform a business task, the logic
needed in the application can be included by combining different messages. If
desired, this can be done in Plug-ins, Custom Workflow Activities or in a stand-
alone application that may be integrated into Microsoft Dynamics CRM.
This is very important when working with custom entities because only messages
for basic and security operations are generated by Microsoft Dynamics CRM. It
may be desirable to create methods in an application for specialized business
logic operations for custom entities.
Metadata-driven User Interface
A very important achievement in the Microsoft Dynamics CRM application, is
the framework to deliver a fully metadata driven user interface. Metadata from
security roles are used to control which parts of the application are shown to
individual users, but this is just one way that metadata is used. Another key
feature enabled by using a metadata driven design, is the customization
framework. Some of the UI areas controlled by metadata include the following:
• The form layout.
• The presentation of attributes in the forms.
• The code that is associated with form and field events.
• How navigation options are presented.
• How custom buttons, menu items and navigation areas are presented.
• The type of form that is presented to the user.
Microsoft Dynamics CRM supports multiple languages within the user-interface,
such that a user may see labels and other text in a different language from
another user. These languages and the associated labels are also stored within the
metadata. The language edition of Microsoft Dynamics CRM Server that is
installed by the organization is considered its base language. The organization
can then install Multilingual User Interface (MUI) language packs for additional
languages if they are requested by any of the users.
2-9
10. Extending Microsoft Dynamics® CRM 4.0
When one or more MUI language packs are installed, each user can select which
language he or she wishes to use when accessing the application and online Help
files. This enables each user to personalize his or her Microsoft Dynamics CRM
experience. For example, one user in the organization may view the Microsoft
Dynamics CRM in Spanish, and another may view it in French.
Each MUI language pack contains all of the translated UI labels based on the
package's respective language. These translated labels are stored within the
metadata.
How it Works
How it works
If opening one of the .aspx pages that present a form in Microsoft Dynamics
CRM the type of page that most ASP.NET developers expect is not found. Much
of the page is rendered using custom controls.
NOTE: These controls were not created for reuse. There is no documentation for
re-using them or creating controls that inherit from them. These controls may
change without notice in future versions and any attempt to include them in
development projects is unwise and unsupported.
These controls are designed to receive data in XML from the Microsoft
Dynamics CRM platform and transform the data using XSLT in combination
with any metadata that applies to the control. The form used to display CRM data
is generated by controls such as these.
Platform Layer
The Platform Layer includes the following component functionality:
• Web Services describes how Web services are the only mechanism
to programmatically perform actions in Microsoft Dynamics CRM
beyond a simple retrieval of data.
• Entity Definitions describes how the platform stores definitions of
all the entities, attributes and relationships defined for that
implementation. This lesson also includes a demonstration of the
Metadata browser.
• Platform Security describes how the platform is ultimately
responsible for enforcing security in Microsoft Dynamics CRM.
• Platform Business Logic describes how Microsoft Dynamics CRM
Business logic is applied in the platform and how it can be extended.
• Data Access Components introduces how the platform interacts
with the Database layer and some of the methods available for
developers to retrieve data through the platform.
2-10
11. Chapter 2: Microsoft Dynamics CRM Architecture
Web Services
Web services provide the main way that applications can interact with the
Microsoft Dynamics CRM platform. These Web services not only allow business
transaction to be applied, they provide metadata that describes each
implementation of Microsoft Dynamics CRM. Through these Web services, the
platform provides all the information a developer must have to interact with a
Microsoft Dynamics CRM implementation.
Web services enable the development of distributed applications, with an
emphasis on interoperability. This design is typically described as a Service
Oriented Architecture (SOA). The decision to use SOA for the Microsoft
Dynamics CRM platform reflects the growing popularity of Web services and the
degree that Microsoft is committed to them.
Interoperability
Interoperability
This course does not provide an explanation of Web services, or the underlying
technologies such as SOAP, or XML that are used by them because the design of
the Microsoft Dynamics CRM 4.0 SDK has greatly simplified working with Web
services in Microsoft Dynamics CRM, using Visual Studio .NET. Although this
course only shows the most common ways that developers can extend Microsoft
Dynamics CRM using Microsoft technologies, understand that Web services
represent an open standard that allows interoperability from many technologies.
Earlier Versions
Earlier Versions
For the most part, Microsoft Dynamics CRM 4.0 is backward compatible with
Microsoft Dynamics CRM 3.0 . Existing application code can be easily extended
to use the new or improved Microsoft Dynamics CRM Web services, requiring
only a recompile and redeployment.
Alternatively, the Microsoft Dynamics CRM 3.0 Web service endpoints are
retained, which allows most existing code written for the Microsoft Dynamics
CRM 3.0 Web services to work with Microsoft Dynamics CRM 4.0.
Details can be found in the Microsoft Dynamics CRM SDK under Upgrading
from Microsoft Dynamics CRM 3.0
NOTE: Microsoft Dynamics CRM 3.0 customization xml files are not compatible
with Microsoft Dynamics CRM 4.0.
2-11
12. Extending Microsoft Dynamics® CRM 4.0
New SDK
New SDK
In Microsoft Dynamics CRM 4.0 the term SDK frequently refers to both the
documentation and the features that enable developers to work with Microsoft
Dynamics CRM.
The Microsoft Dynamics CRM 4.0 SDK is focused on messages and constructing
requests that meet the developer's needs. The Microsoft Dynamics CRM 4.0
SDK provides significant advantages for the developer. These include the
following:
• IntelliSense support in Visual Studio
• Dynamically generated WSDL
• Strong typing
• Design/Compile time errors
• Versioned schema and Web services
Microsoft Dynamics CRM provides three Web services:
• CrmService
• MetadataService
• CrmDiscoveryService
There is an additional Deployment SDK, which includes the Deployment Web
service.
CrmService: The main Web service for the Microsoft Dynamics CRM SDK is
CrmService.
This Web service contains the methods needed to write code against all the
entities in the system, either for data retrieval or modification. There are six
common methods, and there is another method, the Execute method, used
specifically to execute business logic.
MetadataService: This Web service allows access to information about the
entity, attribute, and relationship definitions in a Microsoft Dynamics CRM
organization. It can be used to retrieve metadata, but can also be used to modify
the metadata.
CrmDiscoveryService: Unlike the other two Web services which work at the
organization level, the CrmDiscoveryService is a global installation-level service.
This service provides information about all Microsoft Dynamic CRM
organizations within an installation.
2-12
13. Chapter 2: Microsoft Dynamics CRM Architecture
Microsoft Dynamics CRM 4.0 provides three different endpoints for the
CrmDiscoveryService; one for each authentication method, namely Active
Directory, Passport (used in Windows Live) and Web Form (used for Internet-
Facing Deployments).
Entity Definitions
The Platform layer needs to know about entity definitions and be able to manage
changes to the entity, while maintaining entity integrity. This is handled in the
following ways:
Entity Metadata: Because of the built-in capability of the Microsoft Dynamics
CRM schema to be extended, the platform must maintain a complete definition
of every entity, entity attribute, and relationship defined in an implementation.
Dynamic Schema: The ability of the platform to know about changes that are
applied to it enables the platform to protect itself from changes to the underlying
data structures. All entities, attributes, and relationships are stored as metadata.
That is why it is unsupported to access the SQL databases directly, except for
filtered views. To keep the logical entity definitions synchronized with the
physical database definitions, the platform must apply all changes to the
database.
Entity Definition
Entity Definition
The entity definition used by Microsoft Dynamics CRM includes how a given
attribute can be used. For example, some attributes like primary keys are ‘write
once’ (Valid for Create). After they are set, they should never be updated. Others
are ‘read-only’ (not Valid for Update), such as createdby or createdon. These
attributes are set by the platform and should not be modified.
Business Defined Rules: Other attributes should comply with business-defined
rules, such as constraints set on the attribute to make it ‘Business Required.’
Other Data: Data that is used by the system such as Entity Type codes, validity
options, and relationships are stored and used by the platform.
BusinessEntity
Business Entity
All Microsoft Dynamics CRM entities inherit from an abstract base class named
BusinessEntity. Objects of this type are used to perform general operations
common to all entities.
2-13
14. Extending Microsoft Dynamics® CRM 4.0
Metadata Browser
Metadata Browser
The Microsoft Dynamics CRM Metadata browser provides a manual way to
browse some of the metadata in Microsoft Dynamics CRM. The metadata
browser is available at http://server/organization/sdk/list.aspx
Platform Security
As described in Application Level Security , the Application layer provides one
level of security by preventing the user from viewing data or performing actions
based on security metadata. The platform also provides an additional security
check. Because the platform is designed for developers to build on, it does not
assume that the developer has already performed a pre-emptive security check.
Therefore, it performs another security check before servicing requests from any
application.
A good understanding of the Microsoft Dynamics CRM Security Model is
important, before developing extensions for Microsoft Dynamics CRM. The
Microsoft Dynamics CRM Security model is documented in Appendix A of the
Microsoft Dynamics CRM SDK.
This course does not provide a detailed explanation of the security model, but it
is recommended to become familiar with it, in particular, to understand:
• Role-based Security
• Object-based Security
• Security Principals
• Licenses
• Security Dependencies
Role-based Security
Role-based Security
Users are assigned roles which define the privileges available to them. The
platform checks for a user's privilege and rejects the operation if the user does not
have the necessary privilege. Table 2-1 lists the privileges available for most
entity types.
Privilege Description
Create Create an entity instance.
Read View entities.
Write Change entities instances.
Delete Remove an entity instance.
2-14
15. Chapter 2: Microsoft Dynamics CRM Architecture
Privilege Description
Append Associate a selected entity instance to another entity
instance.
Append To To associate another entity instance to this entity instance.
Assign Give ownership of an entity instance to another user.
Share Give access to entity instances to another user and
maintaining ownership.
Reparent Assign a different parent to an entity instance.
Enable/Disable Give or take away privileges.
TABLE 2-1: MICROSOFT DYNAMICS CRM PRIVILEGES
Privileges are combined with an access level. The Access Level uses the
ownership of the object and the organization structure of the implementation to
determine whether the user can apply privileges on a specific object.
There are four different Access Levels. The terminology used in the SDK differs
from the terminology in the Application.
SDK Access level name Application Name
Global Organization
Deep Parent: Child Business Units
Local Business unit
Basic User
None None Selected
TABLE 2-2: ACCESS LEVELS
Object -based Security
One of the goals of the Microsoft Dynamics CRM Security model is to support
data sharing. Users who have the share privilege on a particular entity instance
(object) can grant other users access rights for that object that can override
Access Level restrictions. However, sharing cannot grant a user a privilege if
they have no privileges at all on that entity. If the user does not belong to a role
that provides some level of access, sharing cannot provide that privilege. For
example, if a user does not have Read privileges on Accounts and an account is
shared with that user, the user will not be able to see that account.
Access rights: When an object is shared, certain access rights can be granted to
enable a particular user, or members of a team to perform actions on that object.
2-15
16. Extending Microsoft Dynamics® CRM 4.0
Security Principals
Security Principals
Entities in Microsoft Dynamics CRM are either owned by the organization or by
users. Instances of user-owned entities must be assigned a user as an owner.
Entity instances can be shared with other users and with teams. Both of these
represent types of Security Principals. A Security principal is a user or team that
can own or access an entity instance. Although a team cannot own an entity
instance, sharing an entity instance with a team makes it available to all the
members of the team that have access to that privilege.
Security Dependencies
Security Dependencies
Sometimes security dependencies exist because there must be more than one
access right to perform a given action. For example, if there is the CREATE
access right for accounts, an instance of the account entity can be created.
However, unless there also is READ access for the accounts, an instance of the
account entity cannot be created, and it is not possible to be the owner of that
new account instance.
Platform Business Logic
Besides the important business logic that is part of Microsoft Dynamics CRM,
such as requiring Opportunities to be associated with a Customer or that each
user owned object is assigned to a valid user, the platform enables custom
business logic through Plug-ins. The Workflow engine provides another method
to include custom business logic in the platform.
The Platform is responsible for raising events which enable event handlers to
respond and apply additional business logic. There are three primary users for
these events:
• Standard Business Logic
• Plug-ins
• Workflow
2-16
17. Chapter 2: Microsoft Dynamics CRM Architecture
Standard Business Logic
Standard Business Logic
Microsoft Dynamics CRM includes some standard behavior that represents the
business logic found in the Platform. Some examples of the default business
logic found in Microsoft Dynamics CRM include the following:
• Cascading behaviors: When an account is re-assigned, all the
objects related to it are also re-assigned to the new account owner if
the relationship settings are set to Parental. Cascading behaviors and
entity relationship settings are discussed in detail in the training
course A Customization and Configuration in Microsoft Dynamics
CRM 4.0.
• Automatic Sharing: When an object is re-assigned, the object is
automatically shared with the former owner if the System Setting
“Share reassigned entities with original owner” is set to Yes.
Plug-ins
Microsoft Dynamics CRM exposes a simple extension mechanism for
implementing the custom platform-based business logic “Plug-in” model. With
this model, developers are not limited to creating custom business logic only in
the application or through workflow processes; they can also construct business
logic that runs in the context of a call, but in response to a particular event.
Pre and Post Event Plug-ins: This extension mechanism exposes a Plug-in
interface based on a simple pipeline model. The pipeline model allows for both
“pre” and “post” interceptions for basic data persistence operations. The platform
metadata stores information about each entity. This information can be used to
track:
• The list of Plug-in handlers.
• The class names.
• Whether a given handler is required for an action.
For example, the account entity can have several registered handlers. These
handlers are stored in call order, which is determined by priority. When an action
occurs, the platform examines the metadata for registered event handlers. This
information is specified when a plug-in is registered. If a handler is registered for
notification, the platform creates the handler object and calls the correct handler
method, passing the details of the entity instance.
2-17
18. Extending Microsoft Dynamics® CRM 4.0
Workflow
The workflow subsystem's goal is to process system events and run processes.
The workflow system consists of:
• A graphical user interface within the Microsoft Dynamics CRM Web
application for creating and monitoring workflow processes.
• The Asynchronous Service, a Microsoft Windows service that
responds to events, schedules events, and runs processes. The
Asynchronous Service is available in the Services utility in Windows
Administrative Tools. This service is installed during Microsoft
Dynamics CRM Server installation and is configured to be started
automatically.
• A set of messages for accessing instances of workflow rules.
• Workflow Activities which are used to write modules that provide
interaction between Workflow rules and external systems, or that
provide custom logic.
Custom Workflow Activities
If the workflow activities supplied with Microsoft Dynamics CRM 4.0 are not
sufficient for the workflow requirements, it is possible to create and deploy
custom workflow activities that can be called from within a workflow.
Custom workflow activities are supported only in Microsoft Dynamics CRM
4.0, not in Microsoft Dynamics CRM Live.
Data Access Components
Except for reports using Microsoft Dynamics CRM Filtered views , all
interaction with the database occurs through the platform. The platform includes
data access components which use the Microsoft Dynamics CRM metadata to
construct Transact-SQL statements to apply transactions against the Microsoft
Dynamics CRM database.
Data Access Methods
In the description used in this course the Data Access Components are grouped
together with the platform, but technically there is some separation. Microsoft
Dynamics CRM internally uses an object-based data management layer to shield
the platform code from the data access code. Queries can be constructed using
QueryExpression, QueryByAttribute and the FetchXML query language
2-18
19. Chapter 2: Microsoft Dynamics CRM Architecture
Building Queries: A QueryExpression is used to build a query that contains
data filters and search conditions that define the scope of a database search. A
QueryExpression is used for single-entity searches, for example, searching for all
accounts that match certain search criteria. QueryExpression provides a strongly
typed approach to building queries that can be executed. To save a query, convert
it to Fetch using a QueryExpressionToFetchXml request and save it as a
userquery. Because QueryExpression is strongly typed, Microsoft IntelliSense
support is available for the QueryExpression object within Visual Studio .NET.
Database Layer
Because the Microsoft Dynamics CRM Platform controls transactions against the
database, any programming directly against the database other than retrieving
data from filtered views is not supported. Because direct interaction with the
database is not supported - a full description of the structure of the CRM database
is not directly relevant to the developer. The developer should concern
himself/herself with the Entity definitions stored in the Platform metadata instead
of how the physical database stores this information. The database structure can
change in future releases of Microsoft Dynamics CRM.
In an initial Microsoft Dynamics CRM 4.0 implementation there are two
databases. The databases are created when Microsoft Dynamics CRM is installed
and are created by using the name of the organization. The databases are as
follows:
• <organizationname>_MSCRM
• MSCRM_CONFIG
If further organizations are created a corresponding
<organizationname>_MSCRM database will be created. However, there will just
be the one MSCRM_CONFIG database.
MSCRM Database
The <organization name>_MSCRM database stores the data for the entities
defined in the Microsoft Dynamics CRM platform. This is the customer data.
Supported Actions: Other than retrieving data from specified filtered views
within this database, there are no actions, other than regular database
maintenance such as backups, supported.
Mutable Database Structure: The whole architecture of Microsoft Dynamics
CRM is designed to enable changes - even radical changes, to the structure of the
database in any future release. Building a solution that depends on custom
triggers, stored procedures, views or any other modification to the database is
unsupported and likely to be broken in a future release.
Upgrade: The upgrade process is likely to delete an earlier database and replace
it with the latest version. Expect that any changes to the database will be lost
during an upgrade.
2-19
20. Extending Microsoft Dynamics® CRM 4.0
Filtered Views : The only supported action to include in an extension is to use
the Filtered Views in the <organization name>_MSCRM database. These views
use the naming convention Filtered<Entity Name>.
These views are provided to enable an ODBC or OLE DB compliant application
to use Microsoft Dynamics CRM data in reports. Microsoft Dynamics CRM
includes SQL Server reporting services as the reporting solution.
These views are designed to use the user's domain account credentials to replicate
the view permissions enforced by the CRM Platform. Queries against these views
only return records that the user can access through the Microsoft Dynamics
CRM application or any application built upon the Microsoft Dynamics CRM
platform.
MSCRM_CONFIG
The MSCRM_CONFIG Database is used to store the global CRM configuration
settings and this enables the support of multi-tenancy.
Deployment Considerations
Microsoft Dynamics CRM 4.0 supports many different deployment scenarios,
some of which may affect the extent, or ease, with which Microsoft Dynamics
CRM can be extended. The main considerations are:
• Deployment model. On-Premise, Service Provider or Windows
Online
• Authentication method
• Multi-tenancy deployments
• Multi-language deployments
Deployment Model
Many Microsoft Dynamics CRM 4.0 deployments are installed and managed at
the end-customer's location; this is known as an On-Premise implementation. In
this scenario, there are no additional limitations on the extensibility of Microsoft
Dynamics CRM, other than the customer's requirements, and whether or not
proposed extensions are supported.
Another deployment model is to make use of Windows Online, in which
Microsoft hosts the CRM servers. This imposes restrictions on extending
Microsoft Dynamics CRM, namely that it is not permitted to deploy plug-ins or
custom workflow activities within such a deployment.
2-20
21. Chapter 2: Microsoft Dynamics CRM Architecture
There is a third deployment model in the Service Provider model. This is similar
to the Windows Live model, except a third party service provider hosts the CRM
servers. In this scenario, the service provider typically specifies what type of
extensions is permitted. They also typically define the authentication method.
This deployment model is often referred to as an Internet Facing Deployment
(IFD).
Authentication Method
Microsoft Dynamics CRM 4.0 supports three different authentication methods;
Active Directory authentication, Passport authentication and Web Form
authentication. Which method is used depends primarily on the deployment
model, as follows, but other factors may be involved:
• On-Premise deployments typically uses Active Directory
authentication, but may use Web form authentication.
• Windows Live deployments always uses Passport authentication.
• Service Provider deployments can use either Active Directory or
Web form authentication.
The choice of authentication method can have two impacts on extending
Microsoft Dynamics CRM:
• A different URL is required for each authentication method to access
the CrmDiscoveryService.
• If writing custom Web applications, the authentication method will
affect how a user can be impersonated.
Multi-Tenancy
Multi-tenancy refers to the ability for one Microsoft Dynamics CRM installation
to host multiple independent organizations. In most cases any extensions to
Microsoft Dynamics CRM are specific to one organization, and the structure of
the Microsoft Dynamics CRM databases and Web services allows for easy
separation of each organization.
An important point is that the organization name must be specified for all calls to
the CrmService and MetadataService Web services. Therefore any custom code
must be structured such that information is available where necessary.
Multi-Language
One Microsoft Dynamics CRM organization may have multiple language packs
installed, which allows different users to see metadata-driven information (such
as picklists and field labels) in different languages.
This can impact code that uses and displays metadata to a user, as such code
should be aware of that user's preferred language , and render the appropriate
labels.
2-21
22. Extending Microsoft Dynamics® CRM 4.0
Demonstration: Using the Metadata Browser
Scenario
You are developing an extension for Microsoft Dynamics CRM for an
organization that has customized its implementation.
Goal
Become familiar with the entity. You want to know:
• What is the entity (object) type code.
• Which attributes can be used when you are creating or updating an
instance of this entity.
• The length of the Name attribute.
• How a custom entity called “Opportunity Details” is related to the
entity.
• What is the entity (object) type code for Opportunity Details?
Steps
This demonstration includes the following steps:
1. Open the Metadata browser.
2. Import the Opportunity Details custom entity.
3. Note how Opportunity Details is related to Opportunities.
Step 1: Open the Metadata Browser
1. In the Run window, enter
http://crm/AdventureWorksCycle/sdk/list.aspx.
2. Locate the opportunity entity in the entity column and then click the
graphic in the definition column.
3. Locate the following information:
o The Object Type Code.
o Which attributes are not Valid for Create or Valid for Update?
o What is the length of the name attribute?
2-22
23. Chapter 2: Microsoft Dynamics CRM Architecture
Step 2: Import the Details Custom Entity
1. Import the OpportunityDetail.xml file located at C:Class
MaterialsExtendingCh. 2
If you are not familiar with importing Customizations refer to Export
or Import customized Entities, templates or navigation in the on line
help.
2. Open the metadata browser and locate the new_opportunitydetail
entity.
Step 3: Note how Details is related to Opportunities
1. Open the entity definition.
2. Locate the relationship that connects to new_opportunitydetail.
3. Open new_opportunitydetail entity definition and locate the entity
(object) type code.
Summary
This course provided an overview of the Microsoft Dynamics CRM Architecture.
Microsoft Dynamics CRM is designed to provide a scalable, SOA platform to
support Microsoft Dynamics CRM clients and solutions built by developers.
Microsoft Dynamics CRM provides several extensibility points. These points are
the focus of the rest of this course. They include the following:
• Web Service Programming
• Custom Workflow Activities
• Plug-ins
• Client Programming
The Microsoft Dynamics CRM Outlook clients provide a deep integration with
Outlook. The Microsoft Dynamics CRM 4.0 Laptop Client for Outlook provides
a local version of the Microsoft Dynamics CRM platform for offline use.
Microsoft Dynamics CRM uses a metadata driven architecture that is designed to
enforce security, make customizations easier, and enable smooth transition
during upgrades.
2-23
24. Extending Microsoft Dynamics® CRM 4.0
Microsoft Dynamics CRM can be divided into several different physical or
logical layers. The most important divisions for developers creating extensions to
Microsoft Dynamics CRM are the Application and Platform layers.
• Application Layer: The Application layer is a client that is built on
the Microsoft Dynamics CRM platform. It uses security metadata to
display functional areas that users have privileges to view. It also
uses metadata to enable easy form and view customizations. The
application includes limited business logic.
• Platform Layer: The Platform layer is the heart of Microsoft
Dynamics CRM. It contains the Web Service APIs that provide the
only integration point to perform transactions in Microsoft Dynamics
CRM. It generates the events that drive all business logic performed
in the platform. It defines the available entities and enforces security.
Finally, the platform contains data access components that interact
with the Microsoft Dynamics CRM databases. Developers can build
queries that use these components to retrieve data from Microsoft
Dynamics CRM.
• Database Layer: The Microsoft Dynamics CRM Databases support
the use of special filtered views for retrieval of data from ODBC or
OLEDB compliant applications. Any other direct interaction or
modification to the Microsoft Dynamics CRM databases is
unsupported.
2-24
25. Chapter 2: Microsoft Dynamics CRM Architecture
Test Your Knowledge
Test your knowledge with the following questions.
1. Which of the following represent Microsoft Dynamics CRM 4.0
Extensibility points for Developers? (Select all that apply.)
( ) Web Service Programming
( ) Custom Workflow Activities
( ) Plug-ins
( ) Client Programming
2. Which of the following components can be found on the Microsoft 4.0
Desktop client for Microsoft Office Outlook?
( ) A SQL Server 2005 Express Edition database
( ) A local Web server
( ) A local version of the Microsoft Dynamics CRM Web application
( ) None of the above
3. What characteristic of the Microsoft Dynamics CRM design lets you create
custom entities and additional system entity attributes and also make
upgrades easier and enable transportation of customizations?
( ) N-Tier Architecture
( ) Service Oriented Architecture
( ) Metadata Driven Architecture
( ) All of the above
4. Which of the following are areas controlled by Application Level security?
(Select all that apply.)
( ) The ability to move through different areas of the application
( ) When a record will appear in a read-only form
( ) When a particular field is hidden or disabled for a user
( ) All the above
5. Which of the following represent the data validation performed by the
Application?
( ) Data Integrity
( ) Data validity
( ) Enforcing Constraints
( ) All of the above
2-25
26. Extending Microsoft Dynamics® CRM 4.0
6. Which of the following are true?
( ) Each Microsoft Dynamics CRM 4.0 entity has a separate dedicated Web
service
( ) All Microsoft Dynamics CRM Entities inherit from an abstract base class
named BusinessEntity
( ) To read the Microsoft Dynamics CRM metadata you must query the
<organization name>_MSCRM database
( ) Integrations with Microsoft Dynamics CRM must use Microsoft
technologies
7. Which of the following represent advantages found in the Microsoft
Dynamics CRM 4.0 SDK? (Select all that apply.)
( ) IntelliSense® support in Visual Studio
( ) A dynamically generated WSDL
( ) Strong typing
( ) Design/Compile time errors
8. Task: Match the SDK Access level name with the Application Name.
_____ 1. Global a. User
_____ 2. Deep b. Business unit
_____ 3. Local c. Parent: Child Business Units
_____ 4. Basic d. None Selected
_____ 5. None e. Organization
2-26
27. Chapter 2: Microsoft Dynamics CRM Architecture
Quick Interaction: Lessons Learned
Take a moment and write down three key points you have learned from this
chapter:
1.
2.
3.
2-27
28. Extending Microsoft Dynamics® CRM 4.0
Solutions
Test Your Knowledge
1. Which of the following represent Microsoft Dynamics CRM 4.0
Extensibility points for Developers? (Select all that apply.)
(√) Web Service Programming
(√) Custom Workflow Activities
(√) Plug-ins
(√) Client Programming
2. Which of the following components can be found on the Microsoft 4.0
Desktop client for Microsoft Office Outlook?
( ) A SQL Server 2005 Express Edition database
( ) A local Web server
( ) A local version of the Microsoft Dynamics CRM Web application
(•) None of the above
3. What characteristic of the Microsoft Dynamics CRM design lets you create
custom entities and additional system entity attributes and also make
upgrades easier and enable transportation of customizations?
( ) N-Tier Architecture
( ) Service Oriented Architecture
(•) Metadata Driven Architecture
( ) All of the above
4. Which of the following are areas controlled by Application Level security?
(Select all that apply.)
(√) The ability to move through different areas of the application
(√) When a record will appear in a read-only form
( ) When a particular field is hidden or disabled for a user
( ) All the above
5. Which of the following represent the data validation performed by the
Application?
( ) Data Integrity
( ) Data validity
( ) Enforcing Constraints
(•) All of the above
2-28
29. Chapter 2: Microsoft Dynamics CRM Architecture
6. Which of the following are true?
( ) Each Microsoft Dynamics CRM 4.0 entity has a separate dedicated Web
service
(•) All Microsoft Dynamics CRM Entities inherit from an abstract base class
named BusinessEntity
( ) To read the Microsoft Dynamics CRM metadata you must query the
<organization name>_MSCRM database
( ) Integrations with Microsoft Dynamics CRM must use Microsoft
technologies
7. Which of the following represent advantages found in the Microsoft
Dynamics CRM 4.0 SDK? (Select all that apply.)
(√) IntelliSense® support in Visual Studio
(√) A dynamically generated WSDL
(√) Strong typing
(√) Design/Compile time errors
8. Task: Match the SDK Access level name with the Application Name.
a. User
e 1: Global
b. Business unit
c 2: Deep
c. Parent: Child Business Units
b 3: Local
d. None Selected
a 4: Basic
e. Organization
d 5: None
2-29