Bagikan melalui


Hubungan tabel Microsoft Dataverse

Hubungan tabel di Microsoft Dataverse menentukan cara baris tabel dapat dikaitkan dengan baris dari tabel lain atau tabel yang sama. Ada dua jenis hubungan tabel:

Relasi satu ke banyak

Dalam hubungan tabel satu ke banyak, banyak baris tabel referensi (terkait) dapat dikaitkan dengan satu baris tabel yang dirujuk (utama). Baris tabel yang dirujuk terkadang disebut sebagai "induk", dan baris tabel yang merujuk disebut sebagai "turunan." Relasi banyak ke satu adalah hanya perspektif anak relasi satu-ke-banyak.

Misalnya, dalam skenario sekolah, beberapa mata pelajaran mungkin disampaikan dalam satu ruang kelas, tabel kelas akan memiliki relasi satu-ke-banyak dengan tabel mata pelajaran.

Relasi Banyak ke Banyak

Dalam hubungan tabel many-to-many, suatu baris tabel dapat dikaitkan dengan banyak baris tabel lainnya. Baris yang terkait menggunakan relasi banyak-ke-banyak dapat dianggap sebagai rekan dan relasinya bersifat timbal balik.

Misalnya, dalam skenario sekolah yang sama yang disebutkan sebelumnya, satu siswa dapat mendaftar di beberapa kursus, dan setiap kursus dapat memiliki beberapa siswa. Jenis hubungan ini memungkinkan asosiasi data yang lebih kompleks dan dikelola menggunakan Power Apps di Dataverse.

Cara kerja hubungan di Dataverse

Hubungan tabel menentukan bagaimana baris tabel dapat terkait satu sama lain di Dataverse. Pada tingkat paling sederhana, menambahkan kolom pencarian ke tabel membuat hubungan baru 1:N (satu-ke-banyak) antara dua tabel dan memungkinkan Anda menempatkan kolom pencarian tersebut pada formulir. Dengan kolom pencarian, pengguna dapat mengaitkan beberapa baris turunan tabel tersebut ke satu baris tabel induk .

Selain hanya menentukan bagaimana baris dapat terkait dengan baris lain, hubungan tabel 1:N juga menyediakan data untuk mengatasi pertanyaan berikut:

  • Saat saya menghapus baris, apakah ada baris yang terkait dengan baris tersebut juga akan dihapus?
  • Jika saya menetapkan baris, apakah semua baris yang terelasi dengan baris juga perlu ditetapkan ke pemilik baru?
  • Bagaimana cara menyederhanakan proses entri data saat saya membuat baris terkait baru dalam konteks baris yang sudah ada?
  • Bagaimana orang yang melihat sebuah baris dapat melihat baris-baris yang terkait?

Tabel juga dapat berpartisipasi dalam hubungan N:N (banyak ke banyak) di mana sejumlah baris untuk dua tabel dapat dikaitkan satu sama lain.

Memutuskan apakah akan menggunakan hubungan tabel atau koneksi

Hubungan tabel adalah metadata yang membuat perubahan di Dataverse. Hubungan ini memungkinkan kueri untuk mengambil data terkait secara efisien. Gunakan hubungan tabel untuk menentukan hubungan formal yang mendefinisikan tabel atau yang dapat digunakan oleh sebagian besar baris dalam tabel. Misalnya, kesempatan tanpa calon pelanggan tidak akan berguna. Tabel peluang di Dynamics 365 for Sales juga memiliki hubungan N:N dengan tabel pesaing, juga tersedia dengan Dynamics 365 for Sales. Ini memungkinkan beberapa pesaing ditambahkan ke peluang. Anda mungkin ingin mengambil data ini dan membuat laporan yang menunjukkan pesaing.

Ada jenis hubungan lain yang kurang formal antara baris yang disebut koneksi. Misalnya, mungkin berguna untuk mengetahui apakah dua kontak sudah menikah, atau mungkin mereka teman di luar kantor, atau mungkin kontak yang digunakan untuk bekerja untuk akun lain. Sebagian besar bisnis tidak akan menghasilkan laporan menggunakan informasi semacam ini atau mengharuskannya dimasukkan, jadi mungkin tidak berguna untuk membuat hubungan tabel. Informasi selengkapnya: Mengonfigurasi peran koneksi

