You are on page 1of 46

LISTING PROGRAM 1.

Form Master Barang Dim GridBaris As Byte Private Sub cmdHapus_Click() If MsgBox("Apakah Anda yakin mau menghapus data ini..??", vbYesNo + vbQuestion, "Konfirmasi") = vbYes Then SQL = "" SQL = "DELETE FROM Barang WHERE Kd_Barang='" & txtKode.Text & "'" KonekDB.Execute SQL, , adCmdText kosong nonAktif TampilGrid MsgBox "Data berhasil dihapus!", vbInformation + vbOKOnly, "Informasi" End If End Sub Private Sub cmdTambah_Click() If cmdTambah.Caption = "Tam&bah" Then aktif buatKode cmdTambah.Caption = "&Simpan" cmdTutup.Caption = "Ba&tal" txtNama.SetFocus cmdTambah.ToolTipText = "Simpan data" cmdTutup.ToolTipText = "Batal" Else If txtNama.Text = "" Then MsgBox "Nama barang tidak boleh kosong!", vbInformation + vbOKOnly, "Informasi" txtNama.SetFocus ElseIf txtHargaBeli.Text = "" Then MsgBox "Harga beli tidak boleh kosong!", vbInformation + vbOKOnly, "Informasi" txtHargaBeli.SetFocus ElseIf txtHargaJual.Text = "" Then MsgBox "Harga jual tidak boleh kosong!", vbInformation + vbOKOnly, "Informasi" txtHargaJual.SetFocus

ElseIf txtStok.Text = "" Then MsgBox "Stok barang tidak boleh kosong!", vbInformation + vbOKOnly, "Informasi" txtStok.SetFocus Else SQL = "" SQL = "SELECT * FROM Barang WHERE Kd_Barang = '" & txtKode.Text & "'" Set Rs_Barang = New ADODB.Recordset Rs_Barang.Open SQL, KonekDB, adOpenDynamic, adLockOptimistic If Rs_Barang.BOF Then SQL = "" SQL = "INSERT INTO Barang VALUES('" & txtKode.Text & "','" & txtNama.Text & "','" & cmbJenis.Text & "','" & txtHargaBeli.Text & "','" & txtHargaJual.Text & "','" & txtStok.Text & "')" KonekDB.Execute SQL, , adCmdText kosong nonAktif TampilGrid MsgBox "Data berhasil tersimpan", vbOKOnly + vbInformation, "Informasi" Else MsgBox "Data tidak tersimpan", vbOKOnly + vbInformation, "Informasi" End If End If End If End Sub Private Sub cmdTutup_Click() If cmdTutup.Caption = "&Tutup" Then If MsgBox("Apakah Anda yakin mau menutup form ini?", vbYesNo + vbQuestion, "Konfirmasi") = vbYes Then Unload Me End If Else kosong nonAktif

cmdTambah.ToolTipText = "Tambah data" cmdTutup.ToolTipText = "Tutup form" End If End Sub Private Sub nonAktif() txtKode.Enabled = False txtNama.Enabled = False cmbJenis.Enabled = False txtHargaBeli.Enabled = False txtHargaJual.Enabled = False txtStok.Enabled = False cmdUbah.Enabled = False cmdHapus.Enabled = False cmdTambah.Enabled = True cmdTambah.Caption = "Tam&bah" cmdTutup.Caption = "&Tutup" End Sub Private Sub aktif() txtKode.Enabled = True txtNama.Enabled = True cmbJenis.Enabled = True txtHargaBeli.Enabled = True txtHargaJual.Enabled = True txtStok.Enabled = True End Sub Private Sub kosong() txtKode = "" txtNama = "" cmbJenis = "" txtHargaBeli = "" txtHargaJual = "" txtStok = "" End Sub Private Sub buatKode() Dim Kd As String Dim KodeBaru As String SQL = "SELECT * FROM Barang" Set Rs_Data = New ADODB.Recordset

Rs_Data.Open adLockBatchOptimistic Rs_Data.Requery

SQL,

KonekDB,

adOpenDynamic,

With Rs_Data If .BOF Then txtKode.Text = "B-001" Exit Sub Else .MoveLast Kd = !Kd_Barang Kd = Val(Right(Kd, 3)) Kd = Kd + 1 End If KodeBaru = "B-" & Format(Kd, "000") End With txtKode.Text = KodeBaru End Sub Private Sub AktifGrid() With GridData .Cols = 7 .RowHeightMin = 300 .Col = 0 .Row = 0 .Text = "No" .CellFontBold = True .ColWidth(0) = 400 .AllowUserResizing = flexResizeColumns .CellAlignment = flexAlignCenterCenter .RowHeightMin = 300 .Col = 1 .Row = 0 .Text = "Kode" .CellFontBold = True .ColWidth(1) = 1000 .AllowUserResizing = flexResizeColumns .CellAlignment = flexAlignCenterCenter

.Col = 2 .Row = 0 .Text = "Nama Barang" .CellFontBold = True .ColWidth(2) = 2400 .AllowUserResizing = flexResizeColumns .CellAlignment = flexAlignCenterCenter .Col = 3 .Row = 0 .Text = "Jenis" .CellFontBold = True .ColWidth(3) = 1000 .AllowUserResizing = flexResizeColumns .CellAlignment = flexAlignCenterCenter .Col = 4 .Row = 0 .Text = "Hrg Beli" .CellFontBold = True .ColWidth(4) = 1000 .AllowUserResizing = flexResizeColumns .CellAlignment = flexAlignCenterCenter .Col = 5 .Row = 0 .Text = "Hrg Jual" .CellFontBold = True .ColWidth(5) = 1000 .AllowUserResizing = flexResizeColumns .CellAlignment = flexAlignCenterCenter .Col = 6 .Row = 0 .Text = "Stok" .CellFontBold = True .ColWidth(6) = 1000 .AllowUserResizing = flexResizeColumns .CellAlignment = flexAlignCenterCenter

End With End Sub Sub TampilGrid() Dim baris As Integer GridData.Clear Call AktifGrid GridData.Rows = 2 baris = 0 Set Rs_Barang = New ADODB.Recordset Rs_Barang.Open "SELECT * FROM Barang", KonekDB, adOpenDynamic, adLockOptimistic If Rs_Barang.BOF Then Exit Sub Else With Rs_Barang .MoveFirst Do While Not .EOF On Error Resume Next baris = baris + 1 GridData.Rows = baris + 1 GridData.TextMatrix(baris, 0) = baris GridData.TextMatrix(baris, 1) = !Kd_Barang GridData.TextMatrix(baris, 2) = !Nm_Barang GridData.TextMatrix(baris, 3) = !Jenis_Barang GridData.TextMatrix(baris, 4) = !Harga_Beli GridData.TextMatrix(baris, 5) = !Harga_Jual GridData.TextMatrix(baris, 6) = !Stok_Barang .MoveNext Loop End With End If End Sub Private Sub cmdUbah_Click() If MsgBox("Apakah Anda yakin mau mengubah data ini..??", vbYesNo + vbQuestion, "Konfirmasi") = vbYes Then SQL = "" SQL = "UPDATE Barang SET Nm_Barang='" & txtNama.Text & "',Jenis_Barang='" & cmbJenis.Text &

