Skip to main content

Membuat Pengaturan Sistem Sendiri Di Access - Membuat Form (Bagian 4)

Seperti telah dijelaskan di bagian terdahulu. Pengaturan sistem yang akan kita buat mempunyai keunikan tersendiri. Keunikan itu terletak pada perancangan form yang akan kita buat berikut ini.

Jika umumnya, kita membuat form dengan menggunakan field sebagai bagian dari control form, maka kali ini kita membuat form dengan menggunakan nilai yang ada pada record sebagai control formnya.

Dasar berpikirnya adalah sebagai berikut. Pengaturan sistem disimpan dalam sebuah tabel, dalam hal ini diberi nama tblPreferensiSistem seperti di bawah ini, yang jumlah recordnya dapat dikatakan tetap. Dengan jumlah record yang tetap itu, maka kita dapat melakukan manipulasi data pada sebuah form untuk memberikan nilai yang diinginkan pada setiap recordnya, terutama untuk nilai pada field prefNilai (kolom Nilai Preferensi).
tblPreferensiSistem
Nama Preferensi Judul Preferensi Deskripsi Nilai Preferensi
borderDitampilkan Tampilkan Pembatas Pembatas (Border) untuk setiap kotak memasukkan data ditampilan
borderTipe Tipe Pembatas Tipe pembatas yang diinginkan
borderUkuran Ukuran Pembatas Ukuran yang digunakan untuk pembatas (border)
borderWarna Warna Pembatas Warna yang digunakan untuk pembatas (border)
fontTipe Tipe Font Tipe font yang digunakan
fontUkuran Ukuran Font Ukuran font tyang digunakan
lokasiFolder Lokasi Folder Lokasi folder tempat menaruh aplikasi database
namaPemilik Nama Pemilik Nama yang didaftarkan sebagai pemilik aplikasi
penggunaTampilkanNama Tampilkan Nama Pengguna Nama pengguna ditampilkan sebagai pengganti ID
monterUnit Unit Moneter Unit moneter yang dipakai
moneterPengucapan Pengucapan Unit Moneter Bagaimana unit moneter diucapkan, misalnya: IDR/Rp diucapkan Rupiah, JPY diucapkan Yen Jepang, dsb
Nilai Preferensi, karena disimpan dalam tipe data text/char, akan lebih mudah untuk dikonversi ke tipe data lain, seperti Boolean, Array, Number, Date/Time, dan lain-lain. Nah, nilai yang sudah dikonversi inilah yang kemudian akan digunakan sebagai pengaturan sistem yang sesungguhnya.

Karena setiap nilai mempunyai cara tersendiri untuk menyimpannya ke dalam tabel, maka kita juga harus membuat alat bantu yang disesuaikan dengan setiap control yang ada dalam form ini. Sebagai pedoman umum, untuk hal-hal yang menjadi prioritas atau penting, kita harus meletakkan nilai setiap control di bagian atas atau bagian pertama. Misalnya, untuk field dengan nilai namaPemilik ditempatkan di bagian paling atas, kemudian diikuti dengan nilai lokasiFolder, dan seterusnya.

Berikut ini adalah langkah untuk membuat form Preferensi Sistem. Control yang ada dalam form berikut ini hanya terbatas pada apa yang kita buat secara khusus. Kita bisa menambahkan contro lain, seperti judul form, tanggal, dan sebagainya.