Jenis hubungan tabel

Saat Anda melihat hubungan di Power Apps, Anda mungkin berpikir bahwa ada tiga jenis hubungan tabel. Sebenarnya, hanya terdapat dua jenis yang ditampilkan di tabel berikut.

Jenis Relasi Description
1:N (Satu ke Banyak) Hubungan tabel di mana satu baris tabel untuk tabel Utama dapat dikaitkan dengan banyak baris tabel Terkait lainnya karena kolom pencarian pada tabel terkait.

Saat menampilkan baris tabel utama, Anda bisa melihat daftar baris tabel terkait yang terkait dengannya.

Di portal Power Apps, Tabel saat ini mewakili tabel utama.
N:N (Banyak ke Banyak) Hubungan tabel yang bergantung pada tabel Hubungan khusus, kadang-kadang disebut tabel Intersect, sehingga banyak baris dari satu tabel dapat terkait dengan banyak baris tabel lain.

Saat melihat baris salah satu tabel dalam hubungan N:N, Anda bisa melihat daftar baris tabel lain yang terkait dengannya.

Jenis hubungan N:1 (banyak ke satu) ada di antarmuka pengguna karena perancang menunjukkan tampilan yang dikelompokkan menurut tabel. Hubungan 1:N sebenarnya ada di antara tabel dan merujuk ke setiap tabel sebagai tabel Utama/Saat Ini atau Tabel terkait. Tabel terkait, kadang-kadang disebut tabel anak , memiliki kolom pencarian yang memungkinkan penyimpanan referensi ke baris dari tabel utama, kadang-kadang disebut tabel induk . Hubungan N:1 hanyalah hubungan 1:N yang dilihat dari tabel terkait.

Perilaku hubungan tabel

Perilaku untuk tabel terkait penting karena membantu memastikan integritas data dan dapat mengotomatiskan proses bisnis untuk Anda.

Menjaga integritas data

Beberapa tabel ada untuk mendukung tabel lain. Mereka tidak dapat dipahami secara tersendiri. Mereka biasanya memiliki kolom pencarian yang wajib untuk dihubungkan ke tabel utama yang mereka dukung. Apa yang harus terjadi saat baris utama dihapus?

Anda dapat menggunakan perilaku hubungan untuk menentukan apa yang terjadi pada baris terkait sesuai dengan aturan untuk bisnis Anda. Informasi selengkapnya: Menambahkan perilaku hubungan tingkat lanjut

Otomatisasi Proses Bisnis

Misalnya, Anda memiliki penjual baru dan ingin menetapkan jumlah akun yang ada saat ini kepada penjual baru tersebut yang telah ditetapkan ke penjual lain. Setiap baris akun mungkin memiliki sejumlah aktivitas tugas yang terkait dengannya. Anda dapat dengan mudah menemukan akun aktif yang ingin Anda alihkan dan menetapkannya ke tenaga penjual baru. Tetapi apa yang harus terjadi untuk salah satu aktivitas tugas yang terkait dengan akun? Apakah Anda ingin membuka masing-masing tugas dan memutuskan apakah mereka juga harus ditetapkan ke penjual baru? Mungkin tidak. Sebaliknya, Anda dapat membiarkan relasi menerapkan beberapa aturan standar untuk Anda secara otomatis. Aturan ini hanya berlaku untuk baris tugas yang terkait dengan akun yang Anda menetapkan ulang. Pilihan Anda adalah:

  • Tetapkan kembali semua tugas aktif.
  • Tetapkan kembali semua tugas.
  • Jangan tetapkan kembali tugas apa pun.
  • Tugaskan ulang semua tugas yang saat ini ditugaskan kepada mantan pemilik akun.

Relasi dapat mengontrol bagaimana cara tindakan yang dilakukan pada baris untuk kaskade baris tabel utama ke catatan baris tabel.

Behaviors

Ada beberapa jenis perilaku yang dapat diterapkan ketika tindakan tertentu terjadi.

