+ All Categories

Modul

Date post: 26-Oct-2014
Category:
Upload: endrow-sakidh-jiwa
View: 51 times
Download: 10 times
Share this document with a friend
Popular Tags:
27
Modul Privat Vb.Net Ade Hidayat Santoso – ade.staf.isi-ska.ac.id Pertemuan Pertama Materi : Membuat Aplikasi Database Billing Management Sistem Sub Materi : Membuat Database di Microsoft SQL Server 2005 : Membuat Projek Baru di Microsoft Visual Studio 2005 : Membuat Dataset di Microsoft Visual Studio 2005 : Membuat Form Deposit Membuat Database di Microsoft SQL Server 2005 Langkah Pembuatan: 1. Buka aplikasi MS SQL Server 2005 2. Buat sebuah database baru dengan nama “Billing” 3. Susun dan buat tabel-tabel database sesuai gambar berikut: 4. Buat tabel dengan nama “Deposit” dengan field seperti berikut: 5. Buat tabel dengan nama “Member” dengan field seperti berikut: 1
Transcript
Page 1: Modul

Modul Privat Vb.NetAde Hidayat Santoso – ade.staf.isi-ska.ac.id

Pertemuan Pertama

Materi : Membuat Aplikasi Database Billing Management Sistem

Sub Materi : Membuat Database di Microsoft SQL Server 2005

: Membuat Projek Baru di Microsoft Visual Studio 2005

: Membuat Dataset di Microsoft Visual Studio 2005

: Membuat Form Deposit

Membuat Database di Microsoft SQL Server 2005

Langkah Pembuatan:

1. Buka aplikasi MS SQL Server 2005

2. Buat sebuah database baru dengan nama “Billing”

3. Susun dan buat tabel-tabel database sesuai gambar berikut:

4. Buat tabel dengan nama “Deposit” dengan field seperti berikut:

5. Buat tabel dengan nama “Member” dengan field seperti berikut:

1

Page 2: Modul

Modul Privat Vb.NetAde Hidayat Santoso – ade.staf.isi-ska.ac.id

6. Buat tabel dengan nama “Setting” dengan field seperti berikut:

7. Buat tabel dengan nama “Transaction” dengan field seperti berikut:

Membuat Projek Baru di Microsoft Visual Studio 2005

Langkah Pembuatan:

1. Buka aplikasi Microsoft Visual Studio 2005

2. Buat sebuah project baru -> Pilih menu “New Project”

2

Page 3: Modul

Modul Privat Vb.NetAde Hidayat Santoso – ade.staf.isi-ska.ac.id

3. Beri nama “Billing” untuk projek baru ini

4. Ada beberapa jendela kerja di Microsoft Visual Studio, diantaranya:

a) Jendela “Toolbox”

Kotak dialog ToolBox ini berisi semua komponen yang akan dipakai untuk membuat sebuah project

aplikasi. ToolBox terbagi menjadi beberapa sub bagian untuk mempermudah pemakai

menggunakannya diantaranya :

3

Page 4: Modul

Modul Privat Vb.NetAde Hidayat Santoso – ade.staf.isi-ska.ac.id

Common Controls

Containers

Menus and Toolbar

Data

Component

Printing

Dialog

Cristal Report (Tambahan jika sudah menginstal Cristal Report)

b) Jendela “Solutions Explorer”

Kotak dialog ini digunakan untuk mengelola (menambah, menghapus, mengganti Item) project yang

dibuat. Di kotak ini kita bisa menambahkan sebuah Form Baru maupun Item Baru yang akan

disisipkan kedalam project yang dibuat. Dalam Kotak ini terdapat 2 Tab Control yaitu Solution

Explorer dan Data Sources.

Data Sources digunakan untuk mengelola DataSet yang sudah kita buat. DataSet sendiri terdiri dari

konfigurasi Tabel Tabel Database.

c) Jendela “Property”

4

Page 5: Modul

Modul Privat Vb.NetAde Hidayat Santoso – ade.staf.isi-ska.ac.id

Kotak dialog ini digunakan untuk memberikan pengaturan pada objek yang ada di Form Project.

d) Jendela “Event”

Kotak dialog Event ini digunakan untuk memberikan perintah pada objek sesuai dengan kejadian

yang diingginkan.

Membuat Dataset di Microsoft Visual Studio 2005

Langkah Pembuatan:

1. Buat sebuah data source baru -> pilih icon “Add New Data Sourses” di tab Data Sources

5

Page 6: Modul

Modul Privat Vb.NetAde Hidayat Santoso – ade.staf.isi-ska.ac.id

2. Pihih “Database” pada pilihan Tipe Data Sources