"',Harga_Beli='" & txtHargaBeli.Text & "',Harga_Jual='" & txtHargaJual.Text & "',Stok_Barang='" & txtStok.Text & "' WHERE Kd_Barang='" & txtKode.Text & "'" KonekDB.Execute SQL, , adCmdText kosong nonAktif TampilGrid MsgBox "Data berhasil diubah!", vbInformation + vbOKOnly, "Informasi" End If End Sub Private Sub Form_Activate() Rs_Barang.Requery End Sub Private Sub Form_Load() BukaDatabase nonAktif TampilGrid End Sub Private Sub GridData_DblClick() GridBaris = GridData.Row Set Rs_Barang = New ADODB.Recordset Rs_Barang.Open " SELECT * FROM Barang WHERE Kd_Barang='" & GridData.TextMatrix(GridBaris, 1) & "'", KonekDB, adOpenDynamic, adLockOptimistic If Rs_Barang.BOF Then MsgBox "TABEL MASIH KOSONG!", vbOKOnly + vbInformation, "Error" Exit Sub Else Rs_Barang.MoveFirst Do While Not Rs_Barang.EOF On Error Resume Next txtKode.Text = Rs_Barang!Kd_Barang txtNama.Text = Rs_Barang!Nm_Barang cmbJenis.Text = Rs_Barang!Jenis_Barang txtHargaBeli.Text = Rs_Barang!Harga_Beli txtHargaJual.Text = Rs_Barang!Harga_Jual

txtStok.Text = Rs_Barang!Stok_Barang Rs_Barang.MoveNext Loop cmdUbah.Enabled = True cmdHapus.Enabled = True cmdTutup.Caption = "Ba&tal" cmdTambah.Caption = "&Tambah" cmdTambah.Enabled = False cmdTutup.ToolTipText = "Batal" aktif txtKode.Enabled = False txtNama.SetFocus End If End Sub Private Sub txtHargaBeli_KeyPress(KeyAscii As Integer) If KeyAscii = 13 Then txtHargaJual.SetFocus End If End Sub Private Sub txtHargaJual_KeyPress(KeyAscii As Integer) If KeyAscii = 13 Then txtStok.SetFocus End If End Sub Private Sub txtNama_KeyPress(KeyAscii As Integer) If KeyAscii = 13 Then cmbJenis.SetFocus End If End Sub 2. Form Master Supplier Dim GridBaris As Byte Private Sub cmdHapus_Click() If MsgBox("Apakah Anda yakin mau menghapus data ini..??", vbYesNo + vbQuestion, "Konfirmasi") = vbYes Then SQL = "" SQL = "DELETE FROM Supplier WHERE Kd_Supplier='" & txtKode.Text & "'" KonekDB.Execute SQL, , adCmdText

kosong nonAktif TampilGrid MsgBox "Data berhasil dihapus!", vbInformation + vbOKOnly, "Informasi" End If End Sub Private Sub cmdTambah_Click() If cmdTambah.Caption = "Tam&bah" Then aktif buatKode cmdTambah.Caption = "&Simpan" cmdTutup.Caption = "Ba&tal" txtNama.SetFocus cmdTambah.ToolTipText = "Simpan data" cmdTutup.ToolTipText = "Batal" Else If txtNama.Text = "" Then MsgBox "Nama Supplier tidak boleh kosong!", vbInformation + vbOKOnly, "Informasi" txtNama.SetFocus ElseIf txtAlamat.Text = "" Then MsgBox "Alamat tidak boleh kosong!", vbInformation + vbOKOnly, "Informasi" txtAlamat.SetFocus ElseIf txtTelepon.Text = "" Then MsgBox "No. Telepon tidak boleh kosong!", vbInformation + vbOKOnly, "Informasi" txtTelepon.SetFocus Else SQL = "" SQL = "SELECT * FROM Supplier WHERE Kd_Supplier = '" & txtKode.Text & "'" Set rs_Supplier = New ADODB.Recordset rs_Supplier.Open SQL, KonekDB, adOpenDynamic, adLockOptimistic If rs_Supplier.BOF Then SQL = ""

SQL = "INSERT INTO Supplier VALUES('" & txtKode.Text & "','" & txtNama.Text & "','" & txtAlamat.Text & "','" & txtTelepon.Text & "')" KonekDB.Execute SQL, , adCmdText kosong nonAktif TampilGrid MsgBox "Data berhasil tersimpan", vbOKOnly + vbInformation, "Informasi" Else MsgBox "Data tidak tersimpan", vbOKOnly + vbInformation, "Informasi" End If End If End If End Sub Private Sub cmdTutup_Click() If cmdTutup.Caption = "&Tutup" Then If MsgBox("Apakah Anda yakin mau menutup form ini?", vbYesNo + vbQuestion, "Konfirmasi") = vbYes Then Unload Me End If Else kosong nonAktif cmdTambah.ToolTipText = "Tambah data" cmdTutup.ToolTipText = "Tutup form" End If End Sub Private Sub nonAktif() txtKode.Enabled = False txtNama.Enabled = False txtAlamat.Enabled = False txtTelepon.Enabled = False cmdUbah.Enabled = False cmdHapus.Enabled = False cmdTambah.Enabled = True cmdTambah.Caption = "Tam&bah" cmdTutup.Caption = "&Tutup" End Sub

Private Sub aktif() txtKode.Enabled = True txtNama.Enabled = True txtAlamat.Enabled = True txtTelepon.Enabled = True End Sub Private Sub kosong() txtKode = "" txtNama = "" txtAlamat = "" txtTelepon = "" End Sub Private Sub buatKode() Dim Kd As String Dim KodeBaru As String SQL = "SELECT * FROM Supplier" Set Rs_Data = New ADODB.Recordset Rs_Data.Open SQL, KonekDB, adLockBatchOptimistic Rs_Data.Requery With Rs_Data If .BOF Then txtKode.Text = "S-001" Exit Sub Else .MoveLast Kd = !Kd_Supplier Kd = Val(Right(Kd, 3)) Kd = Kd + 1 End If KodeBaru = "S-" & Format(Kd, "000") End With txtKode.Text = KodeBaru End Sub Private Sub AktifGrid() With GridData .Cols = 5

adOpenDynamic,

.RowHeightMin = 300 .Col = 0 .Row = 0 .Text = "No" .CellFontBold = True .ColWidth(0) = 400 .AllowUserResizing = flexResizeColumns .CellAlignment = flexAlignCenterCenter .RowHeightMin = 300 .Col = 1 .Row = 0 .Text = "Kode" .CellFontBold = True .ColWidth(1) = 800 .AllowUserResizing = flexResizeColumns .CellAlignment = flexAlignCenterCenter .Col = 2 .Row = 0 .Text = "Nama Supplier" .CellFontBold = True .ColWidth(2) = 1900 .AllowUserResizing = flexResizeColumns .CellAlignment = flexAlignCenterCenter .Col = 3 .Row = 0 .Text = "Alamat" .CellFontBold = True .ColWidth(3) = 2500 .AllowUserResizing = flexResizeColumns .CellAlignment = flexAlignCenterCenter .Col = 4 .Row = 0 .Text = "No. Telepon" .CellFontBold = True .ColWidth(4) = 1200 .AllowUserResizing = flexResizeColumns