Perilaku Description
Kaskadekan yang Aktif Lakukan tindakan pada semua baris tabel terkait aktif.
Kaskadekan Semua Lakukan tindakan pada semua baris tabel terkait.
Tidak Ada yang Dikaskade Jangan lakukan apa pun.
Hapus Link Hapus nilai pencarian untuk semua baris terkait.
Batasi Cegah baris tabel utama dihapus saat baris tabel terkait ada.
Kaskadekan yang Dimiliki Pengguna Lakukan tindakan pada semua baris tabel terkait yang dimiliki oleh pengguna yang sama dengan baris tabel utama.

Tindakan

Ini adalah tindakan yang dapat memicu perilaku tertentu:

Column Description Opsi
Tugaskan Apa yang harus terjadi ketika baris tabel utama ditetapkan ke orang lain? Kaskadekan Semua
Kaskadekan yang Aktif
Milik Pengguna Kaskade
Tidak Ada yang Dikaskade
Atur ulang induk Apa yang seharusnya terjadi ketika nilai pencarian tabel terkait dalam relasi induk diubah?
Informasi selengkapnya: Hubungan tabel induk
Kaskadekan Semua
Kaskadekan yang Aktif
Milik Pengguna Kaskade
Tidak Ada yang Dikaskade
Bagi Apa yang harus terjadi saat baris tabel utama dibagikan? Kaskadekan Semua
Kaskadekan yang Aktif
Milik Pengguna Kaskade
Tidak Ada yang Dikaskade
Menghapus Apa yang harus terjadi saat baris tabel utama dihapus? Kaskadekan Semua
Hapus Link
Batasi
Batalkan berbagi Apa yang akan terjadi bila baris tabel utama dibatalkan untuk dibagi? Kaskadekan Semua
Kaskadekan yang Aktif
Milik Pengguna Kaskade
Tidak Ada yang Dikaskade
Penggabungan Apa yang harus terjadi saat baris tabel utama digabungkan? Kaskadekan Semua
Tidak Ada yang Dikaskade
Tampilan Rollup Apa perilaku yang diinginkan dari tampilan rollup yang terkait dengan hubungan ini? Kaskadekan Semua
Kaskadekan yang Aktif
Milik Pengguna Kaskade
Tidak Ada yang Dikaskade

Nota

Tindakan Tetapkan, Hapus, Gabungkan, dan Reparent tidak dijalankan dalam situasi berikut:

  • Jika baris induk asli dan tindakan yang diminta berisi nilai yang sama. Contoh: Mencoba memicu Penetapan dan memilih kontak yang sudah menjadi pemilik baris.
  • Mencoba melakukan tindakan pada baris induk yang telah menjalankan tindakan kaskade.

Saat menjalankan penetapan, alur kerja atau aturan bisnis apa pun yang saat ini aktif pada baris akan dinonaktifkan secara otomatis saat penugasan ulang terjadi. Pemilik baru dari baris harus mengaktifkan kembali alur kerja atau aturan bisnis jika ingin terus menggunakannya.

Relasi tabel induk

Setiap pasangan tabel yang memenuhi syarat untuk memiliki hubungan 1:N dapat memiliki beberapa hubungan 1:N di antara mereka. Namun biasanya hanya salah satu hubungan tersebut yang dapat dianggap sebagai hubungan tabel induk.

Relasi tabel induk adalah apa pun relasi tabel 1:N di mana salah satu pilihan kaskade di kolom tabel Induk berikut ini benar.

Tindakan Induk Bukan Induk
Tugaskan Kaskadekan Semua
Milik Pengguna Kaskade
Kaskadekan yang Aktif
Tidak Ada yang Dikaskade
Menghapus Kaskadekan Semua RemoveLink
Batasi
Atur ulang induk Kaskadekan Semua
Milik Pengguna Kaskade
Kaskadekan yang Aktif
Tidak Ada yang Dikaskade
Bagi Kaskadekan Semua
Milik Pengguna Kaskade
Kaskadekan yang Aktif
Tidak Ada yang Dikaskade
Batalkan berbagi Kaskadekan Semua
Milik Pengguna Kaskade
Kaskadekan yang Aktif
Tidak Ada yang Dikaskade