3. Buat koneksi baru dengan cara Pilih “New Connection”

4. Pilih Data Source “Microsoft SQL Server” dan pilih Data Provider “.Net For SQL Server”

6

Page 7: Modul

Modul Privat Vb.NetAde Hidayat Santoso – ade.staf.isi-ska.ac.id

5. Pilih server Name sesuai dengan nama komputer yang dipakai untuk server database ->

NamaKomputer\SQLEXPRESS

6. Isikan pilihan database name “Billing”

7. Klik “Test Connection” untuk mengetahui apakah koneksinya sukses atau gagal

8. Klik “Ok"

Membuat Deposit Form di Microsoft Visual Studio 2005

Langkah Pembuatan:

1. Buat Windows Form baru seperti gambar dibawah ini:

2. Sisipkan kode berikut di bagian atas setelah “Public Class DepositForm”

Private varDepositId As String

Public Property Deposit_Id() As String Get Return varDepositId End Get Set(ByVal value As String) varDepositId = value End Set End Property

3. Buat Query Adapter di Dataset pada tabel “Deposit” dengan nama “FillByMonthLastTrxId “ yang

berfungsi sebagai filter untuk membuat kode “Id Deposit” secara otomatis, querynya seperti

berikut:

SELECT Deposit_Id, Member_Id, Name, Date, Price, Status

FROM Deposit

WHERE (SUBSTRING(Deposit_Id, 5, 2) = @Year) AND

(SUBSTRING(Deposit_Id, 7, 2) = @Month)

7

Page 8: Modul

Modul Privat Vb.NetAde Hidayat Santoso – ade.staf.isi-ska.ac.id

ORDER BY Deposit_Id DESC

4. Buat baris kode di CodeForm “DepositForm” untuk membuat auto generate-nya, seperti berikut:

Private Sub GetTrxId() Dim LastTrxId As Integer Dim Year, Month As String Dim tmp_Dep_Id As String

tmp_Dep_Id = "" Year = Microsoft.VisualBasic.Right(Me.DateDateTimePicker.Value.Year.ToString, 2) Month = Me.DateDateTimePicker.Value.Month.ToString.PadLeft(2, "0")

Me.DepositTableAdapter.FillByMonthLastTrxId(Me.BillingDataSet.Deposit, Year, Month) If Me.BillingDataSet.Deposit.Rows.Count > 0 Then tmp_Dep_Id = "DEP-" & Microsoft.VisualBasic.Right(Me.DateDateTimePicker.Value.Year.ToString, 2) & Me.DateDateTimePicker.Value.Month.ToString.PadLeft(2, "0") LastTrxId = CInt(Microsoft.VisualBasic.Right(Me.BillingDataSet.Deposit.Item(0).Deposit_Id, 4)) + 1 tmp_Dep_Id = tmp_Dep_Id & "-" & LastTrxId.ToString.PadLeft(5, "0") Me.Deposit_IdTextBox.Text = tmp_Dep_Id Else tmp_Dep_Id = "DEP-" & Microsoft.VisualBasic.Right(Me.DateDateTimePicker.Value.Year.ToString, 2) & Me.DateDateTimePicker.Value.Month.ToString.PadLeft(2, "0") & "-" & "00001" Me.Deposit_IdTextBox.Text = tmp_Dep_Id End IfEnd Sub

5. Buat Query Adapter dengan nama “InsertQuery” pada tabel “Deposit”, seperti berikut:

INSERT INTO [Deposit] ([Deposit_Id], [Member_Id], [Name], [Date],

[Price], [Status]) VALUES (@Deposit_Id, @Member_Id, @Name, @Date,

@Price, @Status)

6. Buat event “Click” pada tombol “Save Data”. Fungsinya untuk menyimpan data ke database,

kodenya seperti berikut:

Private Sub DepositBindingNavigatorSaveItem_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles DepositBindingNavigatorSaveItem.Click 'Me.Validate() 'Me.DepositBindingSource.EndEdit() 'Me.DepositTableAdapter.Update(Me.BillingDataSet.Deposit)

8

Page 9: Modul

Modul Privat Vb.NetAde Hidayat Santoso – ade.staf.isi-ska.ac.id

Me.DepositTableAdapter.InsertQuery(Me.Deposit_IdTextBox.Text, Me.Member_IdTextBox.Text, Me.NameTextBox.Text, Me.DateDateTimePicker.Value, Me.PriceTextBox.Text, "COMPLETE") MsgBox("Transaksi disimpan") Me.DepositBindingNavigatorSaveItem.Enabled = FalseEnd Sub

7. Buat kode di event “Load” seperti berikut:

Private Sub DepositForm_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load 'TODO: This line of code loads data into the 'BillingDataSet.Deposit' table. You can move, or remove it, as needed. 'Me.DepositTableAdapter.Fill(Me.BillingDataSet.Deposit) If Me.varDepositId = "" Then Me.Member_IdTextBox.Text = "" Me.NameTextBox.Text = "" Me.StatusTextBox.Text = "COMPLETE" 'Me.User_IdTextBox.Text = CurrentUser.User_Id Me.PriceTextBox.Text = "" GetTrxId()

Else Me.DepositTableAdapter.FillByDepositId(Me.BillingDataSet.Deposit, Me.varDepositId) Me.Deposit_IdTextBox.Text = Me.BillingDataSet.Deposit.Item(0).Deposit_Id Me.Member_IdTextBox.Text = Me.BillingDataSet.Deposit.Item(0).Member_Id Me.NameTextBox.Text = Me.BillingDataSet.Deposit.Item(0).Name Me.DateDateTimePicker.Value = Me.BillingDataSet.Deposit.Item(0)._Date Me.StatusTextBox.Text = Me.BillingDataSet.Deposit.Item(0).Status If Me.StatusTextBox.Text = "COMPLETE" Or Me.StatusTextBox.Text = "VOID" Then Me.DepositBindingNavigatorSaveItem.Enabled = False Else Me.DepositBindingNavigatorSaveItem.Enabled = True End If

End If

End Sub

8. Yang terakhir berikan event perintah “Click” di tombol cari anggota, seperti berikut:

Private Sub SearchMemberButton_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles SearchMemberButton.Click My.Forms.MemberListForm.ShowDialog() If My.Forms.MemberListForm.MemberId <> "" Then Me.Member_IdTextBox.Text = My.Forms.MemberListForm.MemberId Me.NameTextBox.Text = My.Forms.MemberListForm.MemberName End If End Sub

9

Page 10: Modul

Modul Privat Vb.NetAde Hidayat Santoso – ade.staf.isi-ska.ac.id

10

Page 11: Modul

Modul Privat Vb.NetAde Hidayat Santoso – ade.staf.isi-ska.ac.id

Pertemuan Kedua

Materi : Membuat Aplikasi Database Billing Management Sistem

Sub Materi : Membuat Form Deposit List

: Membuat Form Member

Membuat Deposit List Form di Microsoft Visual Studio 2005

Langkah Pembuatan:

1. Buat Windows Form baru seperti gambar dibawah ini:

2. Buat Beberapa Query Adapter di Dataset seperti berikut :

FillByDateRange

SELECT Deposit_Id, Member_Id, Name, Date, Price, Status

FROM Deposit

WHERE (Date BETWEEN @From AND @to)

FillByNameLike

SELECT Deposit_Id, Member_Id, Name, Date, Price, Status

FROM Deposit

WHERE (Name LIKE '%' + @Name + '%')

UpdateStatus

UPDATE Deposit

SET Status = @Status

WHERE (Deposit_Id = @Deposit_Id)

3. Buat event pada tombol “Show All” seperti berikut:

11

Page 12: Modul

Modul Privat Vb.NetAde Hidayat Santoso – ade.staf.isi-ska.ac.id

Private Sub ShowallToolStripButton4_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles ShowallToolStripButton4.Click Me.DepositTableAdapter.Fill(Me.BillingDataSet.Deposit) End Sub

4. Buat event pada tombol “Add New” seperti berikut:

Private Sub AddToolStripButton1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles AddToolStripButton1.Click My.Forms.DepositForm.ShowDialog() End Sub

5. Buat event pada tombol “View” seperti berikut:

Private Sub ViewToolStripButton2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles ViewToolStripButton2.Click If Me.DepositDataGridView.SelectedRows.Count <> 1 Then MsgBox("Pilih hanya satu List untuk melakukan View") Exit Sub End If

If Not Me.DepositDataGridView.CurrentRow Is Nothing Then My.Forms.DepositForm.Deposit_Id = Me.DepositDataGridView.CurrentRow.Cells("DataGridViewTextBoxColumn1").Value My.Forms.DepositForm.Show() End If End Sub

6. Buat event pada tombol “Void” seperti berikut:

Private Sub VoidToolStripButton3_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles VoidToolStripButton3.Click Dim Dep_ID As String Dep_ID = Me.DepositDataGridView.CurrentRow.Cells("DataGridViewTextBoxColumn1").Value If Me.DepositDataGridView.SelectedRows.Count <> 1 Then MsgBox("Pilih hanya satu List untuk melakukan Void") Exit Sub End If Me.DepositTableAdapter.UpdateStatus("VOID", Dep_ID) MsgBox("Transaksi dibatalkan") End Sub

