
dan ini codingnya :
Imports System.Drawing.Printing
Imports System.Data.OleDb
Public Class Form1
Public zu As Long
Public zb As Decimal
Private PageNumber As Integer
Private Offset As Integer
Private PrintFont As New System.Drawing.Font("Tahoma", 9, Drawing.FontStyle.Bold)
Private PaperSize As New System.Drawing.Printing.PaperSize("custom Size", 850, 450)
Private Conn As OleDbConnection = Nothing
Private cmd As OleDbCommand = Nothing
Private sql As String = Nothing
Private reader As OleDbDataReader = Nothing
Private da As OleDbDataAdapter = Nothing
Function Connect()
If Not Conn Is Nothing Then
Conn.Close()
End If
Conn.Open()
Return Conn
End Function
Function Closedd()
Conn.Close()
Return Conn
End Function
Sub uang()
Dim PrintPreview As New System.Windows.Forms.PrintPreviewDialog
pruang.DocumentName = "Kwitansi"
pruang.DefaultPageSettings.PaperSize = PaperSize
PrintPreview.Document = pruang
PrintPreview.Left = 0
PrintPreview.Top = 0
PrintPreview.Height = My.Computer.Screen.Bounds.Height
PrintPreview.Width = My.Computer.Screen.Bounds.Width
PrintPreview.PrintPreviewControl.Zoom = 1
PrintPreview.ShowDialog()
End Sub
Sub przm()
Dim PrintPreview As New System.Windows.Forms.PrintPreviewDialog
zm.DocumentName = "Kwitansi"
zm.DefaultPageSettings.PaperSize = PaperSize
PrintPreview.Document = zm
PrintPreview.Left = 0
PrintPreview.Top = 0
PrintPreview.Height = My.Computer.Screen.Bounds.Height
PrintPreview.Width = My.Computer.Screen.Bounds.Width
PrintPreview.PrintPreviewControl.Zoom = 1
PrintPreview.ShowDialog()
End Sub
Sub beras()
Dim PrintPreview As New System.Windows.Forms.PrintPreviewDialog
prberas.DocumentName = "Kwitansi"
prberas.DefaultPageSettings.PaperSize = PaperSize
PrintPreview.Document = prberas
PrintPreview.Left = 0
PrintPreview.Top = 0
PrintPreview.Height = My.Computer.Screen.Bounds.Height
PrintPreview.Width = My.Computer.Screen.Bounds.Width
PrintPreview.PrintPreviewControl.Zoom = 1
PrintPreview.ShowDialog()
End Sub
Sub prcampur()
Dim PrintPreview As New System.Windows.Forms.PrintPreviewDialog
campur.DocumentName = "Kwitansi"
campur.DefaultPageSettings.PaperSize = PaperSize
PrintPreview.Document = campur
PrintPreview.Left = 0
PrintPreview.Top = 0
PrintPreview.Height = My.Computer.Screen.Bounds.Height
PrintPreview.Width = My.Computer.Screen.Bounds.Width
PrintPreview.PrintPreviewControl.Zoom = 1
PrintPreview.ShowDialog()
End Sub
Sub bersih()
Dim Ctl As Control
Dim lbl As Control
For Each Ctl In Me.Controls
If TypeOf Ctl Is TextBox Then Ctl.Text = ""
Next
For Each lbl In Me.Controls
If TypeOf lbl Is Label Then lbl.Text = ""
Next
End Sub
Public Function Terbilang(ByVal nilai As Long) As String
Dim bilangan As String() = {"", "satu", "dua", "tiga", "empat", "lima", _
"enam", "tujuh", "delapan", "sembilan", "sepuluh", "sebelas"}
If nilai < 12 Then
Return " " & bilangan(nilai)
ElseIf nilai < 20 Then
Return Terbilang(nilai - 10) & " belas"
ElseIf nilai < 100 Then
Return (Terbilang(CInt((nilai \ 10))) & " puluh") + Terbilang(nilai Mod 10)
ElseIf nilai < 200 Then
Return " seratus" & Terbilang(nilai - 100)
ElseIf nilai < 1000 Then
Return (Terbilang(CInt((nilai \ 100))) & " ratus") + Terbilang(nilai Mod 100)
ElseIf nilai < 2000 Then
Return " seribu" & Terbilang(nilai - 1000)
ElseIf nilai < 1000000 Then
Return (Terbilang(CInt((nilai \ 1000))) & " ribu") + Terbilang(nilai Mod 1000)
ElseIf nilai < 1000000000 Then
Return (Terbilang(CInt((nilai \ 1000000))) & " juta") + Terbilang(nilai Mod 1000000)
ElseIf nilai < 1000000000000 Then
Return (Terbilang(CInt((nilai \ 1000000000))) & " milyar") + Terbilang(nilai Mod 1000000000)
ElseIf nilai < 1000000000000000 Then
Return (Terbilang(CInt((nilai \ 1000000000000))) & " trilyun") + Terbilang(nilai Mod 1000000000000)
Else
Return ""
End If
End Function
Private Sub pruang_PrintPage(ByVal sender As System.Object, ByVal e As System.Drawing.Printing.PrintPageEventArgs) Handles pruang.PrintPage
e.Graphics.DrawImage(PictureBox1.Image, 0, 0)
e.Graphics.DrawString("Kwitansi Zakat Fitrah 1433 H", New System.Drawing.Font("Bookman Old Style", 18, Drawing.FontStyle.Bold), Drawing.Brushes.Black, 250, 160)
e.Graphics.DrawString("No: " & lblfak.Text, PrintFont, Drawing.Brushes.Black, 40, 190)
e.Graphics.DrawString("Telah Diterima Dari " & txtnama.Text, PrintFont, Drawing.Brushes.Black, 40, 210)
e.Graphics.DrawString("Sebesar: Rp. " & lbljml.Text, PrintFont, Drawing.Brushes.Black, 40, 230)
e.Graphics.DrawString(Terbilang(lbljml.Text) & " Rupiah", PrintFont, Drawing.Brushes.Black, 80, 265)
e.Graphics.DrawString(StrDup(80, "_"), PrintFont, Drawing.Brushes.Black, 60, 250)
e.Graphics.DrawString(StrDup(80, "_"), PrintFont, Drawing.Brushes.Black, 65, 260)
e.Graphics.DrawString(StrDup(80, "_"), PrintFont, Drawing.Brushes.Black, 70, 270)
If txtinfak.Text = "" Then
e.Graphics.DrawString("Untuk Pembayaran Zakat Fitrah Rp. " & txjmu.Text & " (" & txtuang.Text & " Jiwa)", PrintFont, Drawing.Brushes.Black, 40, 300)
Else
e.Graphics.DrawString("Untuk Pembayaran Zakat Fitrah Rp. " & txjmu.Text & " (" & txtuang.Text & " Jiwa) & Infak Rp." & txtinfak.Text, PrintFont, Drawing.Brushes.Black, 40, 300)
End If
e.Graphics.DrawString("Parung Panjang, " & ststgl.Text, PrintFont, Drawing.Brushes.Black, 600, 320)
e.Graphics.DrawString("Ust Syahroni ", PrintFont, Drawing.Brushes.Black, 660, 400)
End Sub
Private Sub Timer1_Tick(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Timer1.Tick
stsjam.Text = TimeOfDay
ststgl.Text = Format(Now, "dd MMMM yyyy")
End Sub
Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
If Not Conn Is Nothing Then Conn.Close()
Dim ConnString As String
ConnString = "Provider=Microsoft.ACE.OLEDB.12.0;Data Source=" & Application.StartupPath & "\zakat.accdb"
Try
Conn = New OleDbConnection(ConnString)
Conn.Open()
Me.Text = "Zakat[Connected]"
Conn.Close()
Catch ex As Exception
MessageBox.Show("Koneksi Error : " + ex.Message)
End Try
Timer1.Start()
End Sub
Private Sub txtnama_KeyPress(ByVal sender As Object, ByVal e As System.Windows.Forms.KeyPressEventArgs) Handles txtnama.KeyPress
If e.KeyChar = Chr(13) Then
Dim DR As DataRow
Dim s As String
DR = SQLTable("select max(right(nofak,4)) as Nomor from tbzakatfitrah").Rows(0)
'jika berisi null atau tdk ditemukan
If DR.IsNull("Nomor") Then
s = "ZF-14330001" 'member nilai awal
Else
s = "ZF-1433" & Format(DR("Nomor") + 1, "0000")
End If
lblfak.Text = s
End If
End Sub
Private Sub txtberas_KeyPress(ByVal sender As Object, ByVal e As System.Windows.Forms.KeyPressEventArgs) Handles txtberas.KeyPress
If e.KeyChar = Chr(13) Then
Dim beras As Decimal = 3.5
Dim mb As Decimal = txtberas.Text
zb = mb * beras
txtjb.Text = zb
End If
End Sub
Private Sub btnok_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnok.Click
Connect()
Dim insertquery As String
Dim Hasil As Integer
Dim cmd As OleDbCommand
If txtuang.Text = "" Then
insertquery = ("insert into tbzakatfitrah(nofak,nama,beras,wzberas,rt,alamat,jumlah,infak)Values('" & lblfak.Text & "','" & txtnama.Text & "','" & txtjb.Text & "','" & txtberas.Text & "','" & cmbrt.Text & "','" & txtalmat.Text & "','" & lbljml.Text & "','" & txtinfak.Text & "')")
Try
cmd = New OleDbCommand(insertquery, Conn)
Hasil = cmd.ExecuteNonQuery
If Hasil > 0 Then
MessageBox.Show("Record Berhasil Dimasukan", "Sukses", MessageBoxButtons.OK, MessageBoxIcon.Information)
beras()
End If
Catch ex As OleDbException
MessageBox.Show("Failed : " & ex.Message, "Gagal", MessageBoxButtons.OK, MessageBoxIcon.Error)
End Try
ElseIf txtberas.Text = "" Then
insertquery = ("insert into tbzakatfitrah(nofak,nama,uang,wzuang,rt,alamat,jumlah,infak)Values('" & lblfak.Text & "','" & txtnama.Text & "','" & txjmu.Text & "','" & txtuang.Text & "','" & cmbrt.Text & "','" & txtalmat.Text & "','" & lbljml.Text & "','" & txtinfak.Text & "')")
Try
cmd = New OleDbCommand(insertquery, Conn)
Hasil = cmd.ExecuteNonQuery
If Hasil > 0 Then
MessageBox.Show("Record Berhasil Dimasukan", "Sukses", MessageBoxButtons.OK, MessageBoxIcon.Information)
uang()
End If
Catch ex As OleDbException
MessageBox.Show("Failed : " & ex.Message, "Gagal", MessageBoxButtons.OK, MessageBoxIcon.Error)
End Try
Else
insertquery = ("insert into tbzakatfitrah(nofak,nama,uang,beras,wzberas,wzuang,rt,alamat,jumlah,infak)Values('" & lblfak.Text & "','" & txtnama.Text & "','" & txjmu.Text & "','" & txtjb.Text & "','" & txtberas.Text & "','" & txtuang.Text & "','" & cmbrt.Text & "','" & txtalmat.Text & "','" & lbljml.Text & "','" & txtinfak.Text & "')")
Try
cmd = New OleDbCommand(insertquery, Conn)
Hasil = cmd.ExecuteNonQuery
If Hasil > 0 Then
MessageBox.Show("Record Berhasil Dimasukan", "Sukses", MessageBoxButtons.OK, MessageBoxIcon.Information)
prcampur()
End If
Catch ex As OleDbException
MessageBox.Show("Failed : " & ex.Message, "Gagal", MessageBoxButtons.OK, MessageBoxIcon.Error)
End Try
End If
Closedd()
bersih()
End Sub
Private Sub prberas_PrintPage(ByVal sender As System.Object, ByVal e As System.Drawing.Printing.PrintPageEventArgs) Handles prberas.PrintPage
e.Graphics.DrawImage(PictureBox1.Image, 0, 0)
e.Graphics.DrawString("Kwitansi Zakat Fitrah 1433 H", New System.Drawing.Font("Bookman Old Style", 18, Drawing.FontStyle.Bold), Drawing.Brushes.Black, 250, 160)
e.Graphics.DrawString("No: " & lblfak.Text, PrintFont, Drawing.Brushes.Black, 40, 210)
e.Graphics.DrawString("Telah Diterima Dari " & txtnama.Text, PrintFont, Drawing.Brushes.Black, 40, 230)
e.Graphics.DrawString("Beras Sebanyak: " & txtjb.Text & "Liter", PrintFont, Drawing.Brushes.Black, 40, 250)
If txtinfak.Text = "" Then
e.Graphics.DrawString("Untuk Pembayaran Zakat " & txtberas.Text & " Orang", PrintFont, Drawing.Brushes.Black, 40, 270)
Else
e.Graphics.DrawString("Uang Sebesar: ", PrintFont, Drawing.Brushes.Black, 40, 270)
e.Graphics.DrawString(Terbilang(txtinfak.Text) & " Rupiah", PrintFont, Drawing.Brushes.Black, 155, 270)
e.Graphics.DrawString(StrDup(80, "_"), PrintFont, Drawing.Brushes.Black, 130, 255)
e.Graphics.DrawString(StrDup(80, "_"), PrintFont, Drawing.Brushes.Black, 140, 265)
e.Graphics.DrawString(StrDup(80, "_"), PrintFont, Drawing.Brushes.Black, 150, 275)
e.Graphics.DrawString("Untuk Pembayaran Zakat " & txtberas.Text & " Orang & Infak Rp. " & txtinfak.Text, PrintFont, Drawing.Brushes.Black, 40, 300)
End If
e.Graphics.DrawString("Parung Panjang, " & ststgl.Text, PrintFont, Drawing.Brushes.Black, 600, 320)
e.Graphics.DrawString("Ust Syahroni ", PrintFont, Drawing.Brushes.Black, 660, 400)
End Sub
Private Sub campur_PrintPage(ByVal sender As System.Object, ByVal e As System.Drawing.Printing.PrintPageEventArgs) Handles campur.PrintPage
Dim br As Integer = txtberas.Text
Dim ua As Integer = txtuang.Text
Dim tot As Integer = br + ua
e.Graphics.DrawImage(PictureBox1.Image, 0, 0)
e.Graphics.DrawString("Kwitansi Zakat Fitrah 1433 H", New System.Drawing.Font("Bookman Old Style", 18, Drawing.FontStyle.Bold), Drawing.Brushes.Black, 250, 160)
e.Graphics.DrawString("No: " & lblfak.Text, PrintFont, Drawing.Brushes.Black, 40, 190)
e.Graphics.DrawString("Telah Diterima Dari " & txtnama.Text, PrintFont, Drawing.Brushes.Black, 40, 210)
e.Graphics.DrawString("Beras Sebanyak: " & txtjb.Text & " Liter", PrintFont, Drawing.Brushes.Black, 40, 230)
e.Graphics.DrawString("Uang Sebesar: ", PrintFont, Drawing.Brushes.Black, 40, 265)
e.Graphics.DrawString(Terbilang(lbljml.Text) & " Rupiah", PrintFont, Drawing.Brushes.Black, 155, 265)
e.Graphics.DrawString(StrDup(80, "_"), PrintFont, Drawing.Brushes.Black, 130, 250)
e.Graphics.DrawString(StrDup(80, "_"), PrintFont, Drawing.Brushes.Black, 140, 260)
e.Graphics.DrawString(StrDup(80, "_"), PrintFont, Drawing.Brushes.Black, 150, 270)
If txtinfak.Text = "" Then
e.Graphics.DrawString("Untuk Pembayaran Zakat Fitrah Rp" & txjmu.Text & "(" & txtuang.Text & " Jiwa) & Beras " & txtjb.Text & "Liter(" & txtberas.Text & " Jiwa)", PrintFont, Drawing.Brushes.Black, 40, 300)
Else
e.Graphics.DrawString("Untuk Pembayaran Zakat Fitrah Rp" & txjmu.Text & "(" & txtuang.Text & " Jiwa), Beras " & txtjb.Text & "Liter(" & txtberas.Text & " Jiwa) & Infak Rp." & txtinfak.Text, PrintFont, Drawing.Brushes.Black, 40, 300)
End If
e.Graphics.DrawString("Parung Panjang, " & ststgl.Text, PrintFont, Drawing.Brushes.Black, 600, 320)
e.Graphics.DrawString("Ust Syahroni ", PrintFont, Drawing.Brushes.Black, 660, 400)
End Sub
Private Sub txtuang_KeyPress(ByVal sender As Object, ByVal e As System.Windows.Forms.KeyPressEventArgs) Handles txtuang.KeyPress
If e.KeyChar = Chr(13) Then
Dim zakat As Long = 27000
Dim agt As Integer = txtuang.Text
zu = zakat * agt
lbljml.Text = zu
txjmu.Text = zu
End If
End Sub
Private Sub txtinfak_KeyPress(ByVal sender As Object, ByVal e As System.Windows.Forms.KeyPressEventArgs) Handles txtinfak.KeyPress
If e.KeyChar = Chr(13) Then
Dim infak As Long = txtinfak.Text
Dim jt As Long = zu + infak
lbljml.Text = jt
End If
End Sub
Private Sub Button2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button2.Click
Connect()
Dim insertquery As String
Dim Hasil As Integer
Dim cmd As OleDbCommand
insertquery = ("insert into tbzakatmaal(nofak,nama,nominal,rt,alamat,jumlah,infak,tgl)Values('" & lblnofak2.Text & "','" & txtnam2.Text & "','" & txtzm.Text & "','" & cmbrt2.Text & "','" & txtalmat2.Text & "','" & txtjmlzm.Text & "','" & txtinfak2.Text & "','" & ststgl.Text & "')")
Try
cmd = New OleDbCommand(insertquery, Conn)
Hasil = cmd.ExecuteNonQuery
If Hasil > 0 Then
MessageBox.Show("Record Berhasil Dimasukan", "Sukses", MessageBoxButtons.OK, MessageBoxIcon.Information)
przm()
End If
Catch ex As OleDbException
MessageBox.Show("Failed : " & ex.Message, "Gagal", MessageBoxButtons.OK, MessageBoxIcon.Error)
End Try
txtalmat2.Text = ""
txtnam2.Text = ""
txtinfak2.Text = ""
lblnofak2.Text = ""
cmbrt2.Text = ""
txtzm.Text = ""
txtjmlzm.Text = ""
Closedd()
End Sub
Private Sub txtnama_TextChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtnama.TextChanged
Dim i As Integer = txtnama.SelectionStart
txtnama.Text = StrConv(txtnama.Text, VbStrConv.ProperCase)
txtnama.SelectionStart = i
End Sub
Private Sub txtnam2_KeyPress(ByVal sender As Object, ByVal e As System.Windows.Forms.KeyPressEventArgs) Handles txtnam2.KeyPress
If e.KeyChar = Chr(13) Then
Dim DR As DataRow
Dim s As String
DR = SQLTable("select max(right(nofak,4)) as Nomor from tbzakatmaal").Rows(0)
'jika berisi null atau tdk ditemukan
If DR.IsNull("Nomor") Then
s = "ZM-14330001" 'member nilai awal
Else
s = "ZM-1433" & Format(DR("Nomor") + 1, "0000")
End If
lblnofak2.Text = s
End If
End Sub
Private Sub txtnam2_TextChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtnam2.TextChanged
Dim i As Integer = txtnam2.SelectionStart
txtnam2.Text = StrConv(txtnam2.Text, VbStrConv.ProperCase)
txtnam2.SelectionStart = i
End Sub
Private Sub txtzm_TextChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtzm.TextChanged
txtjmlzm.Text = txtzm.Text
End Sub
Private Sub txtinfak2_KeyPress(ByVal sender As Object, ByVal e As System.Windows.Forms.KeyPressEventArgs) Handles txtinfak2.KeyPress
If e.KeyChar = Chr(13) Then
Dim a As Long = txtzm.Text
Dim i As Long = txtinfak2.Text
Dim b As Long = a + i
txtjmlzm.Text = b
End If
End Sub
Private Sub zm_PrintPage(ByVal sender As System.Object, ByVal e As System.Drawing.Printing.PrintPageEventArgs) Handles zm.PrintPage
e.Graphics.DrawImage(PictureBox1.Image, 0, 0)
e.Graphics.DrawString("Kwitansi Zakat Maal", New System.Drawing.Font("Bookman Old Style", 18, Drawing.FontStyle.Bold), Drawing.Brushes.Black, 300, 160)
e.Graphics.DrawString("No: " & lblnofak2.Text, PrintFont, Drawing.Brushes.Black, 40, 190)
e.Graphics.DrawString("Telah Diterima Dari " & txtnam2.Text, PrintFont, Drawing.Brushes.Black, 40, 210)
e.Graphics.DrawString("Sebesar: Rp. " & txtjmlzm.Text, PrintFont, Drawing.Brushes.Black, 40, 230)
e.Graphics.DrawString(Terbilang(txtjmlzm.Text) & " Rupiah", PrintFont, Drawing.Brushes.Black, 80, 265)
e.Graphics.DrawString(StrDup(80, "_"), PrintFont, Drawing.Brushes.Black, 60, 250)
e.Graphics.DrawString(StrDup(80, "_"), PrintFont, Drawing.Brushes.Black, 65, 260)
e.Graphics.DrawString(StrDup(80, "_"), PrintFont, Drawing.Brushes.Black, 70, 270)
If txtinfak2.Text = "" Or txtinfak2.Text = "0" Then
e.Graphics.DrawString("Untuk Pembayaran Zakat Maal", PrintFont, Drawing.Brushes.Black, 40, 300)
Else
e.Graphics.DrawString("Untuk Pembayaran Zakat Maal & Infak", PrintFont, Drawing.Brushes.Black, 40, 300)
End If
e.Graphics.DrawString("Parung Panjang, " & ststgl.Text, PrintFont, Drawing.Brushes.Black, 600, 320)
e.Graphics.DrawString("Ust Syahroni ", PrintFont, Drawing.Brushes.Black, 660, 400)
End Sub
End Class
sekian dari saya semoga bermanfaat......
masih error ya kak?
BalasHapus