.CellAlignment = flexAlignCenterCenter End With End Sub Sub TampilGrid() Dim baris As Integer GridData.Clear Call AktifGrid GridData.Rows = 2 baris = 0 Set rs_Supplier = New ADODB.Recordset rs_Supplier.Open "SELECT * FROM Supplier", KonekDB, adOpenDynamic, adLockOptimistic If rs_Supplier.BOF Then Exit Sub Else With rs_Supplier .MoveFirst Do While Not .EOF On Error Resume Next baris = baris + 1 GridData.Rows = baris + 1 GridData.TextMatrix(baris, 0) = baris GridData.TextMatrix(baris, 1) = !Kd_Supplier GridData.TextMatrix(baris, 2) = !Nm_Supplier GridData.TextMatrix(baris, 3) = !Alamat GridData.TextMatrix(baris, 4) = !No_Telepon .MoveNext Loop End With End If End Sub Private Sub cmdUbah_Click() If MsgBox("Apakah Anda yakin mau mengubah data ini..??", vbYesNo + vbQuestion, "Konfirmasi") = vbYes Then SQL = "" SQL = "UPDATE Supplier SET Nm_Supplier='" & txtNama.Text & "',Alamat='" & txtAlamat.Text & "',No_Telepon='"

& txtTelepon.Text & "' WHERE Kd_Supplier='" & txtKode.Text & "'" KonekDB.Execute SQL, , adCmdText kosong nonAktif TampilGrid MsgBox "Data berhasil diubah!", vbInformation + vbOKOnly, "Informasi" End If End Sub Private Sub Form_Activate() rs_Supplier.Requery End Sub Private Sub Form_Load() BukaDatabase nonAktif TampilGrid End Sub Private Sub GridData_DblClick() GridBaris = GridData.Row Set rs_Supplier = New ADODB.Recordset rs_Supplier.Open " SELECT * FROM Supplier WHERE Kd_Supplier='" & GridData.TextMatrix(GridBaris, 1) & "'", KonekDB, adOpenDynamic, adLockOptimistic If rs_Supplier.BOF Then MsgBox "TABEL MASIH KOSONG!", vbOKOnly + vbInformation, "Error" Exit Sub Else rs_Supplier.MoveFirst Do While Not rs_Supplier.EOF On Error Resume Next txtKode.Text = rs_Supplier!Kd_Supplier txtNama.Text = rs_Supplier!Nm_Supplier txtAlamat.Text = rs_Supplier!Alamat txtTelepon.Text = rs_Supplier!No_Telepon rs_Supplier.MoveNext Loop

cmdUbah.Enabled = True cmdHapus.Enabled = True cmdTutup.Caption = "Ba&tal" cmdTambah.Caption = "&Tambah" cmdTambah.Enabled = False cmdTutup.ToolTipText = "Batal" aktif txtKode.Enabled = False txtNama.SetFocus End If End Sub Private Sub txtNama_KeyPress(KeyAscii As Integer) If KeyAscii = 13 Then txtAlamat.SetFocus End If End Sub Private Sub txtAlamat_KeyPress(KeyAscii As Integer) If KeyAscii = 13 Then txtTelepon.SetFocus End If End Sub 3. Form Master Akun Dim GridBaris As Byte Dim tNoAkun As String Private Sub cbGrup_Change() cbGrup_Click End Sub Private Sub cbGrup_Click() If cbGrup = "Aset" Then txtKode = "100" ElseIf cbGrup = "Kewajiban" Then txtKode = "200" ElseIf cbGrup = "Modal" Then txtKode = "300" ElseIf cbGrup = "Pendapatan" Then txtKode = "400" ElseIf cbGrup = "Biaya" Then txtKode = "500"

End If End Sub Private Sub cmdHapus_Click() If MsgBox("Apakah Anda yakin mau menghapus data ini..??", vbYesNo + vbQuestion, "Konfirmasi") = vbYes Then tNoAkun = txtKode.Text & txtAkun.Text SQL = "" SQL = "DELETE FROM Akun WHERE No_Akun='" & tNoAkun & "'" KonekDB.Execute SQL, , adCmdText SQL = "" SQL = "DELETE FROM m_GL WHERE No_Akun='" & tNoAkun & "'" KonekDB.Execute SQL, , adCmdText kosong nonAktif TampilGrid MsgBox "Data berhasil dihapus!", vbInformation + vbOKOnly, "Informasi" End If End Sub Private Sub cmdTambah_Click() If cmdTambah.Caption = "Tam&bah" Then aktif cmdTambah.Caption = "&Simpan" cmdTutup.Caption = "Ba&tal" cbGrup.SetFocus cmdTambah.ToolTipText = "Simpan data" cmdTutup.ToolTipText = "Batal" Else If txtNama.Text = "" Then MsgBox "Nama Akun tidak boleh kosong!", vbInformation + vbOKOnly, "Informasi" txtNama.SetFocus ElseIf cbGrup.Text = "" Then MsgBox "Grup_Akun tidak boleh kosong!", vbInformation + vbOKOnly, "Informasi"

cbGrup.SetFocus ElseIf cbStatus.Text = "" Then MsgBox "No. Telepon tidak boleh kosong!", vbInformation + vbOKOnly, "Informasi" cbStatus.SetFocus Else tNoAkun = txtKode.Text & txtAkun.Text SQL = "" SQL = "SELECT * FROM Akun WHERE No_Akun = '" & tNoAkun & "'" Set Rs_Akun = New ADODB.Recordset Rs_Akun.Open SQL, KonekDB, adOpenDynamic, adLockOptimistic If Rs_Akun.BOF Then SQL = "" SQL = "INSERT INTO Akun VALUES('" & tNoAkun & "','" & txtNama.Text & "','" & cbGrup.Text & "','" & cbStatus.Text & "')" KonekDB.Execute SQL, , adCmdText SQL = "" SQL = "INSERT INTO m_GL(No_Akun, Nm_Akun) VALUES('" & tNoAkun & "','" & txtNama.Text & "')" KonekDB.Execute SQL, , adCmdText kosong nonAktif TampilGrid MsgBox "Data berhasil tersimpan", vbOKOnly + vbInformation, "Informasi" Else MsgBox "Data tidak tersimpan", vbOKOnly + vbInformation, "Informasi" End If End If End If End Sub Private Sub cmdTutup_Click() If cmdTutup.Caption = "&Tutup" Then

