Jenis Field
Ada berbagai jenis fieldtypes yang tersedia. Masing-masing memiliki kegunaan tersendiri dan dapat digunakan untuk memasukkan dan menyimpan berbagai jenis data dalam dokumen. Fieldtypes digunakan untuk merender komponen di desk maupun di web forms.

Data
Field data akan menjadi field teks sederhana. Ini memungkinkan Anda memasukkan nilai hingga 140 karakter, menjadikannya tipe field yang paling umum.
Anda dapat mengaktifkan validasi untuk jenis data berikut:
Nama
Email
Telepon
URL
dengan mengatur opsi menjadi "Nama", "Email", "Telepon" atau "URL" sesuai.

Link
Field Link terhubung ke master lain dari mana ia mengambil data.
Untuk mengatur field sebagai Link, masukkan nilai seperti di bawah ini.
Label: Label yang diinginkan yang ingin ditampilkan pengguna di formulir.
Tipe: Atur sebagai 'Link'
Nama: Nama yang diinginkan untuk field
Opsi: Masukkan nama DocType yang terhubung dengan field

Menambahkan Filter ke Field Link
Filter dapat diterapkan dengan cara yang ramah pengguna pada Field Link menggunakan Form Builder.
Anda akan melihat ikon tindakan di semua Field Link dalam Doctype, yang memberi Anda opsi untuk memilih filter yang ingin Anda terapkan.
Misalnya, dalam kasus "Company", mengklik ikon akan membuka kotak dialog di mana Anda dapat memilih filter yang diinginkan.

Setelah Anda membuat pilihan dan mengklik terapkan, hasil yang difilter akan ditampilkan sesuai.

Jika Anda menyesuaikan formulir dan memutuskan untuk mengubah filter, tombol "Reset To Default" akan muncul. Mengklik ini akan mengembalikan filter ke keadaan semula. Namun, penting untuk dicatat bahwa filter apa pun di "Customize Form" akan mengesampingkan filter default

Dukungan Eval
Pengguna dapat menambahkan filter dinamis berdasarkan beberapa nilai dari formulir.
Penggunaan:
eval: doc.fieldname
atau
eval: doc.fieldname1 + doc.fieldname2

Untuk Child Tables:
2 jenis filter dapat ditambahkan.
Dari Baris Tabel Anak: untuk menambahkan filter ini gunakan
doc.child_table_field_nameDari Dokumen Induk: untuk menambahkannya gunakan
parent.parent_doc_fieldname

ekspresi yang ditambahkan setelah "eval:" dievaluasi dan nilainya dikembalikan.
Dynamic Link
Field Dynamic Link adalah field yang dapat mencari dan menampung nilai dari DocType mana pun. Mari kita pertimbangkan sebuah contoh untuk mempelajari cara kerja field Dynamic Link.
Saat membuat Opportunity atau Quotation, kita harus secara eksplisit menentukan apakah itu untuk Lead atau Customer. Berdasarkan pilihan kita (Lead/Customer), field link lain akan muncul di mana kita dapat memilih Lead atau Customer yang sebenarnya.
Jika Anda mengatur field sebelumnya sebagai Dynamic Link, di mana kita memilih Lead atau Customer yang sebenarnya, maka field link yang akan datang akan secara otomatis terhubung ke master yang dipilih di field pertama, yaitu Leads atau Customers. Oleh karena itu kita tidak perlu menyisipkan field link terpisah untuk Customer dan Lead.
Di bawah ini adalah langkah-langkah untuk memasukkan Custom Dynamic Field. Sebagai contoh, kita akan memasukkan Dynamic Link Field di Journal Entry.
Langkah 1: Masukkan Field Link untuk DocType
Pertama, kita akan membuat field link yang akan terhubung ke DocType.

