SlideShare a Scribd company logo
1 of 28
Method Description
getDepth Returns a value that indicates the order in which this handler is
executed.
getEventArgs Returns an object with methods to manage the OnSave event.
getEventSource Returns a reference to the object that the event occurred on.
getFormContext Returns a reference to the form or an item on the form
depending on where the method was called.
getSharedVariable Retrieves a variable set using the setSharedVariable method.
setSharedVariable Sets the value of a variable to be used by a handler after the
current handler completes.
function displayName() {
var firstName = Xrm.Page.getAttribute("firstname").getValue();
var lastName = Xrm.Page.getAttribute("lastname").getValue();
console.log(firstName + " " + lastName);
}
old
function displayName(executionContext) {
var formContext = executionContext.getFormContext(); // get formContext
// use formContext instead of Xrm.Page
var firstName = formContext.getAttribute("firstname").getValue();
var lastName = formContext.getAttribute("lastname").getValue();
console.log(firstName + " " + lastName);
}
new
collection.forEach(delegate function(attribute, index))
var gridContext = formContext.getControl("Contacts");
You can register for the OnChange, OnRecordSelect, and OnSave events using the Events tab of the
Dynamics 365 Customer Engagement page that is used to enable editable grids for an entity or a read-only
grid.
function myFunction(executionContext) { |
var formContext = executionContext.getFormContext(); // get the form context
var gridContext = formContext.getControl("Contacts");// get the grid context
var myContactsGridOnloadFunction = function () {
console.log("Contacts Subgrid OnLoad event occurred")
};
gridContext.addOnLoad(myContactsGridOnloadFunction);
}
Namespace Description
Xrm.Device Provides methods to use native device capabilities of mobile devices.
Xrm.Encoding Provides methods to encode strings.
Xrm.Navigation Provides methods for navigating forms and items in Customer
Engagement.
Xrm.Panel Provides a method to display a web page in the side pane of
Customer Engagement form.
Xrm.Utility Provides a container for useful methods.
Xrm.WebApi Provides methods to use Web API to create and manage records
and execute Web API actions and functions.
equivalent
deprecated
Property Description
client Returns information about the client.
organizationSettings Returns information about the current
organization settings.
userSettings Returns information about the current
user settings.
Method Description
getAdvancedConfigSetting Returns information about the advanced configuration settings for the
organization.
getClientUrl Returns the base URL that was used to access the application.
getCurrentAppName Returns the name of the current business app in Customer Engagement.
getCurrentAppProperties Returns the properties of the current business app in Customer Engagement.
getCurrentAppUrl Returns the URL of the current business app in Customer Engagement.
getVersion Returns the version number of the Dynamics 365 Customer Engagement
instance.
isOnPremises Returns a boolean value indicating if the Customer Engagement instance is
hosted on-premises or online.
prependOrgName Prefixes the current organization's unique name to a string, typically a URL path.
New Namespace Description
Xrm.Device Provides methods to use native device capabilities of
mobile devices.
Xrm.Encoding Provides methods to encode strings.
Xrm.Navigation Provides navigation-related methods.
Xrm.WebApi Provides properties and methods to use Web API to create
and manage records and execute Web API actions and
functions.
Namespace New APIs
formContext.data - OnLoad event and even handlers (addOnLoad and
removeOnLoad)
- isValid
- Updated saveOptions in the formContext.data.save
method to include a new value called saveMode to let
the onSave event handlers know why the save is
happening
- attributes collection
formContext.data.entity getEntityReference
isValid
formContext.data.entity attribute isValid
setPrecision
formContext.ui event handlers for the OnLoad event (addOnLoad and
removeOnLoad)
Namespace New APIs
Xrm.Utility getAllowedStatusTransitions
getEntityMetadata
getGlobalContext
getLearningPathAttributeName
getResourceString
invokeProcessAction
lookupObjects
showProgressIndicator
closeProgressIndicator
refreshParentGrid
https://docs.microsoft.com/en-us/dynamics365/get-started/whats-new/customer-
engagement/important-changes-coming#some-client-apis-are-deprecated
Important changes coming in Dynamics 365 Customer
Engagement
Client scripting in Customer Engagement using JavaScript
Client API Reference for Customer Engagement
https://www.npmjs.com/package/@types/xrm
XrmExecutionContext =>
executionContext: Xrm.Events.EventContext
executionContext: Xrm.Events.SaveEventContext
What's new for developers in Dynamics 365 v9: Client API enhancement
What's new for developers in Dynamics 365 v9: Client API enhancement

