Tabel hierarki

Collection: TreeCommunity Edition+

Pengenalan

Tabel hierarki cocok untuk menyimpan data yang memiliki hubungan atasan-bawahan, seperti struktur organisasi, kategori produk, hierarki wilayah, direktori departemen, dan direktori basis pengetahuan. Tabel hierarki menggunakan struktur adjacency list untuk menyimpan hubungan induk-anak. Setiap record dapat menunjuk ke node induknya sendiri.

Tabel hierarki hanya dapat dibuat melalui halaman database utama. Database eksternal, sumber data REST API, dan sumber data NocoBase eksternal tidak mendukung pembuatan tabel hierarki.

Skenario penggunaan

Tabel hierarki cocok untuk skenario bisnis berikut:

  • Struktur organisasi perusahaan dan hierarki departemen
  • Kategori produk, direktori basis pengetahuan, dan direktori dokumen
  • Provinsi, kota, distrik, wilayah penjualan, dan hierarki titik layanan
  • Kategori BOM, kategori peralatan, dan kategori aset

Konfigurasi pembuatan

Di database utama, klik 「Create collection」, lalu pilih 「Tree collection」 untuk membuat tabel hierarki.

20240324143228

Konfigurasi pembuatan tabel hierarki pada dasarnya sama dengan tabel biasa.

KonfigurasiKeterangan
Collection display nameNama tabel yang ditampilkan di antarmuka, misalnya 「Struktur organisasi」「Kategori produk」「Hierarki wilayah」.
Collection nameNama identitas tabel yang digunakan untuk referensi internal seperti API, field relasi, izin, dan alur kerja.
InheritsPilih tabel induk yang ingin diwarisi. Hanya terlihat jika database utama menggunakan PostgreSQL.
CategoriesKategori tabel. Kategori hanya memengaruhi cara pengorganisasian di antarmuka pengelolaan tabel, bukan struktur tabel.
DescriptionDeskripsi tabel. Anda dapat menuliskan jenis data bertingkat yang disimpan tabel ini, pihak yang memeliharanya, dan halaman tempat tabel ini digunakan sebagai filter.
Preset fieldsField prasetel. Saat membuat tabel hierarki, disarankan untuk mempertahankan field sistem dan field bawaan tabel hierarki.

Field bawaan

Setelah dibuat, tabel hierarki biasanya berisi field bawaan berikut. parentId, parent, dan children digunakan untuk menyimpan hubungan hierarkis.

FieldNama fieldKeterangan
IDidField kunci utama default yang digunakan untuk mengidentifikasi satu record secara unik.
Waktu pembuatancreatedAtSecara otomatis mencatat waktu pembuatan record ini.
Dibuat olehcreatedBySecara otomatis mencatat pengguna yang membuat record ini.
Waktu pembaruanupdatedAtSecara otomatis mencatat waktu terakhir record ini diperbarui.
Diperbarui olehupdatedBySecara otomatis mencatat pengguna yang terakhir memperbarui record ini.
Parent IDparentIdMenyimpan ID node induk. Node akar biasanya kosong.
ParentparentField relasi banyak-ke-satu yang menunjuk ke node induk dalam tabel saat ini.
ChildrenchildrenField relasi satu-ke-banyak yang menunjukkan node anak dari node saat ini.
RuangspaceTersedia setelah plugin multi-ruang diaktifkan, dan digunakan untuk mengisolasi data berdasarkan ruang. Field ini tidak akan muncul jika multi-ruang tidak diaktifkan.

20240324143555

Perhatian

Hindari terbentuknya hubungan siklik dalam data tabel hierarki, misalnya node A memiliki B sebagai induk, sementara B kembali memiliki A sebagai induk. Hubungan siklik akan menyebabkan tampilan hierarki dan hasil filter menjadi tidak normal.

Field kunci utama

Seperti tabel biasa, tabel hierarki memerlukan field kunci utama. Field hubungan hierarkis mengaitkan ID node induk dengan record kunci utama dalam tabel yang sama.

Jika tabel hierarki tidak memiliki kunci utama, tetapkan 「Record unique key」 saat mengedit tabel. Jika tidak, beberapa blok halaman mungkin tidak dapat menampilkan atau mengedit record dengan benar, dan tampilan hierarki mungkin tidak dapat menemukan node secara stabil.

Penggunaan dalam konfigurasi halaman

Tabel hierarki dapat menggunakan sebagian besar blok data dari tabel biasa untuk melakukan operasi tambah, hapus, ubah, dan lihat. Selain itu, tabel ini juga dapat digunakan bersama kemampuan hierarki:

BlokKegunaan
Blok tabelMenampilkan record hierarkis untuk melihat dan mengelola struktur atasan-bawahan.
Blok formulirMenambahkan atau mengedit satu record node hierarkis.
Blok detailMelihat detail satu node hierarkis.
Blok filter hierarkiMemfilter blok data lain menggunakan struktur hierarki, biasanya untuk memfilter kategori, organisasi, wilayah, dan hierarki lainnya.

Edit konfigurasi

Dalam daftar tabel, klik 「Edit」 di sebelah kanan tabel hierarki untuk mengubah konfigurasi seperti nama tampilan tabel, kategori, deskripsi, mode pagination sederhana, dan 「Record unique key」.

Field hubungan induk-anak pada tabel hierarki biasanya tidak disarankan untuk dihapus atau diubah penggunaannya secara sembarangan. Jika perlu menyesuaikan struktur hierarki, ubah hubungan node induk langsung pada data record.

Menghapus tabel

Dalam daftar tabel, klik 「Delete」 di sebelah kanan tabel hierarki untuk menghapusnya.

Menghapus tabel hierarki akan menghapus metadata Collection, tabel data sebenarnya, dan data hubungan hierarkis dari tabel tersebut. Sebelum menghapus, pastikan terlebih dahulu apakah blok halaman, blok filter hierarki, field relasi, izin, alur kerja, dan API masih bergantung padanya.

Peringatan

Tabel hierarki sering digunakan sebagai kondisi filter untuk blok lain. Setelah tabel hierarki dihapus, blok filter hierarki terkait dan konfigurasi halaman yang bergantung pada hierarki kategori tersebut mungkin tidak lagi berfungsi.

Tautan terkait

  • Tabel biasa — Lihat konfigurasi umum dan cara menggunakan blok
  • Blok tabel — Mengaktifkan tampilan tabel hierarki dalam tabel
  • Blok filter hierarki — Memfilter data menggunakan struktur hierarki
  • Multi-ruang — Pelajari field ruang dan kemampuan isolasi ruang