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).
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:
Berikut ini adalah kode VBA yang ada dalam form frmPreferensiSistem:
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)
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).
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 |
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:
- Sisipkan sebuah control Text Box beserta label yang menempel, lalu isikan properti pada control ini sebagai berikut: Name= namaPemilik
- Sisipkan sebuah control Text Box beserta label yang menempel, lalu isikan properti pada control ini sebagai berikut: Name= lokasiFolder
- Sisipkan sebuah control Command Button di sisi kanan text box lokasiFolder, lalu isikan properti pada control ini sebagai berikut:
- Name= cmdBukaFolder
- Picture= Embbedded
- Sisipkan sebuah control Check Box beserta label yang menempel, lalu isikan properti pada control ini sebagai berikut: Name= penggunaTampilkanNama
- Sisipkan sebuah control Text Box beserta label yang menempel, lalu isikan properti pada control ini sebagai berikut: Name= moneterUnit
- Sisipkan sebuah control Text Box beserta label yang menempel, lalu isikan properti pada control ini sebagai berikut: Name= moneterPengucapan
- Sisipkan sebuah control Text Box beserta label yang menempel, lalu isikan properti pada control ini sebagai berikut: Name= fontUkuran
- Sisipkan sebuah control Spin Box di sisi kanan text box fontUkuran, lalu isikan properti pada control ini sebagai berikut: Name= SpinButton1
- Sisipkan sebuah control Check Box beserta label yang menempel, lalu isikan properti pada control ini sebagai berikut: Name= borderDitampilkan
- Sisipkan sebuah control Combo Box beserta label yang menempel, lalu isikan properti pada control ini sebagai berikut:
- Name= borderTipe
- Row Source= 0;Transparan;1;Garis Penuh;2;Garis Putus;3;Titik-titk
- Row Source Type= Value List
- Bound Column= 1
- Limit To List= Yes
- Column Count= 2
- Column Widths= 0";2"
- List Width= 2"
- Sisipkan sebuah control Combo Box beserta label yang menempel, lalu isikan properti pada control ini sebagai berikut:
- Name= borderUkuran
- Row Source= 0;Hairline;1;1 pt;2;2 pt;3;3 pt
- Row Source Type= Value List
- Bound Column= 1
- Limit To List= Yes
- Column Count=2
- Column Widths= 0";1"
- List Width = 1"
- Sisipkan sebuah control Combo Box beserta label yang menempel, lalu isikan properti pada control ini sebagai berikut:
- Name= borderWarna
- Row Source= 000000;Hitam;16777215;Putih;132786;Merah Maroon;13750737;Abu-abu Terang
- Row Source Type= Value List
- Bound Column= 1
- Limit To List= Yes
- Column Count= 2
- Column Widths= 0";2"
- List Width= 2"
- Sisipkan sebuah Command Button dengan properti sbb:
- Name= cmdSimpan,
- Caption= Simpan
- Sisipkan sebuah Command Button dengan properti sbb:
- Name=cmdDefault
- Caption= Kembali ke Default
Berikut ini adalah kode VBA yang ada dalam form frmPreferensiSistem:
Option Compare Database Private Sub cmdBukaFolder_Click() Me.lokasiFolder = membukaFolder(Nz(Me.lokasiFolder, "")) Me.lokasiFolder.SetFocus End Sub Private Sub cmdDefault_Click() kembaliKeDefault Me End Sub Private Sub cmdSimpan_Click() Dim rs As dao.Recordset Dim fld As dao.Field Dim ctl As Control Dim prp As Property If Not cekDbsTerbuka Then membukaDbs Set rs = membukaRecordset("SELECT * FROM tblPreferensiSistem", True) For Each ctl In Me.Detail.Controls Do While Not rs.EOF If Controls(ctl.Name).Name = rs.Fields("prefNama").Value Then If Controls(ctl.Name).Value <> rs.Fields("prefNilai").Value Then simpanNilaiPrefs ctl.Name, Nz(Controls(ctl.Name).Value, "") End If End If rs.MoveNext Loop rs.MoveFirst Next ctl Set rs = Nothing End Sub Private Sub Form_Open(Cancel As Integer) Dim rs As dao.Recordset Dim fld As dao.Field Dim ctl As Control Dim prp As Property Dim varVouchNumberFormat As Variant If Not cekDbsTerbuka Then membukaDbs aplikasikanFormat Me Me.AllowAdditions = False Set rs = membukaRecordset("SELECT * FROM tblPreferensiSistem", True) For Each ctl In Me.Detail.Controls Do While Not rs.EOF If ctl.Name = rs.Fields("prefNama").Value Then ctl.Value = tampilkanNilaiPrefs(ctl.Name) ctl.ControlTipText = menampilkanNilaiField("prefJudul", "tblPreferensiSistem", "prefNama", "'" & ctl.Name & "'") & _ vbNewLine & _ menampilkanNilaiField("prefDeskripsi", "tblPreferensiSistem", "prefNama", "'" & ctl.Name & "'") ctl.Controls.Item(0).Caption = menampilkanNilaiField("prefJudul", "tblPreferensiSistem", "prefNama", "'" & ctl.Name & "'") End If rs.MoveNext Loop rs.MoveFirst Next ctl rs.Close Set rs = Nothing If Me.fontUkuran = "" Then Me.fontUkuran = Me.SpinButton1.Min Me.SpinButton1.Value = Me.fontUkuran End Sub Private Sub SpinButton1_Change() Me.fontUkuran = Me.SpinButton1.Value Me.fontUkuran.SetFocus End SubAda 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
Post a Comment