More Related Content

What's hot

Deep Dive into React Hooks
Deep Dive into React HooksDeep Dive into React Hooks
Deep Dive into React HooksFelix Kühl
 
Wcf data services
Wcf data servicesWcf data services
Wcf data servicesEyal Vardi
 
Intro to Redux | DreamLab Academy #3
Intro to Redux | DreamLab Academy #3 Intro to Redux | DreamLab Academy #3
Intro to Redux | DreamLab Academy #3 DreamLab
 
MBL301 Data Persistence to Amazon Dynamodb for Mobile Apps - AWS re: Invent 2012
MBL301 Data Persistence to Amazon Dynamodb for Mobile Apps - AWS re: Invent 2012MBL301 Data Persistence to Amazon Dynamodb for Mobile Apps - AWS re: Invent 2012
MBL301 Data Persistence to Amazon Dynamodb for Mobile Apps - AWS re: Invent 2012Amazon Web Services
 
Quick start with React | DreamLab Academy #2
Quick start with React | DreamLab Academy #2Quick start with React | DreamLab Academy #2
Quick start with React | DreamLab Academy #2DreamLab
 
Appengine ja-night-sapporo#1 bt
Appengine ja-night-sapporo#1 btAppengine ja-night-sapporo#1 bt
Appengine ja-night-sapporo#1 btShinichi Ogawa
 
Auto-GWT : Better GWT Programming with Xtend
Auto-GWT : Better GWT Programming with XtendAuto-GWT : Better GWT Programming with Xtend
Auto-GWT : Better GWT Programming with XtendSven Efftinge
 
VPN Access Runbook
VPN Access RunbookVPN Access Runbook
VPN Access RunbookTaha Shakeel
 
How to perform debounce in react
How to perform debounce in reactHow to perform debounce in react
How to perform debounce in reactBOSC Tech Labs
 
ReactでGraphQLを使っている
ReactでGraphQLを使っているReactでGraphQLを使っている
ReactでGraphQLを使っているTakahiro Kobaru
 
FleetDB: A Schema-Free Database in Clojure
FleetDB: A Schema-Free Database in ClojureFleetDB: A Schema-Free Database in Clojure
FleetDB: A Schema-Free Database in ClojureMark McGranaghan
 
Mastering Oracle ADF Bindings
Mastering Oracle ADF BindingsMastering Oracle ADF Bindings
Mastering Oracle ADF BindingsEuegene Fedorenko
 
Synchronize applications with akeneo/batch
Synchronize applications with akeneo/batchSynchronize applications with akeneo/batch
Synchronize applications with akeneo/batchgplanchat
 

What's hot (20)

Deep Dive into React Hooks
Deep Dive into React HooksDeep Dive into React Hooks
Deep Dive into React Hooks
 
Wcf data services
Wcf data servicesWcf data services
Wcf data services
 
Intro to Redux | DreamLab Academy #3
Intro to Redux | DreamLab Academy #3 Intro to Redux | DreamLab Academy #3
Intro to Redux | DreamLab Academy #3
 
MBL301 Data Persistence to Amazon Dynamodb for Mobile Apps - AWS re: Invent 2012
MBL301 Data Persistence to Amazon Dynamodb for Mobile Apps - AWS re: Invent 2012MBL301 Data Persistence to Amazon Dynamodb for Mobile Apps - AWS re: Invent 2012
MBL301 Data Persistence to Amazon Dynamodb for Mobile Apps - AWS re: Invent 2012
 