If MsgBox("Apakah Anda yakin mau menutup form ini?", vbYesNo + vbQuestion, "Konfirmasi") = vbYes Then Unload Me End If Else kosong nonAktif cmdTambah.ToolTipText = "Tambah data" cmdTutup.ToolTipText = "Tutup form" End If End Sub Private Sub nonAktif() txtKode.Enabled = False txtAkun.Enabled = False txtNama.Enabled = False cbGrup.Enabled = False cbStatus.Enabled = False cmdUbah.Enabled = False cmdHapus.Enabled = False cmdTambah.Enabled = True cmdTambah.Caption = "Tam&bah" cmdTutup.Caption = "&Tutup" End Sub Private Sub aktif() txtKode.Enabled = True txtAkun.Enabled = True txtNama.Enabled = True cbGrup.Enabled = True cbStatus.Enabled = True End Sub Private Sub kosong() txtKode = "" txtAkun = "" txtNama = "" cbGrup = "" cbStatus = "" End Sub Private Sub AktifGrid() With GridData .Cols = 5

.RowHeightMin = 300 .Col = 0 .Row = 0 .Text = "No" .CellFontBold = True .ColWidth(0) = 400 .AllowUserResizing = flexResizeColumns .CellAlignment = flexAlignCenterCenter .RowHeightMin = 300 .Col = 1 .Row = 0 .Text = "No. Akun" .CellFontBold = True .ColWidth(1) = 1000 .AllowUserResizing = flexResizeColumns .CellAlignment = flexAlignCenterCenter .Col = 2 .Row = 0 .Text = "Nama Akun" .CellFontBold = True .ColWidth(2) = 3000 .AllowUserResizing = flexResizeColumns .CellAlignment = flexAlignCenterCenter .Col = 3 .Row = 0 .Text = "Grup" .CellFontBold = True .ColWidth(3) = 1500 .AllowUserResizing = flexResizeColumns .CellAlignment = flexAlignCenterCenter .Col = 4 .Row = 0 .Text = "Status" .CellFontBold = True .ColWidth(4) = 800

.AllowUserResizing = flexResizeColumns .CellAlignment = flexAlignCenterCenter End With End Sub Sub TampilGrid() Dim baris As Integer GridData.Clear Call AktifGrid GridData.Rows = 2 baris = 0 Set Rs_Akun = New ADODB.Recordset Rs_Akun.Open "SELECT * FROM Akun", KonekDB, adOpenDynamic, adLockOptimistic If Rs_Akun.BOF Then Exit Sub Else With Rs_Akun .MoveFirst Do While Not .EOF On Error Resume Next baris = baris + 1 GridData.Rows = baris + 1 GridData.TextMatrix(baris, 0) = baris GridData.TextMatrix(baris, 1) = !No_Akun GridData.TextMatrix(baris, 2) = !Nm_Akun GridData.TextMatrix(baris, 3) = !Grup_Akun GridData.TextMatrix(baris, 4) = !Status_Akun .MoveNext Loop End With End If End Sub Private Sub cmdUbah_Click() If MsgBox("Apakah Anda yakin mau mengubah data ini..??", vbYesNo + vbQuestion, "Konfirmasi") = vbYes Then SQL = ""

SQL = "UPDATE Akun SET Nm_Akun='" & txtNama.Text & "',Grup_Akun='" & cbGrup.Text & "',Status_Akun='" & cbStatus.Text & "' WHERE No_Akun='" & txtKode.Text & "'" KonekDB.Execute SQL, , adCmdText SQL = "" SQL = "UPDATE m_GL SET Nm_Akun='" & txtNama.Text & "' WHERE No_Akun='" & txtKode.Text & "'" KonekDB.Execute SQL, , adCmdText kosong nonAktif TampilGrid MsgBox "Data berhasil diubah!", vbInformation + vbOKOnly, "Informasi" End If End Sub Private Sub Form_Activate() Rs_Akun.Requery End Sub Private Sub Form_Load() BukaDatabase nonAktif TampilGrid End Sub Private Sub GridData_DblClick() GridBaris = GridData.Row Set Rs_Akun = New ADODB.Recordset Rs_Akun.Open " SELECT * FROM Akun WHERE No_Akun='" & GridData.TextMatrix(GridBaris, 1) & "'", KonekDB, adOpenDynamic, adLockOptimistic If Rs_Akun.BOF Then MsgBox "TABEL MASIH KOSONG!", vbOKOnly + vbInformation, "Error" Exit Sub Else Rs_Akun.MoveFirst Do While Not Rs_Akun.EOF

On Error Resume Next txtKode.Text = Left(Rs_Akun!No_Akun, 3) txtAkun.Text = Right(Rs_Akun!No_Akun, 3) txtNama.Text = Rs_Akun!Nm_Akun cbGrup.Text = Rs_Akun!Grup_Akun cbStatus.Text = Rs_Akun!Status_Akun Rs_Akun.MoveNext Loop cmdUbah.Enabled = True cmdHapus.Enabled = True cmdTutup.Caption = "Ba&tal" cmdTambah.Caption = "&Tambah" cmdTambah.Enabled = False cmdTutup.ToolTipText = "Batal" aktif cbGrup.Enabled = False txtKode.Enabled = False txtAkun.Enabled = False txtNama.SetFocus End If End Sub Private Sub txtAkun_KeyPress(KeyAscii As Integer) If KeyAscii = 13 Then txtNama.SetFocus End If End Sub Private Sub txtNama_KeyPress(KeyAscii As Integer) If KeyAscii = 13 Then cbStatus.SetFocus End If End Sub 4. Form Pembelian Barang Dim i, baris As Integer Dim rs_Kode, rs_Supplier As Recordset Private Sub cbKdSupplier_Click() Set rs_Supplier = New ADODB.Recordset

rs_Supplier.Open "SELECT Nm_Supplier FROM Supplier WHERE Kd_Supplier='" & cbKdSupplier.Text & "'", KonekDB, adOpenDynamic, adLockOptimistic If Not rs_Supplier.EOF Then txtSupplier.Text = rs_Supplier!Nm_Supplier End If End Sub Private Sub cmdAdd_Click() On Error Resume Next If txtKode = "" Then MsgBox "ID Barang tidak boleh kosong..!!", vbInformation + vbOKOnly, "Informasi" txtKode.SetFocus ElseIf txtNama = "" Then MsgBox "Kode Barang tidak terdaftar..!", vbInformation + vbOKOnly, "Informasi" txtKode = "" txtQty = "" txtKode.SetFocus ElseIf txtHarga = "" Then MsgBox "Harga barang tidak boleh kosong..!!", vbInformation + vbOKOnly, "Informasi" txtHarga.SetFocus ElseIf Not IsNumeric(txtHarga) Then MsgBox "Harga barang harus diisi dengan tipe Number!", vbInformation + vbOKOnly, "Informasi" txtHarga = "" txtHarga.SetFocus ElseIf txtQty = "" Then MsgBox "Jumlah barang tidak boleh kosong..!!", vbInformation + vbOKOnly, "Informasi" txtQty.SetFocus ElseIf Not IsNumeric(txtQty) Then MsgBox "Jumlah barang harus diisi dengan tipe Number!", vbInformation + vbOKOnly, "Informasi" txtQty = "" txtQty.SetFocus Else