Dengan DocType yang disebutkan di field Opsi, kita maksudkan DocType induk. Jadi, seperti halnya Quotation adalah satu DocType, yang memiliki banyak Quotation di bawahnya. Dengan cara yang sama, DocType juga merupakan DocType yang memiliki Sales Order, Purchase Order, dan DocTypes lain yang dibuat sebagai catatan DocType.
DocType
---- Sales Order
---- Purchase Invoice
---- Quotation
---- Sales Invoice
---- Employee
---- Work Order
.. dan seterusnya.
Jadi menghubungkan field ini dengan DocType induk akan mencantumkan semua catatan DocType.

Langkah 2: Masukkan Field Dynamic Link
Jenis field khusus ini akan menjadi "Dynamic Link". Di field Opsi, nama field link DocType akan disebutkan.

Field ini akan memungkinkan pemilihan id dokumen, berdasarkan nilai yang dipilih di field link DocType. Misalnya, jika kita memilih Sales Order di field sebelumnya, field Dynamic Link akan mencantumkan semua id Sales Orders.

Kustomisasi opsi di field link DocType
Secara default, field link DocType akan menyediakan semua formulir/docTypes untuk dipilih. Jika Anda ingin field ini menampilkan docTypes tertentu dalam hasil pencarian, Anda perlu menulis Custom Script untuk itu.
Check
Ini akan memungkinkan Anda untuk memiliki checkbox di sini. Anda dapat mengatur nilai Default ke 1 dan akan dicentang secara default.

Select
Menggunakan tipe field "Select", Anda dapat membuat field drop-down. Anda dapat menentukan semua nilai yang dapat dipilih di field Opsi, masing-masing nilai dipisahkan oleh baris baru.
Salah satu nilai yang dapat dipilih dapat disalin ke field Default. Nilai ini kemudian akan dipilih secara default di formulir baru.
Jika Anda mengaktifkan checkbox Sort Options, nilai akan ditampilkan dalam urutan abjad (dalam bahasa pengguna).
Screenshot berikut menunjukkan bagaimana field "Select" dapat didefinisikan dalam DocType atau melalui Customize Form:

Dan begini cara akan dirender dalam formulir baru:

Table
Dengan field "Table", Anda dapat merender DocType lain sebagai tabel anak dalam formulir Anda.
Pertama, Anda harus memilih atau menentukan DocType yang memiliki Checkbox Is Child Table diaktifkan. Kemudian Anda dapat menambahkan field bertipe "Table" dan menempelkan nama DocType tabel anak Anda ke field Opsi.
Misalnya, ERPNext mendefinisikan DocType anak yang disebut "Purchase Receipt Item" dengan Is Child Table diaktifkan:

DocType lain yang disebut "Purchase Receipt" memiliki field bertipe "Table", dengan Opsi yang disetel ke docType anak di atas "Purchase Receipt Item":

Akhirnya, tabel anak akan dirender di formulir Purchase Receipt:

Attach
Field Attach memungkinkan Anda untuk mencari file dari File Manager dan melampirkannya di sini.

Attach Image
Attach Image adalah field di mana Anda dapat melampirkan gambar dalam format jpeg, png, dll. Ini menjadi gambar yang mewakili DocType tertentu. Misalnya, Anda mungkin ingin gambar Item di DocType-nya, Anda dapat memilih field Anda sebagai Attach Image Field.
Text Editor
Text Editor adalah field teks dan merender editor WYSIWYG untuk input. Ini memiliki berbagai opsi pemformatan teks.

Date
Field ini akan memungkinkan Anda memasukkan Tanggal di field ini.

Date and Time
Field ini akan memberikan Anda pemilih tanggal dan waktu. Tanggal dan waktu saat ini (seperti yang disediakan oleh komputer Anda) akan disetel secara default.
Barcode
Dalam field ini, Anda dapat menentukan field sebagai Barcode yang memungkinkan Anda memasukkan nomor Barcode. Setelah Anda melakukannya, Barcode akan otomatis dihasilkan berdasarkan nomor tersebut.