Nativescript angular
Nativescript angularNativescript angular
Nativescript angular
 
Quick start with React | DreamLab Academy #2
Quick start with React | DreamLab Academy #2Quick start with React | DreamLab Academy #2
Quick start with React | DreamLab Academy #2
 
Appengine ja-night-sapporo#1 bt
Appengine ja-night-sapporo#1 btAppengine ja-night-sapporo#1 bt
Appengine ja-night-sapporo#1 bt
 
Gwt and Xtend
Gwt and XtendGwt and Xtend
Gwt and Xtend
 
Graphql, REST and Apollo
Graphql, REST and ApolloGraphql, REST and Apollo
Graphql, REST and Apollo
 
Auto-GWT : Better GWT Programming with Xtend
Auto-GWT : Better GWT Programming with XtendAuto-GWT : Better GWT Programming with Xtend
Auto-GWT : Better GWT Programming with Xtend
 
Scala on Your Phone
Scala on Your PhoneScala on Your Phone
Scala on Your Phone
 
VPN Access Runbook
VPN Access RunbookVPN Access Runbook
VPN Access Runbook
 
How to perform debounce in react
How to perform debounce in reactHow to perform debounce in react
How to perform debounce in react
 
ReactでGraphQLを使っている
ReactでGraphQLを使っているReactでGraphQLを使っている
ReactでGraphQLを使っている
 
Config BuildConfig
Config BuildConfigConfig BuildConfig
Config BuildConfig
 
FleetDB: A Schema-Free Database in Clojure
FleetDB: A Schema-Free Database in ClojureFleetDB: A Schema-Free Database in Clojure
FleetDB: A Schema-Free Database in Clojure
 
Mastering Oracle ADF Bindings
Mastering Oracle ADF BindingsMastering Oracle ADF Bindings
Mastering Oracle ADF Bindings
 
React with Redux
React with ReduxReact with Redux
React with Redux
 
Synchronize applications with akeneo/batch
Synchronize applications with akeneo/batchSynchronize applications with akeneo/batch
Synchronize applications with akeneo/batch
 
Rxjs marble-testing
Rxjs marble-testingRxjs marble-testing
Rxjs marble-testing
 

Similar to What's new for developers in Dynamics 365 v9: Client API enhancement

Policy Injection in ASP.NET using Enterprise Library 3.0
Policy Injection in ASP.NET using Enterprise Library 3.0Policy Injection in ASP.NET using Enterprise Library 3.0
Policy Injection in ASP.NET using Enterprise Library 3.0PhilWinstanley
 
JS Fest 2019. Glenn Reyes. With great power comes great React hooks!
JS Fest 2019. Glenn Reyes. With great power comes great React hooks!JS Fest 2019. Glenn Reyes. With great power comes great React hooks!
JS Fest 2019. Glenn Reyes. With great power comes great React hooks!JSFestUA
 
ngMess: AngularJS Dependency Injection
ngMess: AngularJS Dependency InjectionngMess: AngularJS Dependency Injection
ngMess: AngularJS Dependency InjectionDzmitry Ivashutsin
 
AngularJs $provide API internals & circular dependency problem.
AngularJs $provide API internals & circular dependency problem.AngularJs $provide API internals & circular dependency problem.
AngularJs $provide API internals & circular dependency problem.Yan Yankowski
 
ASP.NET Web API
ASP.NET Web APIASP.NET Web API
ASP.NET Web APIhabib_786
 
CiklumJavaSat_15112011:Alex Kruk VMForce
CiklumJavaSat_15112011:Alex Kruk VMForceCiklumJavaSat_15112011:Alex Kruk VMForce
CiklumJavaSat_15112011:Alex Kruk VMForceCiklum Ukraine
 
apidays LIVE Australia 2020 - Building distributed systems on the shoulders o...
apidays LIVE Australia 2020 - Building distributed systems on the shoulders o...apidays LIVE Australia 2020 - Building distributed systems on the shoulders o...
apidays LIVE Australia 2020 - Building distributed systems on the shoulders o...apidays
 
