Skip to main content

Memodifikasi Tombol Preview Report pada Form Jurnal Transaksi

Pada dasarnya, modifikasi tombol Preview ini sama dengan modifikasi yang dilakukan pada posting dengan judul Dua Sumber Tabel yang Berbeda, Tetapi Satu Bentuk Laporan yang Sama. Perbedaan yang mendasar, Preview Report juga bisa dilakukan lewat menu.
Gambar 1

Kita akan membuat form seperti pada Gambar 1. Buatlah form dengan menggunakan Blank Form dan simpanlah form itu dengan nama frmTransJurnalDialog, lalu isikan dengan form control berikut ini:
  1. Combo box untuk Jenis Jurnal, propertinya adalah sebagai berikut:
    1. Name = StatusJurnal
    2. Column Count = 2
    3. Column Widths = 0";1"
    4. Colums Heads = No
    5. List Row = 2
    6. List Width = 1”
    7. Width = 1.5”
    8. Row Source = Temp;Jurnal Temporer;Perm;Jurnal Permanen
    9. Row Source Type = Value List
    10. Bound Column = 1
    11. Limit To List = Yes
    12. Default Value = "Temp"
  2. Option group Mode Tampilan, properti dan opsi di dalamnya sebagai berikut:
    1. Name=FrameModeTampilan
    2. Default Value=1
    3. Option button:
      1. Option button 1:
        1. Name = Option3
        2. Option Value = 1
        3. Label untuk option ini, Name = lblHanyaJurnalIni, dan Caption = Hanya Jurnal Ini.
      2. Option button 2:
        1. Name = Option5
        2. Option Value = 2
        3. Label untuk option ini, Name = lblTampilkanBerdasarkan Range, dan Caption = Tampilkan Berdasarkan Range.
    4. Persis di bawah lblTampilkanBerdasarkanRange, sisipkan text box dan check box berikut ini:
      1. Dari Tanggal, properti text box:
        1. Name = drTanggal
        2. Format= Medium Date
        3. Enabled=No
      2. sd Tanggal, properti text box:
        1. Name = sdTanggal
        2. Format= Medium Date
        3. Enabled=No
        4. Validation Rule= >[drTanggal]
        5. Validation Text = Tanggal harus lebih besar atau sama dengan "Dari Tanggal"
      3. Tampilkan subtotal tanggal, properti check box:
        1. Name = GrupTanggal
        2. Default Value=-1
        3. Label untuk check box ini, Caption= Tampilkan subtotal tanggal
        Subtotal tanggal diperlukan bila dalam satu rentang waktu tertentu dan dalam satu range nomor jurnal tertentu, ada banyak nomor jurnal sehingga kita tahu, berapa jumlah transaksi setiap harinya.
    5. Selanjutnya, di bagian paling bawah dari FrameModeTampilan, sisipkan combo box dan check box berikut ini:
      1. Dari Tipe. properti combo box:
        1. Name = drTipe
        2. Column Count = 2
        3. Column Widths = 1";2"
        4. Colums Heads = Yes
        5. List Row = 16
        6. List Width = 3”
        7. Width = 1”
        8. Row Source = SELECT tblTempTransJournal_Parent. TipeJurnal, tblTipeJurnal.NamaJurnal FROM tblTipeJurnal INNER JOIN tblTempTransJournal_Parent ON tblTipeJurnal.TipeId=tblTempTransJournal_Parent.TipeJurnal GROUP BY tblTempTransJournal_Parent.TipeJurnal, tblTipeJurnal.NamaJurnal ORDER BY tblTempTransJournal _Parent.TipeJurnal;
        9. Row Source Type = Table/Query
        10. Bound Column = 1
        11. Limit To List = Yes
        12. Enabled=No
      2. sd Tipe, properti combo box:
        1. Name = sdTipe
        2. Column Count = 2
        3. Column Widths = 1”;2”
        4. Colums Heads = Yes
        5. List Row = 16
        6. List Width = 3”
        7. Width = 1”
        8. Row Source = SELECT tblTempTransJournal_Parent. TipeJurnal, tblTipeJurnal.NamaJurnal FROM tblTipeJurnal INNER JOIN tblTempTransJournal_Parent ON tblTipeJurnal.TipeId=tblTempTransJournal_Parent.TipeJurnal GROUP BY tblTempTransJournal_Parent.TipeJurnal, tblTipeJurnal.NamaJurnal HAVING (((tblTempTrans Journal_Parent.TipeJurnal)>=[Forms]![frmTransJurnalDialog]![drTipe])) ORDER BY tblTempTransJournal_Parent. TipeJurnal;
        9. Row Source Type = Table/Query
        10. Bound Column = 1
        11. Limit To List = Yes
        12. Enabled=No
      3. sd Tipe, properti combo box:
        1. Name = sdTipe
        2. Column Count = 2
        3. Column Widths = 1”;2”
        4. Colums Heads = Yes
        5. List Row = 16
        6. List Width = 3”
        7. Width = 1”
        8. Row Source = SELECT tblTempTransJournal_Parent. TipeJurnal, tblTipeJurnal.NamaJurnal FROM tblTipeJurnal INNER JOIN tblTempTransJournal_Parent ON tblTipeJurnal.TipeId=tblTempTransJournal_Parent.TipeJurnal GROUP BY tblTempTransJournal_Parent.TipeJurnal, tblTipeJurnal.NamaJurnal HAVING (((tblTempTrans Journal_Parent.TipeJurnal)>=[Forms]![frmTransJurnalDialog]![drTipe])) ORDER BY tblTempTransJournal_Parent. TipeJurnal;
        9. Row Source Type = Table/Query
        10. Bound Column = 1
        11. Limit To List = Yes
        12. Enabled=No
      4. Tampilkan subtotal tiap jurnal, properti check box:
        1. Name = GrupTipe
        2. Default Value=-1
        3. Label untuk check box ini, Caption= Tampilkan subtotal tiap jurnal
        Subtotal tiap jurnal diperlukan bila dalam satu range tertentu ada banyak nomor jurnal sehingga kita tahu, berapa jumlah transaksi setiap nomor jurnalnya.
  3. Option group Ukuran Kertas, properti dan opsi di dalamnya sebagai berikut:
    1. Name= FramBentukKertas
    2. Default Value=1
    3. Option button:
      1. Option button 1:
        1. Name = Option35
        2. Option Value = 1
        3. Label untuk option ini, Caption = Letter, bentuk simple, isi jurnal: tidak termasuk kolom kuantitas, satuan ukuran, harga per unit, total, tgl jatuh tempo.
      2. Option button 2:
        1. Name = Option37
        2. Option Value = 2
        3. Label untuk option ini, Caption = Legal, isi jurnal: lengkap.
  4. Tombol perintah, properti:
    1. Name = Command1
    2. Caption = Lihat Laporan
  5. Tombol perintah, properti:
    1. Name = Command0
    2. Caption = Batal
    3. On Click = =tutup()