7. Buat event pada tombol “Go” seperti berikut:

Private Sub SearchButton_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles SearchButton.Click Me.DepositTableAdapter.FillByNameLike(Me.BillingDataSet.Deposit, Me.SearchTextBox.Text) End Sub

12

Page 13: Modul

Modul Privat Vb.NetAde Hidayat Santoso – ade.staf.isi-ska.ac.id

Membuat Member Form di Microsoft Visual Studio 2005

Langkah Pembuatan:

1. Buat Windows Form baru seperti gambar dibawah ini:

2. Buat Beberapa Query Adapter di Dataset seperti berikut :

FillByMemberId

SELECT Member_Id, Name, Address, Birthday, Sex, Phone

FROM Member

WHERE (Member_Id = @MemberId)

InsertQuery

INSERT INTO [dbo].[Member] ([Member_Id], [Name], [Address],

[Birthday], [Sex], [Phone]) VALUES (@Member_Id, @Name, @Address,

@Birthday, @Sex, @Phone);

UpdateQuery

UPDATE Member

SET Name = @Name, Address = @Address, Birthday =

@Birthday, Sex = @Sex, Phone = @Phone

WHERE (Member_Id = @Original_Member_Id);

3. Sisipkan kode berikut di bagian atas setelah “Public Class MemberForm”

Private varMemberId As String Public Property Member_Id() As String Get Return varMemberId End Get Set(ByVal value As String) varMemberId = value End Set

13

Page 14: Modul

Modul Privat Vb.NetAde Hidayat Santoso – ade.staf.isi-ska.ac.id

End Property

4. Sisipkan kode berikut di bagian event “Load” pada MemberForm

Private Sub MemberForm_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load 'TODO: This line of code loads data into the 'BillingDataSet.Member' table. You can move, or remove it, as needed. 'Me.MemberTableAdapter.Fill(Me.BillingDataSet.Member) If Me.varMemberId = "" Then Me.Member_IdTextBox.ReadOnly = False Me.NameTextBox.ReadOnly = False Me.AddressTextBox.ReadOnly = False Me.BirthdayDateTimePicker.Enabled = True Me.SexTextBox.SelectedIndex = -1 Me.PhoneTextBox.ReadOnly = False Me.UpdateToolStripButton.Enabled = False

Else Me.MemberTableAdapter.FillByMemberId(Me.BillingDataSet.Member, Me.varMemberId) Me.SexTextBox.Text = Me.BillingDataSet.Member.Item(0).Sex Me.MemberBindingNavigatorSaveItem.Enabled = False End If End Sub

5. Buat event pada tombol “Save Data” seperti berikut:

Private Sub MemberBindingNavigatorSaveItem_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MemberBindingNavigatorSaveItem.Click Me.Validate() Me.MemberBindingSource.EndEdit() 'Me.MemberTableAdapter.Update(Me.BillingDataSet.Member) Me.MemberTableAdapter.InsertQuery(Me.Member_IdTextBox.Text, Me.NameTextBox.Text, Me.AddressTextBox.Text, Me.BirthdayDateTimePicker.Value, Me.SexTextBox.Text, Me.PhoneTextBox.Text) MsgBox("Data berhasil disimpan") Me.Member_IdTextBox.ReadOnly = True Me.NameTextBox.ReadOnly = True Me.AddressTextBox.ReadOnly = True Me.BirthdayDateTimePicker.Enabled = False Me.SexTextBox.Enabled = False Me.PhoneTextBox.ReadOnly = True Me.MemberBindingNavigatorSaveItem.Enabled = False

End Sub

6. Buat event pada tombol “Update” seperti berikut:

Private Sub ToolStripButton1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles UpdateToolStripButton.Click Me.MemberTableAdapter.UpdateQuery(Me.NameTextBox.Text, Me.AddressTextBox.Text, Me.BirthdayDateTimePicker.Value, Me.SexTextBox.Text, Me.PhoneTextBox.Text, Me.Member_IdTextBox.Text) MsgBox("Data berhasil diupdate") Me.MemberTableAdapter.FillByMemberId(Me.BillingDataSet.Member, Me.Member_IdTextBox.Text)

14

Page 15: Modul

Modul Privat Vb.NetAde Hidayat Santoso – ade.staf.isi-ska.ac.id

End Sub

15

Page 16: Modul

Modul Privat Vb.NetAde Hidayat Santoso – ade.staf.isi-ska.ac.id

Pertemuan Ketiga

Materi : Membuat Aplikasi Database Billing Management Sistem