Buatlah sebuah form dengan menggunakan Blank Form. Simpanlah form ini dengan nama frmPreferensiSistem. Lalu pada bagian Detail dari form, lakukan langka berikut ini:
  1. Sisipkan sebuah control Text Box beserta label yang menempel, lalu isikan properti pada control ini sebagai berikut: Name= namaPemilik
  2. Sisipkan sebuah control Text Box beserta label  yang menempel, lalu isikan properti pada control ini sebagai berikut: Name= lokasiFolder
  3. Sisipkan sebuah control Command Button di sisi kanan text box lokasiFolder, lalu isikan properti pada control ini sebagai berikut:
    1. Name= cmdBukaFolder
    2. Picture= Embbedded
  4. Sisipkan sebuah control Check Box beserta label  yang menempel, lalu isikan properti pada control ini sebagai berikut: Name= penggunaTampilkanNama
  5. Sisipkan sebuah control Text Box beserta label  yang menempel, lalu isikan properti pada control ini sebagai berikut: Name= moneterUnit
  6. Sisipkan sebuah control Text Box beserta label  yang menempel, lalu isikan properti pada control ini sebagai berikut: Name= moneterPengucapan
  7. Sisipkan sebuah control Text Box beserta label  yang menempel, lalu isikan properti pada control ini sebagai berikut: Name= fontUkuran
  8. Sisipkan sebuah control Spin Box di sisi kanan text box fontUkuran, lalu isikan properti pada control ini sebagai berikut: Name= SpinButton1
  9. Sisipkan sebuah control Check Box beserta label  yang menempel, lalu isikan properti pada control ini sebagai berikut: Name= borderDitampilkan
  10. Sisipkan sebuah control Combo Box beserta label  yang menempel, lalu isikan properti pada control ini sebagai berikut:
    1. Name= borderTipe
    2. Row Source= 0;Transparan;1;Garis Penuh;2;Garis Putus;3;Titik-titk
    3. Row Source Type= Value List
    4. Bound Column= 1
    5. Limit To List= Yes
    6. Column Count= 2
    7. Column Widths= 0";2"
    8. List Width= 2"
  11. Sisipkan sebuah control Combo Box beserta label  yang menempel, lalu isikan properti pada control ini sebagai berikut:
    1. Name= borderUkuran
    2. Row Source= 0;Hairline;1;1 pt;2;2 pt;3;3 pt
    3. Row Source Type= Value List
    4. Bound Column= 1
    5. Limit To List= Yes
    6. Column Count=2
    7. Column Widths= 0";1"
    8. List Width = 1"
  12. Sisipkan sebuah control Combo Box beserta label  yang menempel, lalu isikan properti pada control ini sebagai berikut:
    1. Name= borderWarna
    2. Row Source= 000000;Hitam;16777215;Putih;132786;Merah Maroon;13750737;Abu-abu Terang
    3. Row Source Type= Value List
    4. Bound Column= 1
    5. Limit To List= Yes
    6. Column Count= 2
    7. Column Widths= 0";2"
    8. List Width= 2"
Pada bagian Form Footer, lakukan langkah berikut ini:
  1. Sisipkan sebuah Command Button dengan properti sbb:
    1. Name= cmdSimpan,
    2. Caption= Simpan
  2. Sisipkan sebuah Command Button dengan properti sbb:
    1. Name=cmdDefault
    2. Caption= Kembali ke Default