Misalnya, jika Anda membuat tabel kustom baru dan menambahkan hubungan tabel 1:N dengan tabel akun tempat tabel kustom Anda adalah tabel terkait, Anda dapat mengonfigurasi tindakan untuk hubungan tabel tersebut untuk menggunakan opsi di kolom Orang Tua . Jika nanti Anda menambahkan hubungan 1:N lainnya pada tabel kustom Anda sebagai tabel acuan, Anda hanya dapat mengonfigurasi tindakan untuk menggunakan opsi di kolom Tidak Bersifat Parental.

Biasanya ini berarti bahwa untuk setiap pasangan tabel ada hanya relasi satu induk. Ada beberapa kasus di mana pencarian pada tabel terkait mungkin memungkinkan hubungan ke lebih dari satu jenis tabel.

Misalnya, jika tabel memiliki pencarian pelanggan yang dapat merujuk ke tabel kontak atau akun. Ada dua relasi tabel 1:N induk terpisah.

Tabel aktivitas apa pun memiliki sekumpulan hubungan tabel induk yang serupa untuk tabel yang dapat dikaitkan menggunakan kolom pencarian terkait.

Pembatasan pada perilaku yang dapat Anda atur

Karena relasi induk, ada beberapa batasan yang harus Anda ingat saat menentukan hubungan tabel.

  • Tabel kustom tidak boleh menjadi tabel utama dalam hubungan dengan tabel sistem terkait yang berantai. Ini berarti Anda tidak dapat memiliki hubungan dengan tindakan apa pun yang diatur ke Cascade All, Cascade Active, atau Cascade User-Owned antara tabel kustom utama dan tabel sistem terkait.
  • Tidak ada hubungan baru yang dapat mengatur tindakan apa pun ke Cascade All, Cascade Active, atau Cascade User-Owned jika tabel terkait dalam hubungan tersebut sudah ada sebagai tabel terkait dalam hubungan lain yang memiliki tindakan apa pun yang diatur ke Cascade All, Cascade Active, atau Cascade User-Owned. Hal ini akan mencegah relasi yang menghasilkan sebuah relasi multi-induk.

Pembersihan hak akses yang diwariskan

Menggunakan Reparent dan Berbagi sebagai perilaku berjenjang sangat membantu ketika Anda ingin memberikan akses ke baris di seluruh tabel terkait. Tetapi mungkin ada perubahan dalam proses atau desain yang memerlukan perubahan pengaturan perilaku berjenjang.

Saat hubungan tabel menggunakan Reparent atau Share, dan perilaku berjenjang diubah menjadi Cascade None, hubungan tabel mencegah perubahan izin baru berjenjang ke tabel anak terkait. Selain itu, izin warisan yang diberikan sementara perilaku berantai aktif harus dicabut.

pembersihan hak Akses warisan adalah pekerjaan sistem yang membersihkan warisan hak akses warisan lama yang tersisa setelah perilaku berantai berubah ke Jangan kaskade satu pun. Pembersihan ini tidak memengaruhi pengguna mana pun yang secara langsung diberikan akses ke tabel, tetapi menghapus akses dari siapa pun yang menerima akses hanya melalui pewarisan.

Ini adalah cara kerja pembersihan hak akses yang diwariskan:

  1. Mengidentifikasi dan mengumpulkan semua tabel yang berada dalam relasi kaskade dengan induk diperbarui.
  2. Mengidentifikasi dan mengumpulkan pengguna yang diberikan akses ke tabel terkait melalui akses yang diwariskan.
  3. Memeriksa pengguna yang diberi akses langsung ke tabel terkait dan menghapusnya dari koleksi.
  4. Menghapus akses warisan untuk pengguna yang dikumpulkan pada tabel yang dikumpulkan.

Setelah pembersihan berjalan, pengguna yang dapat mengakses tabel terkait hanya karena fitur kaskade tidak lagi dapat mengakses baris, memastikan keamanan yang lebih besar. Ada kasus di mana pembersihan mungkin tidak berhasil. Pelajari selengkapnya tentang cara membersihkan akses yang diwariskan

Lihat juga

Memantau pekerjaan sistem
Membuat dan mengedit hubungan 1:N (satu ke banyak) atau N:1 (banyak ke satu)
Membuat hubungan tabel Banyak ke banyak (N:N)