Untuk mengarahkan form sesuai dengan keinginan kita, maka aplikasikan event procedure berikut ini dalam modul Form_frmTransJurnalDialog:
  1. Option Compare Database  
  2. Private Sub Command1_Click()  
  3. globStatusJurnal = Me.StatusJurnal  
  4.   If Me.FrameModeTampilan = 1 And Not formdiLoad("frm" & globStatusJurnal & "TransJournal_Parent"Then  
  5.     MsgBox "Form jurnal entry tidak aktif"  
  6.     Exit Sub  
  7.   End If  
  8.   If Me.FrameModeTampilan = 2 Then  
  9.     If (Not IsNull(Me.drTanggal) And IsNull(Me.sdTanggal)) Or (IsNull(Me.drTanggal) And Not IsNull(Me.sdTanggal)) Then  
  10.       MsgBox "Salah satu dari kriteria tanggal tidak boleh kosong." & vbCrLf & vbCrLf _  
  11.               & "Kosongkan semua kriteria untuk melihat semua tanggal yang tercatat"  
  12.       Exit Sub  
  13.     End If  
  14.     If (Not IsNull(Me.drTipe) And IsNull(Me.sdTipe)) Or (IsNull(Me.drTipe) And Not IsNull(Me.sdTipe)) Then  
  15.       MsgBox "Salah satu dari kriteria tipe jurnal tidak boleh kosong." & vbCrLf & vbCrLf _  
  16.               & "Kosongkan semua kriteria untuk melihat semua tanggal yang tercatat"  
  17.       Exit Sub  
  18.     End If  
  19.   End If  
  20.   If Me.FramBentukKertas = 1 Then PreviewUnRefresh ("rptTempTransJournalSimple"Else PreviewUnRefresh ("rptTempTransJournal")  
  21. End Sub  
  22. Private Sub drTipe_AfterUpdate()  
  23.   Me.sdTipe.Requery  
  24. End Sub  
  25. Private Sub Form_Close()  
  26.   If globStatusJurnal = "" Then Form_frmMenus.Visible = True  
  27. End Sub  
  28. Private Sub Form_Open(Cancel As Integer)  
  29.   If globStatusJurnal <> "" Then  
  30.     Me.StatusJurnal = globStatusJurnal  
  31.     Me.Modal = True  
  32.   Else  
  33.     Me.Modal = False  
  34.     Me.FrameModeTampilan = 2  
  35.     FrameModeTampilan_AfterUpdate  
  36.   End If  
  37.   If formdiLoad("frm" & globStatusJurnal & "TransJournal_Parent"Then  
  38.     Me.lblHanyaJurnalIni.Caption = Me.lblHanyaJurnalIni.Caption & " (" & Forms("frm" & globStatusJurnal & "TransJournal_Parent").JurnalIdInfo & ")"  
  39.     Me.StatusJurnal.Enabled = False  
  40.     Me.Option5.Enabled = False  
  41.   Else  
  42.     Me.Option3.Enabled = False  
  43.   End If  
  44. End Sub  
  45. Private Sub Form_Unload(Cancel As Integer)  
  46.   globStatusJurnal = ""  
  47. End Sub  
  48. Private Sub FrameModeTampilan_AfterUpdate()  
  49.   If Me.FrameModeTampilan = 2 Then  
  50.     Me.drTanggal.Enabled = True  
  51.     Me.sdTanggal.Enabled = True  
  52.     Me.drTipe.Enabled = True  
  53.     Me.sdTipe.Enabled = True  
  54.     Me.Form.Requery  
  55.   Else  
  56.     Me.drTanggal.Enabled = False  
  57.     Me.sdTanggal.Enabled = False  
  58.     Me.drTipe.Enabled = False  
  59.     Me.sdTipe.Enabled = False  
  60.   End If  
  61. End Sub   
Bila dibuka dengan Form view, tampilan frmTransJurnalDialog seperti ini:
Gambar 2
Karena jenis jurnal untuk form yang aktif (dibuka) adalah jurnal transaksi temporer, maka form akan otomatis mengarahkan combo box Jenis Jurnal ke jurnal temporer dan dalam posisi non aktif. Form dialog ini juga langsung mengarahkan untuk melihat jurnal pada form yang aktif saja, jadi tidak bisa melihat jurnal dalam satu kisaran atau range tertentu. Kita dapat memilih ukuran kertas, apakah menggunakan letter sebagai default atau legal. Bila letter yang digunakan, maka laporan jurnal itu tidak termasuk field atau kolom kuantitas, satuan ukuran, harga per unit, total, tgl jatuh tempo. Jika legal yang digunakan, semua kolom ditampilkan dalam laporan jurnal.

Secara umum, dalam praktek akuntansi sehari-hari, jurnal transaksi tidak memasukkan informasi (field) kuantitas, satuan ukuran, harga per unit, total, dan tanggal jatuh tempo. Namun demikian, kemajuan teknologi informasi membantu akuntan untuk dapat menyediakan informasi non keuangan yang masih terkait dengan informasi keuangan itu sendiri. Dengan adanya tambahan field-field seperti ini, informasi menjadi jauh lebih lengkap, akurat, dan dapat diandalkan.

Comments

Posting Terpopuler

Cara Mengatur dan Menggunakan ODBC untuk Mengakses Data Eksternal

Fungsi Untuk Membuka Database di Access VBA

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