Catatan
Akses ke halaman ini memerlukan otorisasi. Anda dapat mencoba masuk atau mengubah direktori.
Akses ke halaman ini memerlukan otorisasi. Anda dapat mencoba mengubah direktori.
Organisasi layanan lapangan perlu menjadwalkan pekerjaan, seringkali melalui layanan agen langsung oleh pelanggan. Pemesanan biasanya dibuat berdasarkan sumber daya yang tersedia untuk perusahaan dan persyaratan pekerjaan.
Saat Anda menggunakan setidaknya Dynamics 365 Field Service v8.8.43.51 dan Universal Resource Scheduling v3.12.46.21 untuk menjadwalkan pekerjaan, gunakan msdyn_SearchResourceAvailability API untuk mengambil semua sumber daya yang memenuhi syarat untuk pekerjaan tersebut, sehingga Anda dapat menjadwalkan pekerjaan secara efisien. Pada saat penulisan, v3 adalah versi terbaru dan msdyn_SearchResourceAvailability mendukung panggilan API web.
Note
Gunakan API versi terbaru karena versi lama mungkin menggunakan metode autentikasi yang tidak digunakan lagi.
Parameter masukan
| Name | Tipe | Deskripsi | Diperlukan | Default |
|---|---|---|---|---|
| Versi | String | Nomor versi API mengidentifikasi versi API yang harus diaktifkan. Aplikasi ini menggunakan format major.minor.patch. Permintaan tidak harus berisi nomor versi lengkap.
|
Yes | -T/A- |
| IsWebApi | Boolean | Atur ke True untuk menggunakan asisten jadwal melalui API web. | Yes | -T/A- |
| Persyaratan | Entitas | Atribut ini menentukan persyaratan sumber daya untuk ketersediaan sumber daya yang sedang diambil. Ini diharapkan menjadi entitas tipe msdyn_resourcerequirement . Persyaratannya dapat berupa catatan yang sudah ada sebelumnya dari database, atau yang dibuat dengan cepat dengan batasan yang diperlukan. Entitas harus berisi semua spesifikasi yang relevan untuk pencarian Anda.
@odata.type untuk entitas ini harus Microsoft.Dynamics.CRM.msdyn_requirement. Berikut ini beberapa atribut penting untuk diisi:
|
Yes | -T/A- |
| Pengaturan | Entitas | Atribut pengaturan akan membantu memfilter sumber daya yang diambil lebih lanjut. Tentukan pengaturan sebagai atribut dalam tas entitas. Jenis entitas tidak masalah. Anda dapat menentukan nama logis entitas apa pun. | Yes | -T/A- |
| Spesifikasi Sumber Daya | Entitas | Tentukan resourceSpecification atribut sebagai atribut dalam tas entitas.
@odata.type untuk entitas ini harus Microsoft.Dynamics.CRM.expando. |
No | None |
Entitas pengaturan
Entitas pengaturan bukanlah entitas yang ada di dalam Dataverse; namun, ini adalah kumpulan semua atribut berikut yang membantu hasil filter API Asisten jadwal. Dengan demikian, @odata.type untuk entitas ini harus Microsoft.Dynamics.CRM.expando.
| Name | Tipe | Deskripsi | Diperlukan | Default |
|---|---|---|---|---|
| ConsiderSlotsWithLessThanRequiredCapacity | Boolean | Atur ini ke True jika slot waktu dengan kapasitas (upaya) kurang dari yang diperlukan harus dipertimbangkan saat menghitung slot waktu potensial yang tersedia di kalender sumber daya. | No | False |
| ConsiderSlotsWithLessThanRequiredDuration | Boolean | Atur ini ke True jika slot waktu dengan durasi kurang dari yang diperlukan harus dipertimbangkan saat menghitung slot waktu potensial yang tersedia di kalender sumber daya. | No | False |
| ConsiderSlotsWithOverlappingBooking | Boolean | Atur ini ke True jika slot waktu dengan pemesanan yang tumpang tindih harus dipertimbangkan saat menghitung slot waktu potensial yang tersedia di kalender sumber daya. | No | False |
| ConsiderSlotsWithProposedBookings | Boolean | Atur ini ke True jika slot waktu dengan pemesanan yang diusulkan harus dipertimbangkan saat menghitung slot waktu potensial yang tersedia di kalender sumber daya. | No | False |
| ConsiderAppointments | Boolean | Atur ini ke True untuk API ketersediaan sumber daya pencarian untuk menghormati janji temu yang ada sebagai pemesanan pada sumber daya, asalkan Dataverse pengaturan tingkat organisasi dan sumber daya telah ditetapkan. Janji temu dengan status Sibuk atau Selesai dianggap tidak tersedia untuk operasi penjadwalan. | No | False |
| ConsiderTravelTime | Boolean | Atur ini ke True jika waktu perjalanan harus dipertimbangkan saat menghitung slot waktu potensial pada kalender sumber daya. | No | Benar |
| Kecualikan Karakteristik Sumber Daya | Boolean | Atur ini ke True untuk mengecualikan karakteristik sumber daya untuk slot waktu sebagai respons. | No | False |
| MovePastStartDateToCurrentDate | Boolean | Atur ini ke True untuk memindahkan tanggal mulai di masa lalu ke tanggal saat ini. | No | False |
| UseRealTimeResourceLocation | Boolean | Atur ini ke True jika lokasi sumber daya real-time harus digunakan saat menghitung slot waktu potensial pada kalender sumber daya. | No | False |
| SortOrder | EntityCollection | Tentukan urutan pengurutan dengan menggunakan kumpulan entitas. Setiap entitas dalam koleksi mewakili satu kriteria pengurutan, dan hanya dapat mengurutkan Resources dari respons tetapi tidak TimeSlots.
@odata.type untuk entitas ini harus Microsoft.Dynamics.CRM.expando. Berikut ini adalah atribut yang perlu Anda isi:
|
No | None |
| MaxResourceTravelRadius | Entitas | Atribut ini menentukan maksimum yang dapat ditentukan dalam entitas.
@odata.type untuk entitas ini harus Microsoft.Dynamics.CRM.expando. Berikut ini adalah atribut yang perlu Anda isi:
|
No | 0 km. Jika demikian, tidak ada sumber daya yang dikembalikan untuk persyaratan di tempat. |
| MaxNumberOfResourcesToEvaluate | Integer | Atribut ini menentukan batas pada jumlah sumber daya yang dipertimbangkan untuk permintaan. | No | Jika atribut ini tidak disertakan dalam panggilan API, sistem menggunakan Batas Pengambilan Ketersediaan Sumber Daya dari definisi entitas yang dapat dijadwalkan seperti yang ditentukan dalam Edit pengaturan untuk entitas yang diaktifkan. Jika disertakan dalam panggilan, ini akan menimpa Batas Pengambilan Ketersediaan Sumber Daya yang ditentukan. |
| Pertimbangkan OutlookJadwal | Boolean | Atur ini ke True jika jadwal dari Outlook harus dipertimbangkan. Hanya tersedia dalam versi 3.1.0 dan yang lebih baru. | No | False |
Entitas Spesifikasi Sumber Daya
| Name | Tipe | Deskripsi | Diperlukan | Default |
|---|---|---|---|---|
| ResourceTypes | EntityCollection | Atribut ini menentukan jenis sumber daya yang diperlukan untuk persyaratan. Gunakan kumpulan entitas untuk menentukan atribut ini. Setiap entitas dalam koleksi mewakili satu jenis sumber daya yang dapat dipesan.
@odata.type untuk entitas ini harus Microsoft.Dynamics.CRM.msdyn_resourceType. Atribut ini diperlukan:
|
No | Semua jenis sumber daya kecuali kru |
| PreferredResources | EntityCollection | Atribut ini menentukan sumber daya yang dipilih untuk persyaratan. Tambahkan sumber daya ke koleksi entitas ini untuk memastikannya berada di bagian atas daftar sumber daya yang tersedia. Bahkan sumber daya yang bukan bagian dari kumpulan entitas ada dalam daftar, tetapi hanya setelah sumber daya yang disukai. | No | None |
| RestrictedResources | EntityCollection | Atribut ini menentukan sumber daya yang tidak boleh dipertimbangkan untuk persyaratan. Semua slot waktu sumber daya ini difilter keluar dari daftar hasil dari API ini. | No | None |
| MustChooseFromResources | EntityCollection | Atribut ini menentukan satu-satunya sumber daya yang dapat berada di daftar sumber daya yang tersedia. Ini menyaring semua hasil lain dari daftar keluaran. | ||
| Constraints | Entitas | Atribut ini menentukan batasan tambahan yang harus diterapkan ke pengambilan sumber daya yang tersedia. | No | None |
| RetrieveResourcesQueryId | Panduan | ID untuk kueri Ambil Sumber Daya. | No | ID Kueri Sumber Daya Ambil default. |
| BookedResourceId | Panduan | Atribut ini menentukan jenis sumber daya yang saat ini dipesan untuk persyaratan. | No | None |
Note
Gunakan kumpulan entitas entitas sumber daya yang dapat dipesan untuk menentukan atribut sumber daya Preferred, Restricted, dan MustChooseFrom . Setiap entitas dalam koleksi mewakili satu sumber daya Preferred, Restricted, atau MustChooseFrom . Atribut ini diperlukan untuk mereka:
-
Nilai (Guid): ID sumber daya yang dapat dipesan dari sumber daya Preferred, Restricted, atau MustChooseFrom .
@odata.typeuntuk entitas ini harusMicrosoft.Dynamics.CRM.msdyn_bookableresource.
Constraints
Tentukan batasan tambahan melalui atribut dalam entitas ini. Jenis entitas tidak masalah. Anda dapat menentukan nama logis entitas apa pun.
Tinjau Kueri Ambil Sumber Daya pada pengaturan papan jadwal untuk mengidentifikasi batasan mana yang mungkin berlaku. Secara default, mencakup yang berikut:
| Name | Tipe | Deskripsi |
|---|---|---|
| Karakteristik | EntityCollection | Kumpulan karakteristik yang harus dimiliki sumber daya yang memenuhi syarat. Setiap entri berisi dengan characteristic ID karakteristik. Secara opsional, sertakan a ratingvalue dengan ID nilai peringkat untuk memfilter sumber daya berdasarkan tingkat kecakapan tertentu. |
| Peran | EntityCollection | Kumpulan ID peran yang harus dimiliki sumber daya berkualifikasi. |
| Wilayah | EntityCollection | Kumpulan ID wilayah. Sumber daya yang berkualifikasi harus ditetapkan ke salah satu wilayah. |
| UnspecifiedTerritory | Boolean | Dalam kombinasi dengan batasan wilayah, menentukan bahwa kualifikasi harus ditetapkan ke salah satu wilayah atau tidak ada wilayah sama sekali. |
| OrganizationalUnits | EntityCollection | Kumpulan id unit organisasi. Sumber daya yang berkualifikasi harus merupakan anggota salah satu unit organisasional yang ditentukan. |
| Teams | EntityCollection | Kumpulan ID tim. Sumber daya yang memenuhi kualifikasi harus milik salah satu tim (berarti jenis sumber dayanya adalah pengguna sistem). |
| BusinessUnits | EntityCollection | Kumpulan ID unit bisnis. Sumber daya yang memenuhi kualifikasi harus milik salah satu unit bisnis (berarti sumber dayanya adalah pengguna sistem). |
Parameter output
Di tingkat tertinggi, output memiliki empat parameter berikut. Hasilnya dinyatakan dalam kumpulan entitas dan entitas. Respons mungkin tidak menyertakan semua atribut yang dijelaskan di sini sebagai nilai null atau bukan nilai NA dihilangkan dari respons. Selalu periksa keberadaan atribut sebelum mencoba mengaksesnya.
| Name | Tipe | Deskripsi |
|---|---|---|
| TimeSlots | EntityCollection | Kumpulan hasil slot waktu. Untuk informasi selengkapnya, lihat bagian entitas slot waktu . |
| Resources | EntityCollection | Kumpulan hasil sumber daya. Sumber daya direpresentasikan sebagai kumpulan entitas dengan atribut berikut:
|
| Related | Entitas | Sumber daya terkait mewakili sumber daya dan slot waktu sumber daya yang tidak secara langsung memenuhi syarat untuk persyaratan yang diminta tetapi terkait. Misalnya, jika anggota kru memenuhi syarat untuk persyaratan, maka anggota lain dari tim tersebut akan menjadi hasil terkait.
|
| Pengecualian | Entitas | Atribut ini berisi informasi tentang pengecualian yang terjadi dan informasi tentang jika dan di mana pencarian sumber daya terpotong.
|
Entitas slot waktu
| Name | Tipe | Deskripsi |
|---|---|---|
| ID | Panduan | Pengidentifikasi unik untuk slot waktu |
| Tipe | Integer | Jenis slot waktu. Ini bisa menjadi salah satu nilai berikut:
|
| StartTime | DateTime | Waktu mulai slot waktu. Jika ada perjalanan untuk persyaratan tersebut, kali ini adalah waktu mulai perjalanan. Jika tidak, kali ini adalah waktu mulai persyaratan. |
| ArrivalTime | DateTime | Waktu kedatangan slot waktu. Jika ada perjalanan untuk persyaratan, kali ini adalah waktu mulai persyaratan, setelah perjalanan selesai. Jika tidak, itu sama dengan waktu mulai slot waktu. |
| Waktu Selesai | DateTime | Waktu berakhir slot waktu. |
| Effort | Integer | Upaya atau kapasitas sumber daya untuk melaksanakan persyaratan. |
| ResourceRequirement | EntityReference | Persyaratan sumber daya untuk slot waktu yang diambil. |
| Potensi | Boolean | Nilai boolean yang menunjukkan apakah slot waktu berpotensi memenuhi kebutuhan yang diminta. |
| IsDuplicate | Boolean | Nilai Boolean yang mengindikasikan jika slot waktu merupakan duplikat. |
| AllowOverlapping | Boolean | Nilai boolean yang menunjukkan apakah tumpang tindih diizinkan. |
| Resource | Entitas | Sumber daya yang memiliki slot waktu. Untuk informasi selengkapnya, lihat sumber daya slot waktu. |
| Location | Entitas | Lokasi memiliki tiga atribut:
|
| Perjalanan | Entitas | Entitas ini berisi rincian waktu perjalanan dan informasi jarak untuk slot waktu. Berikut ini adalah atributnya:
|
| Berikutnya | Entitas | Entitas ini berisi rincian tentang waktu dan jarak perjalanan ke pemesanan slot waktu berikutnya.
|
| Availability | Entitas | Informasi ketersediaan terperinci untuk slot waktu. Entitas ini digunakan dengan kelompok waktu.
|
| TimeGroup | Entitas | Rincian tentang grup waktu.
|
Tip
Saat Anda membuat pemesanan dengan menggunakan API, gunakan bidang Potensi yang dijelaskan dalam tabel. Tidak menggunakan kolom tersebut dapat menyebabkan pemesanan yang tumpang tindih atau tidak sesuai.
Sumber slot Waktu
| Name | Tipe | Deskripsi |
|---|---|---|
| Resource | EntityReference | Entitas yang merujuk ke sumber daya yang dapat dipesan. |
| Grup Sumber Daya | EntityReference | Entitas yang merujuk ke grup sumber daya yang dapat dipesan. |
| Unit Bisnis | EntityReference | Referensi entitas ke unit bisnis. |
| OrganizationalUnit | EntityReference | Referensi entitas ke Unit Organisasi. |
| Jenis Sumber Daya | Integer | Jenis sumber daya Lihat atribut ResourceType pada entitas BookableResource untuk kemungkinan nilai. |
| PoolId | Panduan | ID kumpulan tempat sumber daya menjadi anggota selama slot waktu. |
| CrewId | Panduan | ID kru yang menjadi anggota sumber daya selama slot waktu. |
| Karakteristik | EntityCollection | Karakteristik Sumber Daya yang Dapat Dipesan. Setiap entitas dalam kumpulan ini berisi entitas dengan karakteristik dan informasi peringkat.
|
| HasStartLocation | Boolean | Nilai boolean yang menunjukkan apakah sumber daya memiliki lokasi mulai. |
| HasEndLocation | Boolean | Nilai boolean yang menunjukkan apakah sumber daya memiliki lokasi akhir. |
| String | Alamat email sumber daya. | |
| Ponsel | String | Nomor telepon sumber daya. |
| ImagePath | String | Jalur ke gambar sumber daya. |
| CalendarId | Panduan | ID kalender sumber daya. |
Contoh
Dalam contoh ini, Anda menggunakan API asisten jadwal versi 3, yang mendukung panggilan API web, untuk persyaratan dengan durasi 60 menit. Dengan menggunakan settings atribut, Anda memfilter hasilnya. Anda mempertimbangkan dua jenis sumber daya untuk hasil akhir: 1 dan 2 (dengan kata lain, generik dan kontak).
{
"Version": "4",
"IsWebApi": true,
"Requirement": {
"msdyn_fromdate": "2021-07-14T00:00:00Z",
"msdyn_todate": "2021-07-15T23:59:00Z",
"msdyn_remainingduration": 60,
"msdyn_duration": 60,
"msdyn_TimeGroup@odata.bind": "/msdyn_timegroups(c3dc79ea-d12f-ee11-9cc9-000d3a745a58)",
"@odata.type": "Microsoft.Dynamics.CRM.msdyn_resourcerequirement"
},
"Settings": {
"ConsiderSlotsWithProposedBookings": false,
"MovePastStartDateToCurrentDate": true,
"@odata.type": "Microsoft.Dynamics.CRM.expando"
},
"ResourceSpecification": {
"@odata.type": "Microsoft.Dynamics.CRM.expando",
"ResourceTypes@odata.type": "Collection(Microsoft.Dynamics.CRM.expando)",
"ResourceTypes": [
{
"@odata.type": "Microsoft.Dynamics.CRM.expando",
"value": "1"
},
{
"@odata.type": "Microsoft.Dynamics.CRM.expando",
"value": "2"
}
],
"Constraints": {
"@odata.type": "Microsoft.Dynamics.CRM.expando",
"Characteristics@odata.type": "Collection(Microsoft.Dynamics.CRM.expando)",
"Characteristics": [
{
"@odata.type": "Microsoft.Dynamics.CRM.expando",
"characteristic": {
"@odata.type": "Microsoft.Dynamics.CRM.expando",
"value": "67387f9f-12e2-ec11-bb43-000d3aed25f7"
},
"ratingvalue": {
"@odata.type": "Microsoft.Dynamics.CRM.expando",
"value": "a1b2c3d4-5678-90ab-cdef-1234567890ab"
}
}
],
"Territories@odata.type": "Collection(Microsoft.Dynamics.CRM.expando)",
"Territories": [
{
"@odata.type": "Microsoft.Dynamics.CRM.expando",
"value": "cc19f004-4483-ee11-8178-000d3a5c32c3"
}
],
"Roles@odata.type": "Collection(Microsoft.Dynamics.CRM.expando)",
"Roles": [
{
"@odata.type": "Microsoft.Dynamics.CRM.expando",
"value": "76998e42-744c-f011-877d-6045bdfb899e"
}
]
}
}
}
Contoh berikut menunjukkan penggunaan koleksi entitas yang tepat. Dalam hal ini, ini menentukan MustChooseFromResources.
{
"Version": "4",
"IsWebApi": true,
"Requirement": {
"msdyn_fromdate": "2021-07-14T00:00:00Z",
"msdyn_todate": "2021-07-15T23:59:00Z",
"msdyn_remainingduration": 60,
"msdyn_duration": 60,
"msdyn_latitude": 47.64807,
"msdyn_longitude": -122.41249,
"msdyn_worklocation": 690970000,
"msdyn_TimeGroup@odata.bind": "/msdyn_timegroups(c3dc79ea-d12f-ee11-9cc9-000d3a745a58)",
"@odata.type": "Microsoft.Dynamics.CRM.msdyn_resourcerequirement"
},
"Settings": {
"ConsiderSlotsWithProposedBookings": false,
"MovePastStartDateToCurrentDate": true,
"MaxNumberOfResourcesToEvaluate":500,
"ConsiderTravelTime": true,
"MaxResourceTravelRadius": {
"Value": 20,
"Unit" : 192350000,
"@odata.type": "Microsoft.Dynamics.CRM.expando"
},
"@odata.type": "Microsoft.Dynamics.CRM.expando"
},
"ResourceSpecification": {
"@odata.type": "Microsoft.Dynamics.CRM.expando",
"ResourceTypes@odata.type": "Collection(Microsoft.Dynamics.CRM.expando)",
"ResourceTypes": [
{
"@odata.type": "Microsoft.Dynamics.CRM.expando",
"value": "1"
},
{
"@odata.type": "Microsoft.Dynamics.CRM.expando",
"value": "2"
}
],
"MustChooseFromResources@odata.type": "Collection(Microsoft.Dynamics.CRM.expando)",
"MustChooseFromResources": [
{
"@odata.type": "Microsoft.Dynamics.CRM.expando",
"value": "2145a982-f718-ed11-b83e-0022482d79c8"
}
],
"Constraints": {
"@odata.type": "Microsoft.Dynamics.CRM.expando",
"Characteristics@odata.type": "Collection(Microsoft.Dynamics.CRM.expando)",
"Characteristics": [
{
"@odata.type": "Microsoft.Dynamics.CRM.expando",
"characteristic": {
"@odata.type": "Microsoft.Dynamics.CRM.expando",
"value": "67387f9f-12e2-ec11-bb43-000d3aed25f7"
},
"ratingvalue": {
"@odata.type": "Microsoft.Dynamics.CRM.expando",
"value": "a1b2c3d4-5678-90ab-cdef-1234567890ab"
}
}
],
"Territories@odata.type": "Collection(Microsoft.Dynamics.CRM.expando)",
"Territories": [
{
"@odata.type": "Microsoft.Dynamics.CRM.expando",
"value": "cc19f004-4483-ee11-8178-000d3a5c32c3"
}
]
}
}
}