GridData.Rows = baris + 1 GridData.TextMatrix(baris, 0) = baris GridData.TextMatrix(baris, 1) = txtKode.Text GridData.TextMatrix(baris, 2) = txtNama.Text GridData.TextMatrix(baris, 3) = txtHarga.Text GridData.TextMatrix(baris, 4) = txtQty.Text GridData.TextMatrix(baris, 5) = txtSubTotal.Text txtTotal.Text = Val(txtTotal.Text) + Val(txtSubTotal.Text) baris = baris + 1 txtKode = "" txtNama = "" txtHarga = "" txtQty = "" txtSubTotal = "" txtKode.SetFocus End If Rs_Barang.Requery End Sub Private Sub cmdBatal_Click() kosong End Sub Private Sub cmdCari_Click() frmCariBrg1.Show End Sub Private Sub cmdSimpan_Click() If baris <> 1 Then If txtNo = "" Then MsgBox "No. Beli tidak boleh kosong!", vbOKOnly + vbInformation, "Informasi" txtNo.SetFocus Else 'Proses penyimpanan ke Pembelian SQL = "" SQL = "INSERT INTO Pembelian VALUES('" & txtNo.Text & "','" & txtTanggal.Text & "','" & cbKdSupplier.Text & "','" & txtTotal.Text & "')" KonekDB.Execute SQL, , adCmdText 'Proses penyimpanan ke Detail_Beli For i = 1 To baris - 1

SQL = "" SQL = "INSERT INTO Detail_Beli VALUES('" & txtNo.Text & "','" & GridData.TextMatrix(i, 1) & "','" & GridData.TextMatrix(i, 2) & "','" & GridData.TextMatrix(i, 3) & "','" & GridData.TextMatrix(i, 4) & "','" & GridData.TextMatrix(i, 5) & "')" KonekDB.Execute SQL, , adCmdText Dim StokBaru As Single Dim Kode As String StokBaru = Val(GridData.TextMatrix(i, 4)) Kode = GridData.TextMatrix(i, 1) SQL = "" SQL = "UPDATE Barang SET Stok_Barang=Stok_Barang + " & StokBaru & " WHERE Kd_Barang='" & Kode & "'" KonekDB.Execute SQL, , adCmdText Next i MsgBox "Transaksi Pembelian Barang telah tersimpan.", vbInformation + vbOKOnly, "Informasi" kosong buatNO txtKode.SetFocus End If Else MsgBox "Maaf! Transaksi Pembelian Barang masih kosong.", vbOKOnly + vbInformation, "Informasi" End If End Sub Private Sub cmdTutup_Click() If MsgBox("Apakah Anda yakin mau menutup form ini??", vbYesNo + vbQuestion, "Konfirmasi") = vbYes Then Unload Me End If End Sub Private Sub Form_Load() BukaDatabase buatNO txtTanggal = Format(Date, "dd/MM/yyyy") kosong Set rs_Kode = New ADODB.Recordset

rs_Kode.Open "SELECT Kd_Supplier FROM Supplier ORDER BY Kd_Supplier", KonekDB, adOpenDynamic, adLockOptimistic cbKdSupplier.Clear Do While Not rs_Kode.EOF cbKdSupplier.AddItem rs_Kode!Kd_Supplier rs_Kode.MoveNext Loop End Sub Private Sub kosong() txtKode = "" txtNama = "" txtHarga = "" txtQty = "" txtSubTotal = "" txtTotal = "" cbKdSupplier = "" txtSupplier = "" baris = 1 GridData.Clear GridData.Rows = 2 AktifGrid End Sub Private Sub buatNO() Dim Kd As String Dim KodeBaru As String SQL = "SELECT * FROM Pembelian" Set Rs_Data = New ADODB.Recordset Rs_Data.Open SQL, KonekDB, adLockBatchOptimistic Rs_Data.Requery With Rs_Data If .BOF Then txtNo.Text = "NB-00001" Exit Sub Else .MoveLast Kd = !No_Beli

adOpenDynamic,

Kd = Val(Right(Kd, 5)) Kd = Kd + 1 End If KodeBaru = "NB-" & Format(Kd, "00000") End With txtNo.Text = KodeBaru End Sub Private Sub AktifGrid() With GridData .Cols = 6 .RowHeightMin = 300 .Col = 0 .Row = 0 .Text = "No" .CellFontBold = True .ColWidth(0) = 400 .AllowUserResizing = flexResizeColumns .CellAlignment = flexAlignCenterCenter .RowHeightMin = 300 .Col = 1 .Row = 0 .Text = "Kode" .CellFontBold = True .ColWidth(1) = 1000 .AllowUserResizing = flexResizeColumns .CellAlignment = flexAlignCenterCenter .Col = 2 .Row = 0 .Text = "Nama Barang" .CellFontBold = True .ColWidth(2) = 2500 .AllowUserResizing = flexResizeColumns .CellAlignment = flexAlignCenterCenter .Col = 3 .Row = 0 .Text = "Harga"

.CellFontBold = True .ColWidth(3) = 1000 .AllowUserResizing = flexResizeColumns .CellAlignment = flexAlignCenterCenter .Col = 4 .Row = 0 .Text = "Jumlah" .CellFontBold = True .ColWidth(4) = 1000 .AllowUserResizing = flexResizeColumns .CellAlignment = flexAlignCenterCenter .Col = 5 .Row = 0 .Text = "Sub Total" .CellFontBold = True .ColWidth(5) = 1200 .AllowUserResizing = flexResizeColumns .CellAlignment = flexAlignCenterCenter End With End Sub Private Sub TampilBarang() If txtKode <> "" Then SQL = "" SQL = "SELECT * FROM Barang WHERE Kd_Barang='" & txtKode.Text & "'" Set Rs_Barang = New ADODB.Recordset Rs_Barang.Open SQL, KonekDB, adOpenDynamic, adLockOptimistic If Not Rs_Barang.BOF Then txtNama = Rs_Barang.Fields!Nm_Barang txtHarga = Rs_Barang.Fields!Harga_Beli txtHarga.SetFocus Else txtNama = "" txtHarga = "" txtQty = "" txtSubTotal = ""

End If End If End Sub Private Sub txtHarga_KeyPress(KeyAscii As Integer) If KeyAscii = 13 Then txtQty.SetFocus End If End Sub Private Sub txtKode_KeyPress(KeyAscii As Integer) If KeyAscii = 13 Then If txtKode = "" Then cmdSimpan.SetFocus End If End If End Sub Private Sub txtQty_Change() If txtQty <> "" Then txtSubTotal = Val(txtHarga.Text) * Val(txtQty.Text) Else txtSubTotal = "" End If End Sub Private Sub txtQty_KeyPress(KeyAscii As Integer) If KeyAscii = 13 Then cmdAdd.SetFocus End If End Sub Private Sub txtKode_Change() TampilBarang End Sub 5. Form Penjualan Barang Dim i, baris As Integer Dim status As String Dim isSimpan As Boolean Private Sub cmdAdd_Click() On Error Resume Next If txtID = "" Then MsgBox "ID Barang tidak boleh kosong..!!", vbInformation + vbOKOnly, "Informasi"