Sub Materi : Membuat Form Member List

: Membuat Form Transaction List

Membuat Member List Form di Microsoft Visual Studio 2005

Langkah Pembuatan:

1. Buat Windows Form baru seperti gambar dibawah ini:

2. Buat Beberapa Query Adapter di Dataset seperti berikut :

DeleteQuery

DELETE FROM Member

WHERE (Member_Id = @Original_Member_Id)

FillByNameLike

SELECT Member_Id, Name, Address, Birthday, Sex, Phone

FROM Member

WHERE (Name LIKE '%' + @Name + '%')

3. Sisipkan kode berikut di bagian atas setelah “Public Class MemberListForm”

Private varMemberId As String Private varMemberName As String

Public Property MemberId() As String Get Return varMemberId End Get Set(ByVal value As String) varMemberId = value End Set

16

Page 17: Modul

Modul Privat Vb.NetAde Hidayat Santoso – ade.staf.isi-ska.ac.id

End Property Public Property MemberName() As String Get Return varMemberName End Get Set(ByVal value As String) MemberName = value End Set End Property

4. Buat event pada tombol “View All” seperti berikut:

Private Sub ViewallToolStripButton_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles ViewallToolStripButton.Click Me.MemberTableAdapter.Fill(Me.BillingDataSet.Member) End Sub

5. Buat event pada tombol “Add New” seperti berikut:

Private Sub ToolStripButton2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles ToolStripButton2.Click My.Forms.MemberForm.Show() End Sub

6. Buat event pada tombol “View” seperti berikut:

Private Sub ToolStripButton1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles ToolStripButton1.Click If Me.MemberDataGridView.SelectedRows.Count <> 1 Then MsgBox("Pilih hanya satu List untuk melakukan View") Exit Sub End If

If Not Me.MemberDataGridView.CurrentRow Is Nothing Then My.Forms.MemberForm.Member_Id = Me.MemberDataGridView.CurrentRow.Cells("DataGridViewTextBoxColumn1").Value My.Forms.MemberForm.Show() End If

End Sub

7. Buat event pada tombol “Delete” seperti berikut:

Private Sub DeleteToolStripButton_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles DeleteToolStripButton.Click If MsgBox("Anda ingin menghapus?", MsgBoxStyle.YesNo, "Delete") = MsgBoxResult.Yes Then Me.MemberTableAdapter.DeleteQuery(Me.MemberDataGridView.CurrentRow.Cells("DataGridViewTextBoxColumn1").Value) Else Exit Sub End If End Sub

17

Page 18: Modul

Modul Privat Vb.NetAde Hidayat Santoso – ade.staf.isi-ska.ac.id

8. Buat event pada tombol “Go” seperti berikut:

Private Sub SearchButton_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles SearchButton.Click If Me.SearchTextBox.Text.Trim = "" Then Me.MemberTableAdapter.Fill(Me.BillingDataSet.Member) Else Me.MemberTableAdapter.FillByNameLike(Me.BillingDataSet.Member, Me.SearchTextBox.Text) End If End Sub

Membuat Transaction List Form di Microsoft Visual Studio 2005

Langkah Pembuatan:

1. Buat Windows Form baru seperti gambar dibawah ini:

2. Buat Beberapa Query Adapter di Dataset seperti berikut :

FillByDateRange

SELECT Date, Desk, End_Time, Member_Id, Name, Price, Start_Time, Status,

Transaction_Id, User_Id FROM [Transaction] WHERE (Date BETWEEN @from AND

@to)

FillByTransactionId

SELECT Date, Desk, End_Time, Member_Id, Name, Price, Start_Time, Status,

Transaction_Id, User_Id FROM [Transaction] WHERE (Transaction_Id =

@Transaction_Id)

FillByNameLike

18

Page 19: Modul

Modul Privat Vb.NetAde Hidayat Santoso – ade.staf.isi-ska.ac.id

SELECT Date, Desk, End_Time, Member_Id, Name, Price, Start_Time,

Status, Transaction_Id, User_Id

FROM [Transaction]

WHERE (Name LIKE '%' + @Name + '%')

UpdateStatus

UPDATE [Transaction]

SET Status = @Status

WHERE (Transaction_Id = @Original_Transaction_Id);

3. Buat sebuah function yang berfungsi untuk memberikan warna peringatan di Grid seperti

berikut:

Private Sub Mark() Dim Status As String = ""

For i As Integer = 0 To Me.TransactionDataGridView.Rows.Count - 1 Status = Me.TransactionDataGridView.Rows(i).Cells("DataGridViewTextBoxColumn6").Value If Status = "PLAY" Then Me.TransactionDataGridView.Rows(i).DefaultCellStyle.BackColor = Color.Khaki End If Next