Berikut ini gambar control yang ada di form frmPreferensiSistem dengan field tabel tblPreferensiSistem.
Berikut ini adalah kode VBA yang ada dalam form frmPreferensiSistem:
  1. Option Compare Database  
  2.   
  3. Private Sub cmdBukaFolder_Click()  
  4.   Me.lokasiFolder = membukaFolder(Nz(Me.lokasiFolder, ""))  
  5.   Me.lokasiFolder.SetFocus  
  6. End Sub  
  7.   
  8. Private Sub cmdDefault_Click()  
  9.  kembaliKeDefault Me  
  10. End Sub  
  11.   
  12. Private Sub cmdSimpan_Click()  
  13.   Dim rs As dao.Recordset  
  14.   Dim fld As dao.Field  
  15.   Dim ctl As Control  
  16.   Dim prp As Property  
  17.     
  18.   If Not cekDbsTerbuka Then membukaDbs  
  19.   Set rs = membukaRecordset("SELECT * FROM tblPreferensiSistem"True)  
  20.   For Each ctl In Me.Detail.Controls  
  21.     Do While Not rs.EOF  
  22.       If Controls(ctl.Name).Name = rs.Fields("prefNama").Value Then  
  23.         If Controls(ctl.Name).Value <> rs.Fields("prefNilai").Value Then  
  24.           simpanNilaiPrefs ctl.Name, Nz(Controls(ctl.Name).Value, "")  
  25.         End If  
  26.       End If  
  27.       rs.MoveNext  
  28.     Loop  
  29.     rs.MoveFirst  
  30.   Next ctl  
  31.   Set rs = Nothing  
  32.   
  33. End Sub  
  34.   
  35.   
  36. Private Sub Form_Open(Cancel As Integer)  
  37.   Dim rs As dao.Recordset  
  38.   Dim fld As dao.Field  
  39.   Dim ctl As Control  
  40.   Dim prp As Property  
  41.   Dim varVouchNumberFormat As Variant  
  42.     
  43.   If Not cekDbsTerbuka Then membukaDbs  
  44.   aplikasikanFormat Me  
  45.   Me.AllowAdditions = False  
  46.   Set rs = membukaRecordset("SELECT * FROM tblPreferensiSistem"True)  
  47.   For Each ctl In Me.Detail.Controls  
  48.     Do While Not rs.EOF  
  49.       If ctl.Name = rs.Fields("prefNama").Value Then  
  50.         ctl.Value = tampilkanNilaiPrefs(ctl.Name)  
  51.           ctl.ControlTipText = menampilkanNilaiField("prefJudul""tblPreferensiSistem""prefNama""'" & ctl.Name & "'") & _  
  52.                                vbNewLine & _  
  53.                                menampilkanNilaiField("prefDeskripsi""tblPreferensiSistem""prefNama""'" & ctl.Name & "'")  
  54.           ctl.Controls.Item(0).Caption = menampilkanNilaiField("prefJudul""tblPreferensiSistem""prefNama""'" & ctl.Name & "'")  
  55.       End If  
  56.       rs.MoveNext  
  57.     Loop  
  58.   rs.MoveFirst  
  59.   Next ctl  
  60.   rs.Close  
  61.   Set rs = Nothing  
  62.   If Me.fontUkuran = "" Then Me.fontUkuran = Me.SpinButton1.Min  
  63.   Me.SpinButton1.Value = Me.fontUkuran  
  64. End Sub  
  65.   
  66. Private Sub SpinButton1_Change()  
  67.   Me.fontUkuran = Me.SpinButton1.Value  
  68.   Me.fontUkuran.SetFocus  
  69. End Sub  
Ada satu fungsi membukaFolder yang digunakan untuk membuka folder, tanpa harus mengetikkan lokasi folder yang diinginkan. Untuk mengetahui fungsi membukaFolder itu, silakan klik di sini.

Bila form dibuka
Pada gambar animasi di atas, saat form dalam mode Design View, semua control masih terlihat acak, dapat dikatakan tidak jelas. Tetapi saat form dalam mode Form View, semua control terlihat dengan jelas, bahkan tip text juga dapat menjelaskan tiap control yang ada di dalamnya. Control Tip Text mengambil dari field prefJudul dan prefDeskripsi yang ada pada tblPreferensiSistem. Jadi, bila nilai yang ada pada masing-masing fieldJudul dan prefDeskripsi diubah, maka perubahan ini juga akan ditampilkan secara otomatis di form frmPreferensiSistem.

Saat sebuah nilai diubah, seperti nilai Ukuran Font yang diubah dari 11 menjadi 13, maka, setelah perubahan disimpan, nilai preferensi sistem untuk ukuran font juga berubah.

Animasi di bawah ini menunjukkan efek perubahan dari preferensi sistem yang kita buat sendiri.

Pada posisi awal, tipe pembatas masih berupa garis penuh dan warna pembatas masih abu-abu terang. Setelah itu, kita mengubah tipe pembatas menjadi garis putus dan warna merah maroon. Untuk melihat perubahan pengaturan, kita harus menutup form atau mengubahnya ke Design View untuk kemudian dibuka lagi dengan Form View. Hasilnya, semua pembatas pada kotak isian telah berubah menjadi garis putus dengan warna merah maroon. Pada bagian akhir, kita kemudian mengubah tipe pembatas kembali lagi menjadi garis penuh. Hasilnya, semua pembatas pada kotak isian kembali menjadi garis penuh dengan warna tetap merah maroon.

Baca juga:

Membuat Pengaturan Sistem Sendiri Di Access - Pengantar (Bagian 1)
Membuat Pengaturan Sistem Sendiri Di Access - Mendesain Tabel  (Bagian 2)
Membuat Pengaturan Sistem Sendiri Di Access - Membuat Modul (Bagian 3)

Comments

Posting Terpopuler

Cara Mengatur dan Menggunakan ODBC untuk Mengakses Data Eksternal

Format Untuk Field Dengan Tipe Data Number dan Currency di MS Access

Memahami Properti Validation Rule dan Validation Text pada Tabel di Access