txtID.SetFocus ElseIf txtNama = "" Then MsgBox "Kode Barang tidak terdaftar..!", vbInformation + vbOKOnly, "Informasi" txtID = "" txtQty = "" txtID.SetFocus ElseIf txtHarga = "" Then MsgBox "Harga barang tidak boleh kosong..!!", vbInformation + vbOKOnly, "Informasi" txtHarga.SetFocus ElseIf Not IsNumeric(txtHarga) Then MsgBox "Harga barang harus diisi dengan tipe Number!", vbInformation + vbOKOnly, "Informasi" txtHarga = "" txtHarga.SetFocus ElseIf txtQty = "" Then MsgBox "Jumlah barang tidak boleh kosong..!!", vbInformation + vbOKOnly, "Informasi" txtQty.SetFocus ElseIf Not IsNumeric(txtQty) Then MsgBox "Jumlah barang harus diisi dengan tipe Number!", vbInformation + vbOKOnly, "Informasi" txtQty = "" txtQty.SetFocus Else GridData.Rows = baris + 1 GridData.TextMatrix(baris, 0) = baris GridData.TextMatrix(baris, 1) = txtID.Text GridData.TextMatrix(baris, 2) = txtNama.Text GridData.TextMatrix(baris, 3) = txtHarga.Text GridData.TextMatrix(baris, 4) = txtQty.Text GridData.TextMatrix(baris, 5) = txtSubTotal.Text GridData.TextMatrix(baris, 6) = txtHrgPokok.Text GridData.TextMatrix(baris, 7) = txtSubTotalHPP.Text txtTotalHarga.Text = Val(txtTotalHarga.Text) + Val(txtSubTotal.Text) txtTotalHPP.Text = Val(txtTotalHPP.Text) + Val(txtSubTotalHPP.Text)

lblDisplay.Caption = "Rp. " & Format(txtTotalHarga, "###,###") baris = baris + 1 txtID = "" txtNama = "" txtSatuan = "" txtHarga = "" txtQty = "" txtSubTotal = "" txtID.SetFocus End If Rs_Barang.Requery End Sub Private Sub cmdBatal_Click() kosong End Sub Private Sub Simpan() If txtNo = "" Then MsgBox "No. Beli tidak boleh kosong!", vbOKOnly + vbInformation, "Informasi" txtNo.SetFocus Else SQL = "SELECT * FROM Penjualan WHERE Nota='" & txtNo.Text & "'" Set Rs_JualBrg = New ADODB.Recordset Rs_JualBrg.Open SQL, KonekDB, adOpenDynamic, adLockOptimistic If Rs_JualBrg.BOF Then 'Proses penyimpanan ke Penjualan SQL = "" SQL = "INSERT INTO Penjualan VALUES('" & txtNo.Text & "','" & txtTanggal.Text & "','" & txtTotalHarga.Text & "','" & txtTotalHPP.Text & "','" & txtBayar.Text & "','" & txtKembali.Text & "')" KonekDB.Execute SQL, , adCmdText 'Proses penyimpanan ke Detail_Jual For i = 1 To baris - 1 SQL = ""

SQL = "INSERT INTO Detail_Jual VALUES('" & txtNo.Text & "','" & GridData.TextMatrix(i, 1) & "','" & GridData.TextMatrix(i, 2) & "','" & GridData.TextMatrix(i, 3) & "','" & GridData.TextMatrix(i, 4) & "','" & GridData.TextMatrix(i, 5) & "','" & GridData.TextMatrix(i, 6) & "','" & GridData.TextMatrix(i, 7) & "')" KonekDB.Execute SQL, , adCmdText Dim StokBaru As Single Dim Kode As String StokBaru = Val(GridData.TextMatrix(i, 4)) Kode = GridData.TextMatrix(i, 1) SQL = "" SQL = "UPDATE Barang SET Stok_Barang=Stok_Barang - " & StokBaru & " WHERE Kd_Barang='" & Kode & "'" KonekDB.Execute SQL, , adCmdText Next i isSimpan = True Else isSimpan = False End If End If End Sub Private Sub cmdTutup_Click() If MsgBox("Apakah Anda yakin mau menutup form ini??", vbYesNo + vbQuestion, "Konfirmasi") = vbYes Then Unload Me End If End Sub Private Sub cmdCari_Click() frmCariBrg2.Show End Sub Private Sub Form_Load() BukaDatabase buatNO txtTanggal = Format(Date, "dd/MM/yyyy") kosong End Sub Private Sub kosong()

lblDisplay.Caption = "" txtID = "" txtNama = "" txtHarga = "" txtQty = "" txtSubTotal = "" txtTotalHarga = "" txtBayar = "" txtKembali = "" baris = 1 GridData.Clear GridData.Rows = 2 AktifGrid isSimpan = False End Sub Private Sub buatNO() Dim Kd As String Dim KodeBaru As String SQL = "SELECT * FROM Penjualan" Set Rs_Data = New ADODB.Recordset Rs_Data.Open SQL, KonekDB, adLockBatchOptimistic Rs_Data.Requery With Rs_Data If .BOF Then txtNo.Text = "NJ-00001" Exit Sub Else .MoveLast Kd = !Nota Kd = Val(Right(Kd, 5)) Kd = Kd + 1 End If KodeBaru = "NJ-" & Format(Kd, "00000") End With txtNo.Text = KodeBaru End Sub Private Sub AktifGrid()

adOpenDynamic,

With GridData .Cols = 8 .RowHeightMin = 300 .Col = 0 .Row = 0 .Text = "No" .CellFontBold = True .ColWidth(0) = 600 .AllowUserResizing = flexResizeColumns .CellAlignment = flexAlignCenterCenter .RowHeightMin = 300 .Col = 1 .Row = 0 .Text = "Kode" .CellFontBold = True .ColWidth(1) = 1000 .AllowUserResizing = flexResizeColumns .CellAlignment = flexAlignCenterCenter .Col = 2 .Row = 0 .Text = "Nama Barang" .CellFontBold = True .ColWidth(2) = 3200 .AllowUserResizing = flexResizeColumns .CellAlignment = flexAlignCenterCenter .Col = 3 .Row = 0 .Text = "Harga" .CellFontBold = True .ColWidth(3) = 1500 .AllowUserResizing = flexResizeColumns .CellAlignment = flexAlignCenterCenter .Col = 4 .Row = 0 .Text = "Jumlah"