Typed? Dynamic? Both! Cross-platform DSLs in C#
Typed? Dynamic? Both! Cross-platform DSLs in C#Typed? Dynamic? Both! Cross-platform DSLs in C#
Typed? Dynamic? Both! Cross-platform DSLs in C#Vagif Abilov
 
Test-driven Development with AEM
Test-driven Development with AEMTest-driven Development with AEM
Test-driven Development with AEMJan Wloka
 
Asp.net server control
Asp.net  server controlAsp.net  server control
Asp.net server controlSireesh K
 
Integrating Wicket with Java EE 6
Integrating Wicket with Java EE 6Integrating Wicket with Java EE 6
Integrating Wicket with Java EE 6Michael Plöd
 
Angular server-side communication
Angular server-side communicationAngular server-side communication
Angular server-side communicationAlexe Bogdan
 
11. session 11 functions and objects
11. session 11   functions and objects11. session 11   functions and objects
11. session 11 functions and objectsPhúc Đỗ
 
Recompacting your react application
Recompacting your react applicationRecompacting your react application
Recompacting your react applicationGreg Bergé
 

Similar to What's new for developers in Dynamics 365 v9: Client API enhancement (20)

Policy Injection in ASP.NET using Enterprise Library 3.0
Policy Injection in ASP.NET using Enterprise Library 3.0Policy Injection in ASP.NET using Enterprise Library 3.0
Policy Injection in ASP.NET using Enterprise Library 3.0
 
JS Fest 2019. Glenn Reyes. With great power comes great React hooks!
JS Fest 2019. Glenn Reyes. With great power comes great React hooks!JS Fest 2019. Glenn Reyes. With great power comes great React hooks!
JS Fest 2019. Glenn Reyes. With great power comes great React hooks!
 
Backbone Basics with Examples
Backbone Basics with ExamplesBackbone Basics with Examples
Backbone Basics with Examples
 
ngMess: AngularJS Dependency Injection
ngMess: AngularJS Dependency InjectionngMess: AngularJS Dependency Injection
ngMess: AngularJS Dependency Injection
 
AngularJs $provide API internals & circular dependency problem.
AngularJs $provide API internals & circular dependency problem.AngularJs $provide API internals & circular dependency problem.
AngularJs $provide API internals & circular dependency problem.
 
ASP.NET Web API
ASP.NET Web APIASP.NET Web API
ASP.NET Web API
 
CiklumJavaSat_15112011:Alex Kruk VMForce
CiklumJavaSat_15112011:Alex Kruk VMForceCiklumJavaSat_15112011:Alex Kruk VMForce
CiklumJavaSat_15112011:Alex Kruk VMForce
 
apidays LIVE Australia 2020 - Building distributed systems on the shoulders o...
apidays LIVE Australia 2020 - Building distributed systems on the shoulders o...apidays LIVE Australia 2020 - Building distributed systems on the shoulders o...
apidays LIVE Australia 2020 - Building distributed systems on the shoulders o...
 
Spring MVC
Spring MVCSpring MVC
Spring MVC
 
Ajax
AjaxAjax
Ajax
 
Typed? Dynamic? Both! Cross-platform DSLs in C#
Typed? Dynamic? Both! Cross-platform DSLs in C#Typed? Dynamic? Both! Cross-platform DSLs in C#
Typed? Dynamic? Both! Cross-platform DSLs in C#
 
Test-driven Development with AEM
Test-driven Development with AEMTest-driven Development with AEM
Test-driven Development with AEM
 
Asp.net server control
Asp.net  server controlAsp.net  server control
Asp.net server control
 
Ajax
AjaxAjax
Ajax
 
Integrating Wicket with Java EE 6
Integrating Wicket with Java EE 6Integrating Wicket with Java EE 6
Integrating Wicket with Java EE 6
 