End Sub

4. Sisipkan kode berikut di bagian event “Paint” pada DataGrid Transaction List Form

Private Sub TransactionDataGridView_Paint(ByVal sender As System.Object, ByVal e As System.Windows.Forms.PaintEventArgs) Handles TransactionDataGridView.Paint Mark() End Sub

5. Buat event pada tombol “View All” seperti berikut:

Private Sub ViewallToolStripButton_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles ViewallToolStripButton.Click Me.TransactionTableAdapter.Fill(Me.BillingDataSet.Transaction) End Sub

6. Buat event pada tombol “Add New” seperti berikut:

Private Sub ToolStripButton1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles ToolStripButton1.Click My.Forms.TransactionForm.ShowDialog() End Sub

19

Page 20: Modul

Modul Privat Vb.NetAde Hidayat Santoso – ade.staf.isi-ska.ac.id

7. Buat event pada tombol “View” seperti berikut:

Private Sub ViewToolStripButton1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles ViewToolStripButton1.Click If Me.TransactionDataGridView.SelectedRows.Count <> 1 Then MsgBox("Pilih hanya satu List untuk melakukan View") Exit Sub End If

If Not Me.TransactionDataGridView.CurrentRow Is Nothing Then My.Forms.TransactionForm.Trans_Id = Me.TransactionDataGridView.CurrentRow.Cells("DataGridViewTextBoxColumn1").Value My.Forms.TransactionForm.Show() End If End Sub

8. Buat event pada tombol “Void” seperti berikut:

Private Sub ToolStripButton2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles ToolStripButton2.Click Dim Trans_ID As String Trans_ID = Me.TransactionDataGridView.CurrentRow.Cells("DataGridViewTextBoxColumn1").Value If Me.TransactionDataGridView.SelectedRows.Count <> 1 Then MsgBox("Pilih hanya satu List untuk melakukan Void") Exit Sub End If Me.TransactionTableAdapter.UpdateStatus("VOID", Trans_ID) MsgBox("Transaksi dibatalkan") End Sub

9. Buat event pada tombol “Go” pada kotak pencarian berdasarkan Transaction Id seperti berikut:

Private Sub TransactionSearchButton_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles TransactionSearchButton.Click If Me.TransactionTextBox.Text.Trim = "" Then Me.TransactionTableAdapter.Fill(Me.BillingDataSet.Transaction) Else Me.TransactionTableAdapter.FillByTransactionId(Me.BillingDataSet.Transaction, Me.TransactionTextBox.Text) End If End Sub

10. Buat event pada tombol “Go” pada kotak pencarian berdasarkan Nama seperti berikut:

Private Sub NameSearchButton_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles NameSearchButton.Click If Me.NameTextBox.Text.Trim = "" Then Me.TransactionTableAdapter.Fill(Me.BillingDataSet.Transaction) Else

20

Page 21: Modul

Modul Privat Vb.NetAde Hidayat Santoso – ade.staf.isi-ska.ac.id

Me.TransactionTableAdapter.FillByNameLike(Me.BillingDataSet.Transaction, Me.NameTextBox.Text) End If End Sub

21

Page 22: Modul

Modul Privat Vb.NetAde Hidayat Santoso – ade.staf.isi-ska.ac.id

Pertemuan Keempat

Materi : Membuat Aplikasi Database Billing Management Sistem

Sub Materi : Membuat Form Transaction

Membuat Transaction Form di Microsoft Visual Studio 2005

Langkah Pembuatan:

1. Buat Windows Form baru seperti gambar dibawah ini:

2. Buat Beberapa Query Adapter di Dataset seperti berikut :

FillByMonthLastTrxId

SELECT Transaction_Id, Member_Id, Name, Date, Start_Time, End_Time,

Price, Desk, User_Id, Status

FROM [Transaction]

WHERE (SUBSTRING(Transaction_Id, 5, 2) = @Year) AND

(SUBSTRING(Transaction_Id, 7, 2) = @Month)

ORDER BY Transaction_Id DESC

FillByStatus

SELECT Date, Desk, End_Time, Member_Id, Name, Price, Start_Time, Status,

Transaction_Id, User_Id FROM [Transaction] WHERE (Status = @Status)

22

Page 23: Modul

Modul Privat Vb.NetAde Hidayat Santoso – ade.staf.isi-ska.ac.id

FillByStatusPlay()

SELECT Transaction_Id, Member_Id, Name, Date, Start_Time, End_Time,

Price, Desk, User_Id, Status

FROM [Transaction]