.CellFontBold = True .ColWidth(4) = 1000 .AllowUserResizing = flexResizeColumns .CellAlignment = flexAlignCenterCenter .Col = 5 .Row = 0 .Text = "Sub Total" .CellFontBold = True .ColWidth(5) = 1700 .AllowUserResizing = flexResizeColumns .CellAlignment = flexAlignCenterCenter .Col = 6 .Row = 0 .Text = "Hrg Pokok" .CellFontBold = True .ColWidth(6) = 1700 .AllowUserResizing = flexResizeColumns .CellAlignment = flexAlignCenterCenter .Col = 7 .Row = 0 .Text = "SubTotal HPP" .CellFontBold = True .ColWidth(7) = 1700 .AllowUserResizing = flexResizeColumns .CellAlignment = flexAlignCenterCenter End With End Sub Sub TampilGrid() Dim baris As Integer GridData.Clear Call AktifGrid GridData.Rows = 2 baris = 0 Set Rs_Jual = New ADODB.Recordset

Rs_Jual.Open "SELECT * FROM Penjualan", KonekDB, adOpenDynamic, adLockOptimistic If Rs_Jual.BOF Then Exit Sub Else With Rs_Jual .MoveFirst Do While Not .EOF On Error Resume Next baris = baris + 1 GridData.Rows = baris + 1 GridData.TextMatrix(baris, 0) = baris GridData.TextMatrix(baris, 1) = !Kd_Barang GridData.TextMatrix(baris, 2) = !Nm_Barang GridData.TextMatrix(baris, 3) = !Harga_Jual GridData.TextMatrix(baris, 4) = !Jml_Jual GridData.TextMatrix(baris, 5) = !Sub_Total .MoveNext Loop End With End If End Sub Private Sub TampilBarang() If txtID <> "" Then SQL = "" SQL = "SELECT * FROM Barang WHERE Kd_Barang='" & txtID.Text & "'" Set Rs_Barang = New ADODB.Recordset Rs_Barang.Open SQL, KonekDB, adOpenDynamic, adLockOptimistic If Not Rs_Barang.BOF Then txtNama = Rs_Barang.Fields!Nm_Barang txtHarga = Rs_Barang.Fields!Harga_Jual txtHrgPokok = Rs_Barang.Fields!Harga_Beli txtQty.SetFocus Else txtNama = "" txtHarga = "" txtQty = ""

txtSubTotal = "" End If End If End Sub Private Sub txtBayar_Change() txtKembali = "" lblDisplay.Caption = "Rp. " & Format(txtBayar, "###,###") End Sub Private Sub txtBayar_KeyPress(KeyAscii As Integer) If KeyAscii = 13 Then If txtBayar = "" Then MsgBox "Jumlah Bayar harus diisi..!", vbInformation + vbOKOnly, "Informasi" Else txtKembali.Text = Val(txtBayar) - Val(txtTotalHarga) txtKembali.SetFocus End If End If End Sub Private Sub txtHarga_KeyPress(KeyAscii As Integer) If KeyAscii = 13 Then txtQty.SetFocus End If End Sub Private Sub txtID_KeyPress(KeyAscii As Integer) If KeyAscii = 13 Then txtBayar.SetFocus End If End Sub Private Sub txtKembali_GotFocus() If baris <> 1 Then If txtKembali < 0 Then txtKembali = "" MsgBox "Jumlah pembayaran tidak mencukupi..!", vbCritical + vbOKOnly, "Perhatian" txtBayar.SetFocus Else If txtKembali <> "0" Then lblDisplay.Caption = "Rp. " & Format(txtKembali, "###,###")

ElseIf txtKembali = "0" Then lblDisplay.Caption = "Rp. 0" End If 'On Error Resume Next Simpan If isSimpan = True Then DELaporan.rsNota.Filter = "Nota='" & txtNo & "'" With rptNota .Refresh .Sections("Section2").Controls("lblNota").Caption = "Nota : " & txtNo.Text .Sections("Section2").Controls("lblTanggal").Caption = "Tanggal : " & txtTanggal.Text .Sections("Section5").Controls("lblTotalHarga").Caption = Format(txtTotalHarga.Text, "#,#") .Sections("Section5").Controls("lblBayar").Caption = Format(txtBayar.Text, "#,#") .Sections("Section5").Controls("lblKembali").Caption = Format(txtKembali.Text, "#,#") .Refresh .Show End With End If End If Else MsgBox "Maaf! Transaksi Penjualan masih kosong.", vbOKOnly + vbInformation, "Informasi" txtBayar = "" txtKembali = "" txtID.SetFocus End If End Sub Private Sub txtKembali_KeyPress(KeyAscii As Integer) If KeyAscii = 13 Then If MsgBox("Transaksi baru??", vbQuestion + vbYesNo, "Konfirmasi") = vbYes Then kosong buatNO txtID.SetFocus

End If End If End Sub Private Sub txtQty_KeyPress(KeyAscii As Integer) If KeyAscii = 13 Then If txtHarga <> "" And txtQty <> "" Then txtSubTotal = Val(txtQty) * Val(txtHarga) txtSubTotalHPP = Val(txtQty) * Val(txtHrgPokok) cmdAdd.SetFocus End If End If End Sub Private Sub txtID_Change() TampilBarang End Sub 6. Form Jurnal Transaksi Dim tNoAkunDebet, tNoAkunKredit, tgl As String Dim tNomDebet, tNomKredit, tDebet, tKredit As Single Dim totNomDebet, totNomKredit, totDebet, totKredit As Single Private Sub cmdBatal_Click() kosong buatNO End Sub Private Sub cmdCariD_Click() frmCariAkunD.Show End Sub Private Sub cmdSimpan_Click() If txtNoDebet = "" Then MsgBox "No. Akun Debet tidak boleh kosong..!!", vbInformation + vbOKOnly, "Informasi" txtNoDebet.SetFocus ElseIf txtNoKredit = "" Then MsgBox "No. Akun Kredit tidak boleh kosong..!!", vbInformation + vbOKOnly, "Informasi" txtNoKredit.SetFocus ElseIf txtNominal = "" Then MsgBox "Nominal tidak boleh kosong..!!", vbInformation + vbOKOnly, "Informasi" txtNominal.SetFocus

ElseIf txtKeterangan = "" Then MsgBox "Keterangan tidak boleh kosong..!!", vbInformation + vbOKOnly, "Informasi" txtKeterangan.SetFocus Else SQL = "" SQL = "INSERT INTO Jurnal VALUES('" & txtNo.Text & "','" & dtTanggal.Value & "','" & tgl & "','" & txtNoDebet.Text & "','" & txtNmDebet.Text & "', '" & txtNominal.Text & "', '" & txtNoKredit & "', '" & txtNmKredit.Text & "', '" & txtNominal & "', '" & txtKeterangan.Text & "')" KonekDB.Execute SQL, , adCmdText SQL = "" SQL = "UPDATE m_GL SET MutasiDebet='" & totNomDebet & "' WHERE No_Akun='" & txtNoDebet.Text & "'" KonekDB.Execute SQL, , adCmdText SQL = "" SQL = "UPDATE m_GL SET MutasiKredit='" & totNomKredit & "' WHERE No_Akun='" & txtNoKredit.Text & "'" KonekDB.Execute SQL, , adCmdText If totDebet <> 0 Then SQL = "" SQL = "UPDATE m_GL SET SaldoAwal='" & totDebet & "' WHERE No_Akun='" & tNoAkunDebet & "'" KonekDB.Execute SQL, , adCmdText End If If totKredit <> 0 Then SQL = "" SQL = "UPDATE m_GL SET SaldoAwal='" & totKredit & "' WHERE No_Akun='" & tNoAkunKredit & "'" KonekDB.Execute SQL, , adCmdText End If nominal = Val(txtNominal.Text) If Left(txtNoDebet, 3) = "400" Or Left(txtNoDebet, 3) = "500" Then SQL = ""

