Fungsi dasar yang terimplementasi secara umum pada Qorebase, selain dari fungsi pembuatan table dan fields.
Roles Management
Pengelolaan roles atau hak akses yang akan digunakan pada setiap aplikasi dapat diatur di Qore Data, secara default akan terdapat role Admin, Public, & User.
Untuk mengakses hal tersebut Editor dapat menekan ikon Settings pada tabel “users”.
Editor dapat menambahkan role sesuai dengan kebutuhan. Setiap role akan memiliki Unique ID yang akan digunakan saat menetapkan role pada User yang terdaftar.
Role Based Access Control (RBAC)
Manajemen akses di setiap role diatur berdasarkan fungsi CRUD pada sebuah tabel. Contohnya, role User mendapatkan akses select pada tabel “users”, maka pengguna dengan role User tersebut dapat mengakses halaman atau Component yang menggunakan tabel “users” yang ada pada aplikasi.
Filtered access RBAC
Dalam pemberian akses terhadap data, Editor dapat mengatur melalui checkbox.
Field dapat difilter menggunakan user variable seperti {{user.id}}
Ataupun filter menggunakan data statik.
Klik tombol “Apply filter” untuk menyimpan konfigurasi filter. Dengan menggunakan filter, User dengan role tersebut hanya dapat melihat data yang telah di filter pada aplikasi.
Auto Generated ERD
Auto Generated ERD dapat di akses memalui Navigation Bar. Fungsi ini untuk mendukung dokumentasi Editor.
Qore Data menyediakan fitur ERD Auto Generation berdasarkan relasi yang dibuat antara tabel. Relasi yang tersedia pada Qore Data adalah One-to-Many dan Many-to-Many. Untuk relasi One-to-One Editor dapat membuat Junction Table.
API Docs
Dokumentasi API untuk Qore Data dapat diakses pada Navigation Bar.
API Docs akan menampilkan API-API yang tersedia untuk memanipulasi data dengan kode eksternal. Berikut adalah tampilan API Docs untuk Qore Data suatu project:
Apps Authentication
Menu ini merupakan pengaturan untuk akses yang dapat digunakan pada aplikasi yang dibangun. Secara default, metode yang digunakan adalah “username & password”.
Tables
Data yang tersimpan pada Qore Data akan disimpan dan ditampilkan ke dalam bentuk tabel.
Create Table
Untuk memulai membuat tabel, Editor dapat membuka aplikasi pada project dan membuka bagian Data. Lalu, navigasi ke bagian kiri atas dan klik ikon “+”. Klik pilihan “Add table” dan pilih tipe tabel yang akan dibuat. Editor dapat memilih tipe tabel antara berikut:
Serial Primary Key
UUD Primary Key
String Primary Key
Features
Import & Export Data
Di setiap Navigation Bar pada setiap Tabel memiliki menu untuk import dan export.
Import
Import berfungsi untuk memindahkan data dari file eksternal dengan format CSV. Sebelum melakukan import, pastikan nama kolom pada tabel di Qore Data sama dengan tabel pada file CSV.
Lalu, pada tabel Qore Data tekan tombol “Import CSV”.
Pop-up akan timbul dan tekan tombol “Browse” untuk memilih file CSV yang ingin di import tadi.
Setelah memilih file CSV, Editor dapat menekan tombol “Select”.
Pilih kolom pada CSV yang ingin di-import dan tekan tombol “Upload” untuk masukan data.
Dalam proses masukan data, Qore Data akan menunjukkan progresnya. Editor dapat membatalkan dengan menekan tombol “Abort”.
Jika sudah berhasil, Qore Data akan menampilkan hasil dari import-nya dan Editor dapat menekan tombol “Finish” untuk melanjutkan.
Berikut hasil tabel dari import:
Export Data
Selain itu, tabel juga dapat di-export menjadi file eksternal. Fungsi ini dapat di akses pada tombol “Export” di Navigation Bar tabel yang ingin di-export.
Tabel-tabel pada Qore Data dapat di-export ke format Spreadsheet dan CSV.
Shown Fields & Sort
Data tabel-tabel Qore Data dapat sort dan ditampilkan atau disembunyikan sesuai dengan kebutuhan.
Untuk menentukan kolom apa saja yang ingin di tampilkan dan tidak, Editor dapat menekan tombol “Shown Field” pada pojok kanan atas setiap tabel yang ada.
Lalu, mencentang nama kolom yang ingin ditampilkan. Selain itu, pada tombol “Shown Field” Editor juga dapat menarik atau drag nama kolom ke urutan yang diinginkan. Namun, pengurutan ini hanya dapat dilakukan pada tipe Table Grid View.
Filter
Qore Data dapat di-filter sesuai dengan kebutuhan Editor agar data yang ditampilkan lebih relevan.
Editor dapat membuka filter dengan menekan tombol “Filter” di kanan pojok atas.
Untuk menambah filter, Editor dapat menekan tombol “Add filter” pada pop-up yang tampil.
Filter akan bertambah sesuai berapa banyak yang diinginkan.
Variasi jenis kolom dan aksi yang dapat dilakukan:
BUAT TABLE UNTUK SETIAP JENIS KOLOM DI FILTER
Kolom yang sudah digunakan untuk di filter, tidak dapat digunakan kembali pada filter.
Filter memiliki konfigurasi ANY atau ALL, konfigurasi tersebut dapat di akses pada filter.
Apabila menggunakan Any, data akan muncul apabila satu kondisi terpenuhi. Sedangkan penggunaan konfigurasi All, data akan muncul apabila semua kondisi terpenuhi.
Apabila ada penggunaan kolom yang sama dapat menggunakan Filter Group dengan menekan tombol “Add filter group” pada pojok kiri bawah filer.
Lalu, Editor dapat memilih kolom yang sama seperti group sebelumnya untuk di filter.
Filter Group memiliki konfigurasi OR atau AND,
Apabila menggunakan Any, data akan muncul apabila satu kondisi terpenuhi. Sedangkan penggunaan konfigurasi All, data akan muncul apabila semua kondisi terpenuhi.
Di akhir proses Editor perlu untuk menyimpan konfigurasi dengan menekan tombol “Apply Filter”.
Apabila konfigurasi ini dilakukan pada Master Table, maka editor akan menyimpan konfigurasi ini pada Grid View Table. Dikarenakan Filter tidak dapat dilakukan pada Master Table.
Lalu, pop-up akan muncul sebagai konfirmasi. Editor dapat menekan tombol “Save modification as a new grid” untuk menyimpan.
Akan diminta untuk menulis nama Grid Table tersebut. Tekan tombol “Create” bila sudah menulis nama.
Jika sudah selesai, maka Table dengan filter sebelumnya telah tersimpan pada Table Grid tersebut. Jika ingin mengakses data, maka melalui Table Grid.
Sort
Sort dapat diurutkan dengan melakukan drag and drop, konfigurasi ini secar otomatis di implementasi tanpa menyimpan konfigurasi, apabila sort dilakukan pada Master Table, tidak akan tersimpan. Untuk menyimpan konfigurasi sorting dapat dilakukan di Grid View Table.
Sort dapat dipilih secara Ascending / Descending atau A - Z / Z - A atau untuk tipe data tanggal, dapat dipilih secara Oldest First / Newest First.
Parameter
Parameter dapat dibuat dengan cara menekan tombol parameter, kemudian add parameter
Parameter memiliki Nama, Tipe dan Nilai Dasar.
Tipe yang dapat digunakan adalah
tipe Inferred column (disable)
View dan Query memiliki parameter yang memudahkan mengubah on-the-fly filter atau sql query sesuai dengan kebutuhan
parameter dapat dipanggil pada field setting dengan cara, menggunakan {{nama_param}} pada normal field, atau menggunakan params.namaparam apabila menggunakan field formula. contoh penggunaan ada pada gambar di bawah
Penggunaan parameter pada query table dapat diakses pada kode SQL menggunakan prefiks titik dua atau colon (:)
Table
Tabel menyimpan data dan menyediakan antarmuka grafis (GUI) yang memudahkan untuk melakukan manipulasi data. Secara default, tabel baru akan memiliki kolom-kolom berikut:
(Text) name
(Text) description
(DateTime) created_at
(DateTime) updated_at
(Integer / Text) id
Kolom id merupakan primary keys tabel. Tipe primary keys tabel dapat dipilih ketika membuat tabel, berikut adalah tipe yang tersedia
Catatan: Kolom paling kiri bukan nilai id suatu baris, angka tersebut hanya untuk menunjukan urutan data. Untuk mengecek nilai id suatu baris dapat menggunakan Copy ID seperti berikut
Query
Selain Table, terdapat Query yang dapat melakukan operasi SQL dengan tabel-tabel yang ada pada Qore Data. Query dapat dibuat dengan kode SQL secara langsung atau fitur query editor yang dimiliki oleh Qore Data. Query dapat mengambil row dalam jumlah yang tidak terbatas sehingga jumlah data yang diambil akan dapat disesuaikan dengan LIMIT pada raw SQL atau menu row limit pada query editor
Raw SQL
Seperti namanya, Query akan mengeksekusi kode SQL secara langsung dan menampilkan hasil SQL pada tabel. Backend Qore Data menggunakan PostgreSQL, pastikan kode tidak mengandung fitur yang tidak disupport oleh PostgreSQL.
Query Raw SQL memiliki support untuk parameter pada kode SQL. Tambahkan parameter pada tombol parameter yang berada dipojok kanan atas tabel hasil
Berikut adalah contoh Query menggunakan Raw SQL & Parameter
Gunakan klausa LIMIT dan OFFSET untuk membatasi jumlah Query yang diambil dalam satu kali proses query. Kedua klausa dapat ditambahkan pada akhir query (<Query SQL> ... LIMIT x OFFSET y) dengan x sebagai jumlah row yang diambil dan y adalah seberapa banyak row awal yang dilewati sebelum membaca x row.
Query Editor
Qore Data menyediakan fitur query editor untuk mempermudah pembuatan Query. Dengan query editor, kode SQL dapat dibuat menggunakan UI tanpa melakukan koding secara manual
View
View merupakan fitur Qore Data untuk melihat data tabel dari pandangan yang berbeda. Untuk memulai, navigasi ke bagian kiri dan hover tabel yang ingin dibuat View. Klik tombol (+) pada sebelah tabel untuk memilih tipe View yang akan dibuat
Grid View
Mirip seperti View pada SQL, Grid View merupakan View pada Qore Data. Grid View akan menampilkan data tabel dengan aturan-aturan tampilan yang independen dari sumber tabel. Aturan-aturan tampilan yang dapat dikonfigurasi dan disimpan pada Grid View adalah:
Filter
Sort
Shown Fields
Parameter
Parameter dapat digunakan pada filter seperti berikut, penggunaan parameter dapat dilihat pada bagian parameter
Berikut adalah contoh Grid View dengan Filter & Parameter
Insight View
Insight View menyediakan fitur agregasi data untuk mempercepat proses mendapatkan Insight dari data yang dimiliki. Terdapat dua tipe Insight, Group By dan Time Series.
Berikut adalah contoh untuk Insight Group By
Berikut adalah contoh untuk Insight Time Series
Event Trigger
Event Trigger memudahkan integrasi Qore Data dengan aplikasi eksternal dengan menyediakan Webhook. Header dan Body request webhook dapat dikustomisasi sesuai dengan kebutuhan aplikasi eksternal.
Event yang bisa diperoleh dari database adalah ketika INSERT, UPDATE & DELETE.
Fields
Field System
Setiap tabel pada Qore Data memiliki kolom yang juga disebut Field. Qore Data memiliki banyak tipe Field yang dapat dikustomisasi sesuai dengan kebutuhan. Setiap tipe Field memiliki konfigurasi yang berbeda-beda. Field juga disebut kolom.
Field Name & Description
Semua field wajib memiliki nama. Deskripsi field dapat digunakan untuk memperjelas tujuan dari field, deskripsi field bersifat opsional.
Unique & Default Value
Fitur unique & default value memudahkan untuk menghindari field yang kosong dan pembuatan baris dalam skala besar.
Tipe data yang menyediakan fitur unique values adalah
Text
Tipe data yang menyediakan fitur default values adalah
Text
Integer
Float
Select
Boolean
JSON
Rich Text
Point
Linestring
Polygon
Update & Delete Fields
Untuk mengubah field, klik tombol panah pada sisi kanan field yang ingin diubah.
Basic Types
Qore Data menyediakan tipe-tipe field yang umum digunakan pada sistem database.
Text
Kolom Text menyimpan sebuah string. Kolom text dapat diedit dengan klik field yang ingin diedit.
Kolom Text akan disimpan PostgreSQL dengan tipe data Text yang tidak memiliki batasan panjang.
Kolom Float menyimpan bilangan floating point dengan arbitrary precision. Rentang nilai kolom ini bergantung dengan setting precision dan scale. Setting default untuk precision adalah 8 dan scale adalah 2.
Backend Qore Data menyimpan kolom float dalam tipe data decimal PostgreSQL. Detail untuk tipe data decimal dapat dicek pada dokumentasi PostgreSQL.