WHERE (Status = 'PLAY')

FinishPlay

UPDATE [Transaction]

SET End_Time = @End_Time, Status = @Status

WHERE (Transaction_Id = @Original_Transaction_Id);

InsertQuery

INSERT INTO [Transaction] ([Transaction_Id], [Member_Id], [Name],

[Date], [Start_Time], [End_Time], [Price], [Desk], [User_Id], [Status])

VALUES (@Transaction_Id, @Member_Id, @Name, @Date, @Start_Time,

@End_Time, @Price, @Desk, @User_Id, @Status);

SaveTransaction

UPDATE [Transaction]

SET Price = @Price, Desk = @Desk

WHERE (Transaction_Id = @Original_Transaction_Id);

3. Sisipkan kode berikut di bagian atas setelah “Public Class MemberListForm”

Private varTransId As String

Public Property Trans_Id() As String Get Return varTransId End Get Set(ByVal value As String) varTransId = value End Set End Property

4. Buat baris kode di CodeForm “TransactionForm” untuk membuat auto generate-nya, seperti

berikut:

Private Sub GetTrxId() Dim LastTrxId As Integer Dim Year, Month As String Dim tmp_Trans_Id As String

tmp_Trans_Id = "" Year = Microsoft.VisualBasic.Right(Me.DateDateTimePicker.Value.Year.ToString, 2) Month = Me.DateDateTimePicker.Value.Month.ToString.PadLeft(2, "0") Me.TransactionTableAdapter.FillByMonthLastTrxId(Me.BillingDataSet.Transaction, Year, Month)

23

Page 24: Modul

Modul Privat Vb.NetAde Hidayat Santoso – ade.staf.isi-ska.ac.id

If Me.BillingDataSet.Transaction.Rows.Count > 0 Then tmp_Trans_Id = "TRN-" & Microsoft.VisualBasic.Right(Me.DateDateTimePicker.Value.Year.ToString, 2) & Me.DateDateTimePicker.Value.Month.ToString.PadLeft(2, "0") LastTrxId = CInt(Microsoft.VisualBasic.Right(Me.BillingDataSet.Transaction.Item(0).Transaction_Id, 4)) + 1 tmp_Trans_Id = tmp_Trans_Id & "-" & LastTrxId.ToString.PadLeft(5, "0") Me.Transaction_IdTextBox.Text = tmp_Trans_Id Else tmp_Trans_Id = "TRN-" & Microsoft.VisualBasic.Right(Me.DateDateTimePicker.Value.Year.ToString, 2) & Me.DateDateTimePicker.Value.Month.ToString.PadLeft(2, "0") & "-" & "00001" Me.Transaction_IdTextBox.Text = tmp_Trans_Id End If

End Sub

5. Buat kode di event “Load” seperti berikut:

Private Sub TransactionForm_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load 'TODO: This line of code loads data into the 'BillingDataSet.Transaction' table. You can move, or remove it, as needed. 'Me.TransactionTableAdapter.Fill(Me.BillingDataSet.Transaction) If Me.varTransId = "" Then Me.Member_IdTextBox.Text = "" Me.NameTextBox.Text = "" Me.StatusTextBox.Text = "PLAY" Me.User_IdTextBox.Text = CurrentUser.User_Id Me.StopButton.Enabled = False Me.StartButton.Enabled = True Me.SaveButton.Enabled = False GetTrxId()

Else Me.TransactionTableAdapter.FillByTransactionId(Me.BillingDataSet.Transaction, Me.varTransId) Me.Transaction_IdTextBox.Text = Me.BillingDataSet.Transaction.Item(0).Transaction_Id Me.Member_IdTextBox.Text = Me.BillingDataSet.Transaction.Item(0).Member_Id Me.NameTextBox.Text = Me.BillingDataSet.Transaction.Item(0).Name Me.DateDateTimePicker.Value = Me.BillingDataSet.Transaction.Item(0)._Date Me.StatusTextBox.Text = Me.BillingDataSet.Transaction.Item(0).Status If Me.StatusTextBox.Text = "FINISH" Or Me.StatusTextBox.Text = "VOID" Then Me.StopButton.Enabled = False Else Me.StopButton.Enabled = True End If

24

Page 25: Modul

Modul Privat Vb.NetAde Hidayat Santoso – ade.staf.isi-ska.ac.id

Me.User_IdTextBox.Text = Me.BillingDataSet.Transaction.Item(0).User_Id Me.PriceTextBox.Text = Me.BillingDataSet.Transaction.Item(0).Price Me.DeskTextBox.Text = Me.BillingDataSet.Transaction.Item(0).Desk Me.StartButton.Enabled = False Me.SaveButton.Enabled = False End If Me.Timer.Start() End Sub