SQL = "UPDATE m_GL SET MutasiDebet=MutasiDebet + " & nominal & " WHERE No_Akun='300300'" ElseIf Left(txtNoKredit, 3) = "400" Or Left(txtNoKredit, 3) = "500" Then SQL = "" SQL = "UPDATE m_GL SET MutasiKredit=MutasiKredit + " & nominal & " WHERE No_Akun='300300'" End If KonekDB.Execute SQL, , adCmdText MsgBox "Jurnal Transaksi telah tersimpan...!!", vbInformation + vbOKOnly, "Informasi" kosong buatNO txtNoDebet.SetFocus End If End Sub Private Sub cmdTutup_Click() If MsgBox("Apakah Anda yakin mau menutup form ini??", vbYesNo + vbQuestion, "Konfirmasi") = vbYes Then Unload Me End If End Sub Private Sub cmdCariK_Click() frmCariAkunK.Show End Sub Private Sub Form_Load() BukaDatabase kosong tgl = Year(dtTanggal) buatNO End Sub Private Sub kosong() txtNo.Text = "" dtTanggal.Value = Date txtNoDebet.Text = "" txtNmDebet.Text = "" txtNoKredit.Text = "" txtNmKredit.Text = "" txtNominal.Text = ""

txtKeterangan.Text = "" dtTanggal = Date End Sub Private Sub buatNO() Dim Kd As String Dim KodeBaru As String SQL = "SELECT * FROM Jurnal WHERE Tahun_Periode='" & tgl & "'" Set Rs_Jurnal = New ADODB.Recordset Rs_Jurnal.Open SQL, KonekDB, adOpenDynamic, adLockBatchOptimistic Rs_Jurnal.Requery With Rs_Jurnal If .BOF Then txtNo.Text = "J-00001" Exit Sub Else .MoveLast Kd = !No_Jurnal Kd = Val(Right(Kd, 5)) Kd = Kd + 1 End If KodeBaru = "J-" & Format(Kd, "00000") End With txtNo.Text = KodeBaru End Sub Private Sub txtKeterangan_KeyPress(KeyAscii As Integer) If KeyAscii = 13 Then cmdSimpan.SetFocus End If End Sub Private Sub txtNmDebet_KeyPress(KeyAscii As Integer) If KeyAscii = 13 Then txtNoKredit.SetFocus End If End Sub Private Sub txtNmKredit_KeyPress(KeyAscii As Integer) If KeyAscii = 13 Then

txtNominal.SetFocus End If End Sub Private Sub txtNoDebet_Change() If txtNoDebet <> "" Then TampilAkunDebet End If End Sub Private Sub txtNoDebet_KeyPress(KeyAscii As Integer) If KeyAscii = 13 Then txtNoKredit.SetFocus End If End Sub Private Sub txtNoKredit_KeyPress(KeyAscii As Integer) If KeyAscii = 13 Then txtNominal.SetFocus End If End Sub Private Sub txtNoKredit_Change() If txtNoKredit <> "" Then TampilAkunKredit End If End Sub Private Sub TampilAkunDebet() SQL = "" SQL = "SELECT * FROM m_GL WHERE No_Akun='" & txtNoDebet.Text & "'" Set Rs_Akun = New ADODB.Recordset Rs_Akun.Open SQL, KonekDB, adOpenDynamic, adLockOptimistic If Not Rs_Akun.BOF Then txtNmDebet = Rs_Akun.Fields!Nm_Akun tNomDebet = Rs_Akun.Fields!MutasiDebet Else txtNmDebet = "" tNomDebet = 0 End If If Left(txtNoDebet.Text, 3) = "400" Then

tNoAkunDebet = "410000" ElseIf Left(txtNoDebet.Text, 3) = "500" Then tNoAkunDebet = "510000" Else tNoAkunDebet = "" End If SQL = "" SQL = "SELECT * FROM m_GL WHERE No_Akun='" & tNoAkunDebet & "'" Set Rs_Debet = New ADODB.Recordset Rs_Debet.Open SQL, KonekDB, adOpenDynamic, adLockOptimistic If Not Rs_Debet.BOF Then tDebet = Rs_Debet.Fields!SaldoAwal Else tDebet = 0 End If End Sub Private Sub TampilAkunKredit() SQL = "" SQL = "SELECT * FROM m_GL WHERE No_Akun='" & txtNoKredit.Text & "'" Set Rs_Akun = New ADODB.Recordset Rs_Akun.Open SQL, KonekDB, adOpenDynamic, adLockOptimistic If Not Rs_Akun.BOF Then txtNmKredit = Rs_Akun.Fields!Nm_Akun tNomKredit = Rs_Akun.Fields!MutasiKredit Else txtNmKredit = "" tNomKredit = 0 End If If Left(txtNoKredit.Text, 3) = "400" Then tNoAkunKredit = "410000" ElseIf Left(txtNoKredit.Text, 3) = "500" Then tNoAkunKredit = "510000"

Else tNoAkunKredit = "" End If SQL = "" SQL = "SELECT * FROM m_GL WHERE No_Akun='" & tNoAkunKredit & "'" Set Rs_Kredit = New ADODB.Recordset Rs_Kredit.Open SQL, KonekDB, adOpenDynamic, adLockOptimistic If Not Rs_Kredit.BOF Then tKredit = Rs_Kredit.Fields!SaldoAwal Else tKredit = 0 End If End Sub Private Sub txtNominal_Change() If txtNominal <> "" Then totNomDebet = Val(txtNominal.Text) + tNomDebet totNomKredit = Val(txtNominal.Text) + tNomKredit If tDebet <> 0 And Left(txtNoDebet, 3) = "400" Then totDebet = tDebet - Val(txtNominal.Text) ElseIf tDebet <> 0 And Left(txtNoDebet, 3) = "500" Then totDebet = tDebet + Val(txtNominal.Text) End If If tKredit <> 0 And Left(txtNoKredit, 3) = "400" Then totKredit = tKredit + Val(txtNominal.Text) ElseIf tKredit <> 0 And Left(txtNoKredit, 3) = "500" Then totKredit = tKredit - Val(txtNominal.Text) End If Else totNomDebet = 0 totNomKredit = 0 totDebet = 0 totKredit = 0 End If End Sub Private Sub txtNominal_KeyPress(KeyAscii As Integer) If KeyAscii = 13 Then

txtKeterangan.SetFocus End If End Sub

You might also like