Button
Field ini memungkinkan Anda menempatkan tombol dalam dokumen. Ini dapat digunakan untuk melakukan tindakan tertentu seperti mempublikasikan posting blog, memicu tindakan, dll.
Code
Fieldtype ini dapat digunakan untuk memasukkan code. Sebuah code editor dirender di form dokumen. Secara opsional, Anda dapat menyediakan bahasa dalam opsi fieldtype untuk mengaktifkan penyorotan sintaks.
Anda dapat mengaktifkan validasi sintaks dasar dengan mengatur field "Option" dengan salah satu dari berikut ini (perhatikan bahwa nilai-nilai ini peka terhadap huruf besar-kecil):
Javascript atau JS
Python atau Py
PythonExpression
HTML
CSS
Markdown
SCSS
JSON
Golang
Go
Jinja
Misalnya, di bawah ini adalah field Code dengan opsi yang disetel ke Python:
Python (untuk skrip)
PythonExpression (untuk ekspresi satu baris sederhana yang harus dievaluasi ke suatu nilai) Misalnya, kondisi Assignment Rule
Contoh perbedaan antara Python dan PythonExpression:
variable = 42adalah kodePythonyang valid tetapi bukanPythonExpressionyang valid karena penugasan tidak mengevaluasi nilai apa pun.variable == 42adalah kodePythonyang valid danPythonExpressionyang valid karena ekspresi dapat dievaluasi menjadi suatu nilai.

Color
Ini akan memungkinkan pengguna memasukkan warna melalui pemilih warna yang dirender atau langsung memasukkan warna heksadesimal.

Column Break
Ini adalah field 'meta' yang tidak menyimpan data input apa pun tetapi dapat digunakan untuk menunjukkan jeda kolom dalam tampilan dokumen atau formulir.
Misalnya,

akan menghasilkan:

Currency
Field Currency memegang nilai numerik, seperti Harga Item, Jumlah, dll. Field Currency dapat memiliki nilai hingga enam tempat desimal. Juga, Anda dapat menampilkan simbol mata uang untuk field currency.
Float
Field Float membawa nilai numerik, hingga sembilan tempat desimal.
Geolocation
Field Geolocation akan menampilkan tampilan peta di mana Anda dapat menggambar poligon, garis, dan titik. Data disimpan sebagai GeoJSON feature_collection.
Jika Anda menambahkan field Geolocation dengan nama field "location" yang tepat, Anda akan mendapatkan tampilan peta tambahan (setara dengan tampilan daftar, tetapi di peta). Omong-omong, ini juga berlaku jika Anda membuat dua field terpisah bernama "latitude" dan "longitude".
Catatan: Frappe menggunakan perpustakaan "Leaflet" yang menyimpan koordinat sebagai [latitude, longitude] yang merupakan kebalikan dari apa yang biasanya dilakukan GeoJSON.
HTML
Ini akan merender konten yang dimasukkan di Opsi sebagai HTML di formulir dokumen atau halaman tampilan. Berikut ini contohnya:

akan menghasilkan:

Image
Field Image akan merender file gambar yang dipilih di field lampiran lainnya.
Untuk field Image, di bawah Opsi (di DocType), nama field harus diberikan tempat file gambar dilampirkan. Dengan mengacu pada nilai di field tersebut, gambar akan menjadi referensi di field Image.

akan menghasilkan:

Int (Integer)
Field integer menyimpan nilai numerik, tanpa tempat desimal.
Small Text
Field Small Text membawa konten teks dan memiliki batas karakter lebih banyak daripada field Data.
Long Text
Anda dapat menentukan field Anda sebagai Long Text Field ketika Anda ingin memasukkan data dengan batas karakter tidak terbatas.
Text
Jenis field ini memungkinkan Anda menambahkan teks di field tersebut. Batas karakter di field Small text, Long text, dan Text akan ditentukan berdasarkan Sistem Manajemen Basis Data Relasional.
Markdown Editor
Field ini akan memungkinkan Anda menambahkan teks dalam markdown. Tipe field ini juga menyediakan tampilan Preview dari HTML yang dirender:

saat pratinjau diklik:

Password
Field password akan dienkripsi dan tidak akan terlihat di formulir atau dalam proses pengambilan data standar. Jenis field ini dapat digunakan untuk menyimpan data sensitif seperti kata sandi, frase sandi, kunci rahasia, dll.
Untuk mendekripsi field password, fungsi get_password(field_name) perlu digunakan pada Dokumen.
#Contoh Script Python untuk mengambil nilai token yang didekripsi
token = frappe.get_doc("WhatsApp Settings").get_password("token")Percent
Anda dapat mendefinisikan field sebagai field Persentase yang di latar belakang akan dihitung sebagai persentase.
Rating
Field ini dapat digunakan untuk menampilkan input peringkat bintang interaktif. Jumlah bintang default yang ditampilkan adalah 5, namun ini dapat dengan mudah diubah dengan memasukkan angka mulai dari 3 hingga 10 di field opsi untuk field rating tersebut.

Anda juga dapat memberikan peringkat setengah misalnya 3.5 dari 5.

Read Only
Field Read Only akan membawa data yang diambil dari formulir lain yang tidak dapat diedit. Anda harus mengatur Read Only sebagai tipe field jika sumber nilai sudah ditentukan.
Section Break
Section Break digunakan untuk membagi formulir menjadi beberapa bagian. Field apa pun yang mengikuti (dan sebelum Section Break lainnya) field Section Break akan menjadi bagian dari bagian baru ini.

Tab Break
Tab Break digunakan untuk membagi formulir menjadi beberapa tab. Field apa pun yang mengikuti hingga Tab Break berikutnya akan menjadi bagian dari tab baru ini.

Catatan: Jika tabel fields dari sebuah DocType tidak dimulai dengan Tab Break, Tab Break default bernama Details akan digunakan. Ini terjadi hanya jika DocType memiliki setidaknya satu Tab Break dalam tabel fields.
Signature
Anda dapat mendefinisikan field sebagai field Signature di mana Anda dapat menambahkan tanda tangan digital di field ini.
Tanda tangan elektronik dapat dibuat menggunakan tipe field Signature. Field ini memungkinkan Anda menulis tanda tangan di blok, seperti tanda tangan di kertas.
Untuk membuat tanda tangan elektronik, ikuti langkah-langkah berikut:
Buka DocType dan pergi ke Customise Form.
Di tampilan Form atau tabel Fields, buat field baru bernama Signature dan pilih Tipe Field sebagai Signature.


Klik pada Update.
Segarkan halaman dan masukkan tanda tangan Anda.

Table MultiSelect
Ini adalah kombinasi dari field tipe 'Link' dan 'Table'. Alih-alih tabel anak dengan tombol 'Add Row', dalam satu field beberapa nilai dapat dipilih.
Contoh: Menetapkan ToDo ke beberapa pengguna

Langkah 1: Buat Child DocType
Buat DocType baru, aktifkan kotak centang 'Is Child Table' dan 'Editable Grid' dan tambahkan field dengan tipe 'Link' seperti yang ditunjukkan di bawah ini.
Setel field link sebagai wajib. Pastikan field dalam tabel anak memiliki "In List View" dicentang.

Langkah 2: Tambahkan field dengan tipe 'Table MultiSelect'
Buat field dengan tipe 'Table MultiSelect' dan tambahkan DocType yang dibuat pada langkah pertama di 'options'.

Catatan: Field Table MultiSelect tidak dapat ditambahkan di Child DocTypes.
Sebagai gantinya, pertimbangkan untuk membuat DocType hubungan banyak-ke-banyak yang menghubungkan dua DocTypes induk bersama dengan field MultiSelect di DocType induk.
Time
Ini adalah field Time di mana Anda dapat mendefinisikan Waktu di field tersebut.
Duration
Anda dapat menggunakan field Duration jika ingin mendefinisikan rentang waktu.
Jika Anda tidak ingin melacak durasi dalam hitungan hari atau detik, Anda dapat mengaktifkan opsi "Hide Days" dan "Hide Seconds" masing-masing dalam Formulir Anda. Satu hari setara dengan 24 jam.
JSON
Ini menciptakan kolom tipe JSON di basis data Anda. Juga menambahkan penyorotan sintaks untuk kontrol Desk.