Angular server-side communication
Angular server-side communicationAngular server-side communication
Angular server-side communication
 
11. session 11 functions and objects
11. session 11   functions and objects11. session 11   functions and objects
11. session 11 functions and objects
 
Recompacting your react application
Recompacting your react applicationRecompacting your react application
Recompacting your react application
 
AJAX
AJAXAJAX
AJAX
 
AJAX
AJAXAJAX
AJAX
 

More from Kenichiro Nakamura

LINE Developer Day 2019 how to optimize bot development lifecycle with dev ops
LINE Developer Day 2019 how to optimize bot development lifecycle with dev opsLINE Developer Day 2019 how to optimize bot development lifecycle with dev ops
LINE Developer Day 2019 how to optimize bot development lifecycle with dev opsKenichiro Nakamura
 
MTDDC 2019 LINE ボットからみた MT Data API の可能性
MTDDC 2019 LINE ボットからみた MT Data API の可能性MTDDC 2019 LINE ボットからみた MT Data API の可能性
MTDDC 2019 LINE ボットからみた MT Data API の可能性Kenichiro Nakamura
 
TypeScript Meetup #1 Build 2019 update
TypeScript Meetup #1 Build 2019 updateTypeScript Meetup #1 Build 2019 update
TypeScript Meetup #1 Build 2019 updateKenichiro Nakamura
 
ボット開発でも DevOps! BotBuilder のテスト手法
ボット開発でも DevOps! BotBuilder のテスト手法ボット開発でも DevOps! BotBuilder のテスト手法
ボット開発でも DevOps! BotBuilder のテスト手法Kenichiro Nakamura
 
.NET ラボ 勉強会 C# でラインプラットフォーム開発
.NET ラボ 勉強会 C# でラインプラットフォーム開発.NET ラボ 勉強会 C# でラインプラットフォーム開発
.NET ラボ 勉強会 C# でラインプラットフォーム開発Kenichiro Nakamura
 
Microsoft Azure Cognitive Services
Microsoft Azure Cognitive ServicesMicrosoft Azure Cognitive Services
Microsoft Azure Cognitive ServicesKenichiro Nakamura
 
EdgeAI: Azure IoT Edge カスタムモジュール開発
EdgeAI: Azure IoT Edge カスタムモジュール開発EdgeAI: Azure IoT Edge カスタムモジュール開発
EdgeAI: Azure IoT Edge カスタムモジュール開発Kenichiro Nakamura
 
エッジ・組み込みAI勉強会 : コンテナで使う Cognitive Service
エッジ・組み込みAI勉強会 : コンテナで使う Cognitive Serviceエッジ・組み込みAI勉強会 : コンテナで使う Cognitive Service
エッジ・組み込みAI勉強会 : コンテナで使う Cognitive ServiceKenichiro Nakamura
 
SQL Server 2019 Master Data Service
SQL Server 2019 Master Data ServiceSQL Server 2019 Master Data Service
SQL Server 2019 Master Data ServiceKenichiro Nakamura
 
いま考えられる限り最も速く対話型アプリを開発する方法
いま考えられる限り最も速く対話型アプリを開発する方法いま考えられる限り最も速く対話型アプリを開発する方法
いま考えられる限り最も速く対話型アプリを開発する方法Kenichiro Nakamura
 
Extended Events 101 : Japan SQL Server User Group
Extended Events 101 : Japan SQL Server User GroupExtended Events 101 : Japan SQL Server User Group
Extended Events 101 : Japan SQL Server User GroupKenichiro Nakamura
 
Tech-on Meet Up #02 Microsoft のコンテナ活用事例
Tech-on Meet Up #02 Microsoft のコンテナ活用事例Tech-on Meet Up #02 Microsoft のコンテナ活用事例
Tech-on Meet Up #02 Microsoft のコンテナ活用事例Kenichiro Nakamura
 
JSSUG: SQL Sever Performance Tuning
JSSUG: SQL Sever Performance TuningJSSUG: SQL Sever Performance Tuning
JSSUG: SQL Sever Performance TuningKenichiro Nakamura
 
