Before starting anything, I assume that you are already aware of Data Entity concepts in D365O.If not, please go through the link below
Data Entites
Also, If you want to see what is Odata and what it does in D365O, click on below link
Odata in D365
By this time, you are already aware that Data Entities follows Odata protocols and present you the data in Json format.
So, how actually following up of Odata helps us?
It actually has lot of positiveness other than just representation of data. As per the Odata protocol definition, it supports Create, Read, Update and Delete(CRUD)-style operations and so it can be used superbly for integration with external systems.
Of course, before proceeding ahead i must tell you that, to access anything outside of D365O you need access token(Bearer token) which I have already explained on my previous post
Get Token to expose data outside of D365 for Operations
Now, the question is how does CRUD actually works for D365O data entities. I will be explaining each operation one by one.
I have created a data entity named as "BeaconEntity" for this purpose, but you can follow same process for any of the available public entity also.
I will be using POSTMAN tool to try out all these operations. you can opt to use Fiddler(as it is used by MS). You can also use other tools as well as your coding skills in other languages to test out all these things.
Just for testing of READ Operations, you can use the 2nd tab of browser where you are already logged in to D365O and if its session is not yet expired.
Before proceeding ahead, you might consider getting a fullmetadata.
https://********devaos.cloudax.dynamics.com/data/Beaconservice?$format=application/json;odata.metadata=full
READ(R):-
oh, there should be CREATE operation 1st, did i forgot the sequence, no i didn't. As READ is the most basic operation without doing much and so i have mentioned it 1st.
To read the data, you just need 3 things
1. Make the entity public
2. Get access(bearer) token.
3. Have a name of Entity with you.
open Postman, paste your hostURI succeeded by /data/<entityName>.
Please note that for all Read operations, method type should always be GET.
Pass the key as "Authorization" and paste its value as <bearer token> you already have.
Then click on Send button to get the available data from D365O based on the user rights and default company(for me its USRT) assigned to him.
https://*********devaos.cloudax.dynamics.com/data/Beaconservice
I have 3 records in table and so the output looks like below:
CROSS-COMPANY:
This can come very handy if you have to get records from other company(other than the default mapped company with the user).
https://********devaos.cloudax.dynamics.com/data/Beaconservice?$filter=dataAreaId eq 'usmf' &cross-company=true
setting up 'cross-company' will give records from all the Legal entities irrespective of the default legal entity. Below is the result of my query.
Its blank, as i don't have any record in USMF.
you can also use only cross-company without any filter as shown below to get consolidated records from all the legal entities.
https://********devaos.cloudax.dynamics.com/data/Beaconservice?cross-company=true
I will dig more deep into READ operation to get required data and required format.
But, thats on Part 2 of this Post.
Data Entites
Also, If you want to see what is Odata and what it does in D365O, click on below link
Odata in D365
By this time, you are already aware that Data Entities follows Odata protocols and present you the data in Json format.
So, how actually following up of Odata helps us?
It actually has lot of positiveness other than just representation of data. As per the Odata protocol definition, it supports Create, Read, Update and Delete(CRUD)-style operations and so it can be used superbly for integration with external systems.
Of course, before proceeding ahead i must tell you that, to access anything outside of D365O you need access token(Bearer token) which I have already explained on my previous post
Get Token to expose data outside of D365 for Operations
Now, the question is how does CRUD actually works for D365O data entities. I will be explaining each operation one by one.
I have created a data entity named as "BeaconEntity" for this purpose, but you can follow same process for any of the available public entity also.
I will be using POSTMAN tool to try out all these operations. you can opt to use Fiddler(as it is used by MS). You can also use other tools as well as your coding skills in other languages to test out all these things.
Just for testing of READ Operations, you can use the 2nd tab of browser where you are already logged in to D365O and if its session is not yet expired.
Before proceeding ahead, you might consider getting a fullmetadata.
https://********devaos.cloudax.dynamics.com/data/Beaconservice?$format=application/json;odata.metadata=full
{ "@odata.context": "https://************devaos.cloudax.dynamics.com/data/$metadata#Beaconservice", "value": [ { "@odata.type": "#Microsoft.Dynamics.DataEntities.BeaconService", "@odata.id": "https://******devaos.cloudax.dynamics.com/data/Beaconservice(dataAreaId='usrt',BeaconNum='123456789')", "@odata.etag": "W/\"JzE0NTk5MjkxNjcsNTYzNzE0NDU3Nic=\"", "@odata.editLink": "Beaconservice(dataAreaId='usrt',BeaconNum='123456789')", "Description": "beacon 1", "dataAreaId": "usrt", "BeaconNum": "123456789", "EffectiveDate@odata.type": "#DateTimeOffset", "EffectiveDate": "2017-01-08T12:00:00Z", "BeaconStatus@odata.type": "#Microsoft.Dynamics.DataEntities.BeaconStatus", "BeaconStatus": "Active", "Brand": "Brand1", "StartTime": 0, "Category": "Category1", "EndTime": 0, "Offer": "", "OfferId": "Offer1" }, { "@odata.type": "#Microsoft.Dynamics.DataEntities.BeaconService", "@odata.id": "https://***********devaos.cloudax.dynamics.com/data/Beaconservice(dataAreaId='usrt',BeaconNum='234567891')", "@odata.etag": "W/\"Jzg0ODAyMzczOCw1NjM3MTQ0NTc3Jw==\"", "@odata.editLink": "Beaconservice(dataAreaId='usrt',BeaconNum='234567891')", "Description": "Beacon 2", "dataAreaId": "usrt", "BeaconNum": "234567891", "EffectiveDate@odata.type": "#DateTimeOffset", "EffectiveDate": "2017-01-08T12:00:00Z", "BeaconStatus@odata.type": "#Microsoft.Dynamics.DataEntities.BeaconStatus", "BeaconStatus": "InActive", "Brand": "Brand2", "StartTime": 0, "Category": "Category2", "EndTime": 0, "Offer": "", "OfferId": "offer2" }, { "@odata.type": "#Microsoft.Dynamics.DataEntities.BeaconService", "@odata.id": "https://*********devaos.cloudax.dynamics.com/data/Beaconservice(dataAreaId='usrt',BeaconNum='345678912')", "@odata.etag": "W/\"JzEsNTYzNzE0NDU3OCc=\"", "@odata.editLink": "Beaconservice(dataAreaId='usrt',BeaconNum='345678912')", "Description": "Beacon 3", "dataAreaId": "usrt", "BeaconNum": "345678912", "EffectiveDate@odata.type": "#DateTimeOffset", "EffectiveDate": "2017-05-08T12:00:00Z", "BeaconStatus@odata.type": "#Microsoft.Dynamics.DataEntities.BeaconStatus", "BeaconStatus": "Active", "Brand": "Brand3", "StartTime": 0, "Category": "Category3", "EndTime": 0, "Offer": "", "OfferId": "Offer3" } ] }
READ(R):-
oh, there should be CREATE operation 1st, did i forgot the sequence, no i didn't. As READ is the most basic operation without doing much and so i have mentioned it 1st.
To read the data, you just need 3 things
1. Make the entity public
2. Get access(bearer) token.
3. Have a name of Entity with you.
open Postman, paste your hostURI succeeded by /data/<entityName>.
Please note that for all Read operations, method type should always be GET.
Pass the key as "Authorization" and paste its value as <bearer token> you already have.
Then click on Send button to get the available data from D365O based on the user rights and default company(for me its USRT) assigned to him.
https://*********devaos.cloudax.dynamics.com/data/Beaconservice
I have 3 records in table and so the output looks like below:
{ "@odata.context": "https://*********devaos.cloudax.dynamics.com/data/$metadata#Beaconservice", "value": [ { "@odata.etag": "W/\"JzE0NTk5MjkxNjcsNTYzNzE0NDU3Nic=\"", "Description": "beacon 1", "dataAreaId": "usrt", "BeaconNum": "123456789", "EffectiveDate": "2017-01-08T12:00:00Z", "BeaconStatus": "Active", "Brand": "Brand1", "StartTime": 0, "Category": "Category1", "EndTime": 0, "Offer": "", "OfferId": "Offer1" }, { "@odata.etag": "W/\"Jzg0ODAyMzczOCw1NjM3MTQ0NTc3Jw==\"", "Description": "Beacon 2", "dataAreaId": "usrt", "BeaconNum": "234567891", "EffectiveDate": "2017-01-08T12:00:00Z", "BeaconStatus": "InActive", "Brand": "Brand2", "StartTime": 0, "Category": "Category2", "EndTime": 0, "Offer": "", "OfferId": "offer2" }, { "@odata.etag": "W/\"JzEsNTYzNzE0NDU3OCc=\"", "Description": "Beacon 3", "dataAreaId": "usrt", "BeaconNum": "345678912", "EffectiveDate": "2017-05-08T12:00:00Z", "BeaconStatus": "Active", "Brand": "Brand3", "StartTime": 0, "Category": "Category3", "EndTime": 0, "Offer": "", "OfferId": "Offer3" } ] }
CROSS-COMPANY:
This can come very handy if you have to get records from other company(other than the default mapped company with the user).
https://********devaos.cloudax.dynamics.com/data/Beaconservice?$filter=dataAreaId eq 'usmf' &cross-company=true
setting up 'cross-company' will give records from all the Legal entities irrespective of the default legal entity. Below is the result of my query.
{ "@odata.context":"https://********devaos.cloudax.dynamics.com/data/$metadata#Beaconservice","value":[ ] }
Its blank, as i don't have any record in USMF.
you can also use only cross-company without any filter as shown below to get consolidated records from all the legal entities.
https://********devaos.cloudax.dynamics.com/data/Beaconservice?cross-company=true
I will dig more deep into READ operation to get required data and required format.
But, thats on Part 2 of this Post.
I all the time emailed this website post page to all my contacts, for the reason that if like to read it next my friends will
ReplyDeletetoo.
I am glad and surely motivated...will be posting more as soon as i'll get free from my work...
DeleteThis information is really awesome thanks for sharing most valuable information.
ReplyDeleteMicrosoft Dynamics AX Technical Training
Microsoft Dynamics AX Technical Training in Hyderabad
MS Dynamics Technical Online Training
MS Dynamics AX Technical Training in Hyderabad
MS Dynamics AX Online Training
D365 AX Online Training
thanks for shared this post.
ReplyDeleteFull Stack Training in Chennai | Certification | Online Training Course | Full Stack Training in Bangalore | Certification | Online Training Course | Full Stack Training in Hyderabad | Certification | Online Training Course | Full Stack Training in Pune | Certification | Online Training Course | Full Stack Training | Certification | Full Stack Online Training Course
Thank you for the great post.
ReplyDeleteAzure DevOps Training Online
Azure DevOps Online Training
Azure DevOps Training
Azure DevOps Training in Hyderabad
Microsoft Azure DevOps Online Training
Azure DevOps Course Online
Azure DevOps Online Training in Hyderabad
Great Blog Article.Thanks for sharing this information.
ReplyDeleteDevOps Training
DevOps Online Training
DevOps Online Training in Hyderabad
DevOps Online Training institute
DevOps Training in Hyderabad
DevOps Training institute in Ameerpet
DevOps Project Training
DevOps Training in Ameerpet
DevOps Training institute in Hyderabad
DevOps Course in Hyderabad
Thankyou for the Great Article!! It is very useful information for us.
ReplyDeleteDevOps Training institute in Ameerpet
DevOps Project Training
DevOps Training in Ameerpet
DevOps Training institute in Hyderabad
DevOps Course in Hyderabad
Great article about Microsoft Dynamics CRM. Thanks for this article.
ReplyDeleteMicrosoft Dynamics CRM Training
MS Dynamics CRM Training
Dynamics CRM Online Training
MICROSOFT DYNAMICS ONLINE TRAINING IN INDIA
Microsoft Dynamics CRM Training Institute in Hyderabad
MS Dynamics CRM Training in Hyderabad
Dynamics 365 CRM Training Cours
Great article about Microsoft Dynamics CRM. Thanks for this article.
ReplyDeleteMicrosoft Dynamics CRM Training
MS Dynamics CRM Training
Dynamics CRM Online Training
MICROSOFT DYNAMICS ONLINE TRAINING IN INDIA
Microsoft Dynamics CRM Training Institute in Hyderabad
MS Dynamics CRM Training in Hyderabad
Dynamics 365 CRM Training Course
Great article about Microsoft Dynamics CRM. Thanks for this article.
ReplyDeleteMicrosoft Dynamics CRM Training
MS Dynamics CRM Training
Dynamics CRM Online Training
MICROSOFT DYNAMICS ONLINE TRAINING IN INDIA
Microsoft Dynamics CRM Training Institute in Hyderabad
MS Dynamics CRM Training in Hyderabad
Dynamics 365 CRM Training Course
Great article about Microsoft Dynamics CRM. Thanks for this article.
ReplyDeleteMicrosoft Dynamics CRM Training
MS Dynamics CRM Training
Dynamics CRM Online Training
MICROSOFT DYNAMICS ONLINE TRAINING IN INDIA
Microsoft Dynamics CRM Training Institute in Hyderabad
MS Dynamics CRM Training in Hyderabad
Dynamics 365 CRM Training Course
Great article about Microsoft Dynamics CRM. Thanks for this article.
ReplyDeleteMicrosoft Dynamics CRM Training
MS Dynamics CRM Training
Dynamics CRM Online Training
MICROSOFT DYNAMICS ONLINE TRAINING IN INDIA
Microsoft Dynamics CRM Training Institute in Hyderabad
MS Dynamics CRM Training in Hyderabad
Dynamics 365 CRM Training Course
Great article about Microsoft Dynamics CRM. Thanks for this article.
ReplyDeleteMicrosoft Dynamics CRM Training
MS Dynamics CRM Training
Dynamics CRM Online Training
MICROSOFT DYNAMICS ONLINE TRAINING IN INDIA
Microsoft Dynamics CRM Training Institute in Hyderabad
MS Dynamics CRM Training in Hyderabad
Dynamics 365 CRM Training Course
Great article about Microsoft Dynamics CRM. Thanks for this article.
ReplyDeleteMicrosoft Dynamics CRM Training
MS Dynamics CRM Training
Dynamics CRM Online Training
MICROSOFT DYNAMICS ONLINE TRAINING IN INDIA
Microsoft Dynamics CRM Training Institute in Hyderabad
MS Dynamics CRM Training in Hyderabad
Dynamics 365 CRM Training Course
Great article about Microsoft Dynamics CRM. Thanks for this article.
ReplyDeleteMicrosoft Dynamics CRM Training
MS Dynamics CRM Training
Dynamics CRM Online Training
MICROSOFT DYNAMICS ONLINE TRAINING IN INDIA
Microsoft Dynamics CRM Training Institute in Hyderabad
MS Dynamics CRM Training in Hyderabad
Dynamics 365 CRM Training Course
Great article about Microsoft Dynamics CRM. Thanks for this article.
ReplyDeleteMicrosoft Dynamics CRM Training
MS Dynamics CRM Training
Dynamics CRM Online Training
MICROSOFT DYNAMICS ONLINE TRAINING IN INDIA
Microsoft Dynamics CRM Training Institute in Hyderabad
MS Dynamics CRM Training in Hyderabad
Dynamics 365 CRM Training Course
Great article about Microsoft Dynamics Ax technical. Thanks for this article.
ReplyDeleteAx Technical D365
D365 Ax Technical Online Training
D365 Finance and Operations Online Training
Microsoft Dynamics AX Technical Training
Microsoft Dynamics AX Training
Microsoft Dynamics AX Technical Training in Hyderabad
Dynamics 365 Training
Great article about Microsoft Dynamics Ax technical. Thanks for this article.
ReplyDeleteAx Technical D365
D365 Ax Technical Online Training
D365 Finance and Operations Online Training
Microsoft Dynamics AX Technical Training
Microsoft Dynamics AX Training
Microsoft Dynamics AX Technical Training in Hyderabad
Dynamics 365 Training
Hello there! I've enjoyed reading through your blog posts. Your insights are both informative and engaging. It's refreshing to come across a blog that covers such a diverse range of topics. Keep up the great work, and I'm looking forward to reading more from you in the future!
ReplyDeleteMicrosoft Payroll Solutions Abu Dhabi
hr and payroll management dubai
Ms Crm Dubai
dynamics crm uae
microsoft dynamics finance and operations dubai
dynamics 365 sales professional uae
Business Central In Uae
microsoft power platform partner uae
cyber security company in uae
dynamics 365 payroll in uae
eXperts People 365
microsoft dynamics 365 property management
implementation partners in dubai
Business Process Consulting
digital transformation consulting services dubai
Digital Transformation Consultancy uae