Form
Tabs
Membagi form panjang ke beberapa tab
Tabs digunakan untuk membagi form panjang ke beberapa tab, misalnya data perusahaan, kontak, dan rekening vendor. Pengguna mengisi satu tab dalam satu waktu. Komponen ini ada di grup Layout pada palette.
Mapping ke Engine
Komponen ini tidak menyimpan process variable. Setiap field di dalam tab tetap menjadi process variable sendiri di tingkat atas payload, misalnya {"company_name": "CV Mitra Kantor", "pic_name": "Dewi Kartika"}. Key Tabs tidak ikut dikirim.
Properties
- Name: Nama Tabs dalam dua bahasa (EN & ID). Dipakai untuk mengenali Tabs di builder. Nama hanya tampil ke pengguna bila "Show the name above the tabs" aktif.
- Key: Identitas node di dalam form, bukan process variable. Field di dalam tab memakai key masing-masing.
- Tabs: Daftar tab. Tab bisa ditambah lewat Add tab, diurutkan naik turun, dan dihapus. Jumlah tab 2 sampai 6 ("2–6 tabs"). Saat Tabs diletakkan di kanvas, isinya 2 tab.
- Tab name: Nama tab dalam EN & ID. Key tab dibuat otomatis dari nama EN, misalnya "Bank account" menjadi
bank_account. - Fields: Field di dalam tab, ditambah lewat Add field. Tipe yang tersedia hanya Text, Number, Textarea, Date, dan Dropdown. Tiap field punya Name (EN & ID), Key, Type, dan isian sesuai tipe (Placeholder, Format
Plain number/Rupiahdan Minimum value untuk Number, daftar opsi untuk Dropdown). Field terakhir di sebuah tab tidak bisa dihapus. - Required: Diatur per field di bagian VALIDATION milik field itu. Field wajib dicek saat Complete Task, juga di tab yang belum pernah dibuka.
- Tab name: Nama tab dalam EN & ID. Key tab dibuat otomatis dari nama EN, misalnya "Bank account" menjadi
- Open first: Tab yang terbuka saat form dibuka.
- Tab style:
UnderlineatauPills. - On phones: Tampilan di layar di bawah 640 px.
Scrolling tabsmembuat deretan tab bisa digeser.Dropdownmengganti deretan tab dengan pilihan dropdown. - Show the name above the tabs: Menampilkan Name di atas deretan tab.
- Mark finished tabs: Menampilkan tanda centang pada tab yang semua field wajibnya sudah terisi. Tab tanpa field wajib tidak pernah diberi centang.
- Hide If: Ekspresi FEEL untuk menyembunyikan komponen. Komponen disembunyikan ketika ekspresi bernilai
true, dievaluasi ulang saat nilai field lain berubah. - Validation: Tabs tidak punya Required. Tab Validation hanya berisi catatan bahwa Required diatur per field.
Field juga bisa diseret dari palette ke tab yang sedang terbuka di kanvas. Tipe selain lima tipe di atas ditolak, begitu juga Repeater dan Tabs lain.
Masalah berikut menonaktifkan Save Changes dan tampil sebagai pesan di atas daftar tab:
- "Every tab needs an English name": nama EN sebuah tab kosong.
- "Two tabs share the key “contact”": dua tab menghasilkan key yang sama.
- "Another field in this container uses this key": dua field di Tabs yang sama memakai key yang sama. Pesan diawali nama tab dan nama field.
- "Another field in this form uses this key": key field sudah dipakai field lain di luar Tabs. Key field harus unik di seluruh form.
- "Use lowercase letters, numbers and _ and start with a letter": format key field tidak valid.
Perilaku saat diisi
- Pindah tab tidak menghapus isian. Tab yang sedang terbuka tidak disimpan ke payload maupun draft.
- Complete Task mengecek field wajib di semua tab. Selama masih ada masalah, form tidak dikirim ke server.
- Tab bermasalah diberi angka merah. Di atas tab tampil ringkasan, misalnya "4 problems in 2 tabs — tabs with a red count need attention." Bila tab yang terbuka tidak bermasalah, tab bermasalah pertama dibuka otomatis.
- Pada On phones =
Dropdown, angka masalah tampil di opsi dropdown. - Saat form read-only atau disabled, tab tetap bisa dipindah. Field mengikuti kondisinya.
- Draft menyimpan isian semua tab. Saat draft dibuka lagi, tab yang terbuka adalah tab Open first.
- History task menampilkan field tab sebagai variabel biasa.