LT: 開発者が意識するべき チャットボットの UX と アーキテクチャ
LT: 開発者が意識するべきチャットボットの UX とアーキテクチャLT: 開発者が意識するべきチャットボットの UX とアーキテクチャ
LT: 開発者が意識するべき チャットボットの UX と アーキテクチャKenichiro Nakamura
 
今更聞けない!?Microsoft Graph で始める Office 365 データ活用と事例の紹介
今更聞けない!?Microsoft Graph で始める Office 365 データ活用と事例の紹介今更聞けない!?Microsoft Graph で始める Office 365 データ活用と事例の紹介
今更聞けない!?Microsoft Graph で始める Office 365 データ活用と事例の紹介Kenichiro Nakamura
 
LINE Bot リッチメニュー使ってる?
LINE Bot リッチメニュー使ってる?LINE Bot リッチメニュー使ってる?
LINE Bot リッチメニュー使ってる?Kenichiro Nakamura
 

More from Kenichiro Nakamura (20)

JSSUG Azure SQL Analytics
JSSUG Azure SQL AnalyticsJSSUG Azure SQL Analytics
JSSUG Azure SQL Analytics
 
LINE Developer Day 2019 how to optimize bot development lifecycle with dev ops
LINE Developer Day 2019 how to optimize bot development lifecycle with dev opsLINE Developer Day 2019 how to optimize bot development lifecycle with dev ops
LINE Developer Day 2019 how to optimize bot development lifecycle with dev ops
 
MTDDC 2019 LINE ボットからみた MT Data API の可能性
MTDDC 2019 LINE ボットからみた MT Data API の可能性MTDDC 2019 LINE ボットからみた MT Data API の可能性
MTDDC 2019 LINE ボットからみた MT Data API の可能性
 
Tokyo Azure Meetup #29 AKS
Tokyo Azure Meetup #29 AKSTokyo Azure Meetup #29 AKS
Tokyo Azure Meetup #29 AKS
 
TypeScript Meetup #1 Build 2019 update
TypeScript Meetup #1 Build 2019 updateTypeScript Meetup #1 Build 2019 update
TypeScript Meetup #1 Build 2019 update
 
ボット開発でも DevOps! BotBuilder のテスト手法
ボット開発でも DevOps! BotBuilder のテスト手法ボット開発でも DevOps! BotBuilder のテスト手法
ボット開発でも DevOps! BotBuilder のテスト手法
 
.NET ラボ 勉強会 C# でラインプラットフォーム開発
.NET ラボ 勉強会 C# でラインプラットフォーム開発.NET ラボ 勉強会 C# でラインプラットフォーム開発
.NET ラボ 勉強会 C# でラインプラットフォーム開発
 
Microsoft Azure Cognitive Services
Microsoft Azure Cognitive ServicesMicrosoft Azure Cognitive Services
Microsoft Azure Cognitive Services
 
EdgeAI: Azure IoT Edge カスタムモジュール開発
EdgeAI: Azure IoT Edge カスタムモジュール開発EdgeAI: Azure IoT Edge カスタムモジュール開発
EdgeAI: Azure IoT Edge カスタムモジュール開発
 
エッジ・組み込みAI勉強会 : コンテナで使う Cognitive Service
エッジ・組み込みAI勉強会 : コンテナで使う Cognitive Serviceエッジ・組み込みAI勉強会 : コンテナで使う Cognitive Service
エッジ・組み込みAI勉強会 : コンテナで使う Cognitive Service
 
SQL Server 2019 Master Data Service
SQL Server 2019 Master Data ServiceSQL Server 2019 Master Data Service
SQL Server 2019 Master Data Service
 
いま考えられる限り最も速く対話型アプリを開発する方法
いま考えられる限り最も速く対話型アプリを開発する方法いま考えられる限り最も速く対話型アプリを開発する方法
いま考えられる限り最も速く対話型アプリを開発する方法
 