6. Buat Function untuk membuat jam digital pada form, seperti berikut:

Private Sub Timer_Tick(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Timer.Tick Dim jamku As Date jamku = DateTime.Now Jam.Text = jamku.Hour.ToString() Menit.Text = jamku.Minute.ToString() Detik.Text = jamku.Second.ToString() End Sub

7. Buat Function untuk menghitung lama penggunaan, seperti berikut:

Private Sub GetSelisih() Dim mulai, selesai As Date Dim selisih_menit As Decimal Dim harga, total As Double

Me.TransactionTableAdapter.FillByTransactionId(Me.BillingDataSet.Transaction, Me.Transaction_IdTextBox.Text) mulai = Me.BillingDataSet.Transaction.Item(0).Start_Time selesai = Me.BillingDataSet.Transaction.Item(0).End_Time selisih_menit = DateDiff(DateInterval.Minute, mulai, selesai) 'Me.DeskTextBox.Text = selisih_menit

Me.SettingTableAdapter.Fill(Me.BillingDataSet.Setting) If Me.BillingDataSet.Setting.Count > 1 Then MsgBox("Gagal. Terdapat dua setting harga rental, hubungi administrator.") Exit Sub Else harga = Me.BillingDataSet.Setting.Item(0).Price End If total = selisih_menit * harga Me.PriceTextBox.Text = total End Sub

8. Buat event pada tombol “Search Member” seperti berikut:

Private Sub SearchMemberButton_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles SearchMemberButton.Click My.Forms.MemberListForm.ShowDialog() If My.Forms.MemberListForm.MemberId <> "" Then Me.Member_IdTextBox.Text = My.Forms.MemberListForm.MemberId Me.NameTextBox.Text = My.Forms.MemberListForm.MemberName

25

Page 26: Modul

Modul Privat Vb.NetAde Hidayat Santoso – ade.staf.isi-ska.ac.id

End If End Sub

9. Buat event pada tombol “Start” seperti berikut:

Private Sub StartButton_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles StartButton.Click If Me.Transaction_IdTextBox.Text = "" Then MsgBox("Id Transaksi harus diisi") Exit Sub ElseIf Me.Member_IdTextBox.Text = "" Then MsgBox("Id Member belum diisi") Exit Sub End If

Me.TransactionTableAdapter.FillByStatusPLAY(Me.BillingDataSet.Transaction)

For i As Integer = 0 To Me.TransactionTableAdapter.FillByStatusPLAY(Me.BillingDataSet.Transaction) If Me.BillingDataSet.Transaction.Count = 0 Then ElseIf Me.BillingDataSet.Transaction.Item(0).Member_Id = Me.Member_IdTextBox.Text Then MsgBox("Member tercatat masih bermain. status = PLAY") Exit Sub End If Next

Me.TransactionTableAdapter.InsertQuery(Me.Transaction_IdTextBox.Text, Me.Member_IdTextBox.Text, Me.NameTextBox.Text, Me.DateDateTimePicker.Value, Now, Now, 0, Me.DeskTextBox.Text, Me.User_IdTextBox.Text, "PLAY") MsgBox("Transaksi dimulai") Me.StartButton.Enabled = False Me.StopButton.Enabled = True End Sub

10. Buat event pada tombol “Stop” seperti berikut:

Private Sub StopButton_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles StopButton.Click If Me.Transaction_IdTextBox.Text = "" Then MsgBox("Tidak ditemukan transaksi") Exit Sub Else

Me.TransactionTableAdapter.FinishPlay(Now, "FINISH", Me.Transaction_IdTextBox.Text) MsgBox("Waktu selesai, perubahan sudah disimpan.") GetSelisih() Me.TransactionTableAdapter.FillByTransactionId(Me.BillingDataSet.Transaction, Me.Transaction_IdTextBox.Text) Me.StopButton.Enabled = False Me.StartButton.Enabled = False

26

Page 27: Modul

Modul Privat Vb.NetAde Hidayat Santoso – ade.staf.isi-ska.ac.id

Me.SaveButton.Enabled = True

End If End Sub

11. Buat event pada tombol “Save” seperti berikut:

Private Sub SaveButton_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles SaveButton.Click Me.TransactionTableAdapter.SaveTransaction(Me.PriceTextBox.Text, Me.DeskTextBox.Text, Me.Transaction_IdTextBox.Text) MsgBox("Transaksi selesai.") Me.PriceTextBox.ReadOnly = False Me.DeskTextBox.ReadOnly = False Me.SaveButton.Enabled = False End Sub

27


Recommended