Azure for hackathon
Azure for hackathonAzure for hackathon
Azure for hackathon
 
Extended Events 101 : Japan SQL Server User Group
Extended Events 101 : Japan SQL Server User GroupExtended Events 101 : Japan SQL Server User Group
Extended Events 101 : Japan SQL Server User Group
 
Tech-on Meet Up #02 Microsoft のコンテナ活用事例
Tech-on Meet Up #02 Microsoft のコンテナ活用事例Tech-on Meet Up #02 Microsoft のコンテナ活用事例
Tech-on Meet Up #02 Microsoft のコンテナ活用事例
 
JSSUG: SQL Sever Index Tuning
JSSUG: SQL Sever Index TuningJSSUG: SQL Sever Index Tuning
JSSUG: SQL Sever Index Tuning
 
JSSUG: SQL Sever Performance Tuning
JSSUG: SQL Sever Performance TuningJSSUG: SQL Sever Performance Tuning
JSSUG: SQL Sever Performance Tuning
 
LT: 開発者が意識するべき チャットボットの UX と アーキテクチャ
LT: 開発者が意識するべきチャットボットの UX とアーキテクチャLT: 開発者が意識するべきチャットボットの UX とアーキテクチャ
LT: 開発者が意識するべき チャットボットの UX と アーキテクチャ
 
今更聞けない!?Microsoft Graph で始める Office 365 データ活用と事例の紹介
今更聞けない!?Microsoft Graph で始める Office 365 データ活用と事例の紹介今更聞けない!?Microsoft Graph で始める Office 365 データ活用と事例の紹介
今更聞けない!?Microsoft Graph で始める Office 365 データ活用と事例の紹介
 
LINE Bot リッチメニュー使ってる?
LINE Bot リッチメニュー使ってる?LINE Bot リッチメニュー使ってる?
LINE Bot リッチメニュー使ってる?
 

Recently uploaded

A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024Results
 
Exploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone ProcessorsExploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone Processorsdebabhi2
 
Artificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and MythsArtificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and MythsJoaquim Jorge
 
Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...Enterprise Knowledge
 
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...apidays
 
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...Igalia
 
Histor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slideHistor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slidevu2urc
 
Data Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonData Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonAnna Loughnan Colquhoun
 
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking MenDelhi Call girls
 
08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking MenDelhi Call girls
 
Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationScaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationRadu Cotescu
 
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...Neo4j
 
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdfUnderstanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdfUK Journal
 
Advantages of Hiring UIUX Design Service Providers for Your Business
Advantages of Hiring UIUX Design Service Providers for Your BusinessAdvantages of Hiring UIUX Design Service Providers for Your Business
Advantages of Hiring UIUX Design Service Providers for Your BusinessPixlogix Infotech
 
Breaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path MountBreaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path MountPuma Security, LLC
 
IAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsIAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsEnterprise Knowledge
 
Boost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityBoost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityPrincipled Technologies
 
2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...Martijn de Jong
 
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationFrom Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationSafe Software
 
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Miguel Araújo
 

Recently uploaded (20)

A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024
 
Exploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone ProcessorsExploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone Processors
 
Artificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and MythsArtificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and Myths
 
Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...
 
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
 
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
 
Histor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slideHistor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slide
 
Data Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonData Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt Robison
 
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
 
08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men
 
Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationScaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organization
 
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
 
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdfUnderstanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
 
Advantages of Hiring UIUX Design Service Providers for Your Business
Advantages of Hiring UIUX Design Service Providers for Your BusinessAdvantages of Hiring UIUX Design Service Providers for Your Business
Advantages of Hiring UIUX Design Service Providers for Your Business
 
Breaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path MountBreaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path Mount
 
IAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsIAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI Solutions
 
Boost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityBoost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivity
 
2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...
 
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationFrom Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
 
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
 

What's new for developers in Dynamics 365 v9: Client API enhancement

  • 1.
  • 2.
  • 3.
  • 4.
  • 5. Method Description getDepth Returns a value that indicates the order in which this handler is executed. getEventArgs Returns an object with methods to manage the OnSave event. getEventSource Returns a reference to the object that the event occurred on. getFormContext Returns a reference to the form or an item on the form depending on where the method was called. getSharedVariable Retrieves a variable set using the setSharedVariable method. setSharedVariable Sets the value of a variable to be used by a handler after the current handler completes.
  • 6. function displayName() { var firstName = Xrm.Page.getAttribute("firstname").getValue(); var lastName = Xrm.Page.getAttribute("lastname").getValue(); console.log(firstName + " " + lastName); } old function displayName(executionContext) { var formContext = executionContext.getFormContext(); // get formContext // use formContext instead of Xrm.Page var firstName = formContext.getAttribute("firstname").getValue(); var lastName = formContext.getAttribute("lastname").getValue(); console.log(firstName + " " + lastName); } new
  • 7.
  • 9. var gridContext = formContext.getControl("Contacts"); You can register for the OnChange, OnRecordSelect, and OnSave events using the Events tab of the Dynamics 365 Customer Engagement page that is used to enable editable grids for an entity or a read-only grid. function myFunction(executionContext) { | var formContext = executionContext.getFormContext(); // get the form context var gridContext = formContext.getControl("Contacts");// get the grid context var myContactsGridOnloadFunction = function () { console.log("Contacts Subgrid OnLoad event occurred") }; gridContext.addOnLoad(myContactsGridOnloadFunction); }
  • 10.
  • 11. Namespace Description Xrm.Device Provides methods to use native device capabilities of mobile devices. Xrm.Encoding Provides methods to encode strings. Xrm.Navigation Provides methods for navigating forms and items in Customer Engagement. Xrm.Panel Provides a method to display a web page in the side pane of Customer Engagement form. Xrm.Utility Provides a container for useful methods. Xrm.WebApi Provides methods to use Web API to create and manage records and execute Web API actions and functions.
  • 12.
  • 14. Property Description client Returns information about the client. organizationSettings Returns information about the current organization settings. userSettings Returns information about the current user settings.
  • 15. Method Description getAdvancedConfigSetting Returns information about the advanced configuration settings for the organization. getClientUrl Returns the base URL that was used to access the application. getCurrentAppName Returns the name of the current business app in Customer Engagement. getCurrentAppProperties Returns the properties of the current business app in Customer Engagement. getCurrentAppUrl Returns the URL of the current business app in Customer Engagement. getVersion Returns the version number of the Dynamics 365 Customer Engagement instance. isOnPremises Returns a boolean value indicating if the Customer Engagement instance is hosted on-premises or online. prependOrgName Prefixes the current organization's unique name to a string, typically a URL path.
  • 16.
  • 17. New Namespace Description Xrm.Device Provides methods to use native device capabilities of mobile devices. Xrm.Encoding Provides methods to encode strings. Xrm.Navigation Provides navigation-related methods. Xrm.WebApi Provides properties and methods to use Web API to create and manage records and execute Web API actions and functions.
  • 18. Namespace New APIs formContext.data - OnLoad event and even handlers (addOnLoad and removeOnLoad) - isValid - Updated saveOptions in the formContext.data.save method to include a new value called saveMode to let the onSave event handlers know why the save is happening - attributes collection formContext.data.entity getEntityReference isValid formContext.data.entity attribute isValid setPrecision formContext.ui event handlers for the OnLoad event (addOnLoad and removeOnLoad)
  • 19. Namespace New APIs Xrm.Utility getAllowedStatusTransitions getEntityMetadata getGlobalContext getLearningPathAttributeName getResourceString invokeProcessAction lookupObjects showProgressIndicator closeProgressIndicator refreshParentGrid
  • 20.
  • 22.
  • 23. Important changes coming in Dynamics 365 Customer Engagement Client scripting in Customer Engagement using JavaScript Client API Reference for Customer Engagement
  • 24.
  • 25.