ST-RK-1.16-082-007/R- Modul Praktikum · PDF fileadalah Ms. Visual Studio 2005 dengan database...

68
Modul Praktikum ST-RK-1.16-082-007/R- Praktikan bisa mengerti tentang konsep ADO (ActiveX Data Object) connection yang diterapkan pada pembuatan aplikasi database, dengan menggunakan bahasa pemrograman Microsoft Visual Basic 6.0.

Transcript of ST-RK-1.16-082-007/R- Modul Praktikum · PDF fileadalah Ms. Visual Studio 2005 dengan database...

Page 1: ST-RK-1.16-082-007/R- Modul Praktikum · PDF fileadalah Ms. Visual Studio 2005 dengan database SQL Server 2000 yang terletak di server. ... Metode ini mengkoneksikan sebuah client

Modul Praktikum

ST-RK-1.16-082-007/R-

Praktikan bisa mengerti tentang konsep ADO (ActiveX Data Object) connection yang diterapkan pada pembuatan aplikasi

database, dengan menggunakan bahasa pemrograman

Microsoft Visual Basic 6.0.

Page 2: ST-RK-1.16-082-007/R- Modul Praktikum · PDF fileadalah Ms. Visual Studio 2005 dengan database SQL Server 2000 yang terletak di server. ... Metode ini mengkoneksikan sebuah client
Page 3: ST-RK-1.16-082-007/R- Modul Praktikum · PDF fileadalah Ms. Visual Studio 2005 dengan database SQL Server 2000 yang terletak di server. ... Metode ini mengkoneksikan sebuah client

Praktikum Pemrograman Client Server

Laboratorium Komputer – STIKOM 1

DAFTAR ISI Daftar Isi .................................................................................................. 1 Petunjuk Umum ...................................................................................... 3 MODUL 1 ................................................................................................ 5

1.1. ADO.NET....................................................................................... 6 1.2. Koneksi........................................................................................... 6 1.3. Connected Database...................................................................... 8

SqlCommand ................................................................................ 9 ExecuteReader .............................................................................. 9

Latihan ................................................................................................ 11 MODUL 2 .............................................................................................. 13

2.1. ExecuteScalar ............................................................................... 14 2.2. ExecuteNonQuery ....................................................................... 14 Latihan ................................................................................................ 16

MODUL 3 .............................................................................................. 19 3.1. Proses Bisnis ................................................................................ 20 3.2. Design Table ................................................................................ 21 3.3. Design Program........................................................................... 22 Latihan ................................................................................................ 23

MODUL 4 .............................................................................................. 25 4.1. Disconnected Database ............................................................... 26 4.2. Dataset .......................................................................................... 26 4.3. Sorting dan Filtering pada Dataset ............................................ 27 Latihan ................................................................................................ 29

MODUL 5 .............................................................................................. 31 5.1. Penambahan Data (Insert Data) ................................................. 32 5.2. Penghapusan Data (Delete Data) ............................................... 33 5.3. Pengubahan Data (Update Data) ............................................... 34 5.4. Menyimpan perubahan pada database ..................................... 34 Latihan ................................................................................................ 36

MODUL 6 .............................................................................................. 39 6.1. Membuat sebuah report ............................................................. 40 6.2. Menampilkan Report dari Aplikasi Windows ......................... 42

Crystal Report Viewer ............................................................... 42 6.3. Memfilter Data ............................................................................ 44 6.4. Passing parameter ke report ...................................................... 45 Latihan ................................................................................................ 46

MODUL 7 .............................................................................................. 49 7.1. Formula Field .............................................................................. 50

Page 4: ST-RK-1.16-082-007/R- Modul Praktikum · PDF fileadalah Ms. Visual Studio 2005 dengan database SQL Server 2000 yang terletak di server. ... Metode ini mengkoneksikan sebuah client

Praktikum Pemrograman Client Server

2 Laboratorium Komputer – STIKOM

7.2. Group Name Field ...................................................................... 52 7.3. Running Total Field .................................................................... 53 Latihan ................................................................................................ 55

MODUL 8 ............................................................................................... 57 8.1. Web Service ................................................................................. 58 8.2. SOAP, WSDL dan UDDI ............................................................ 58 8.3. Membuat Web Service ................................................................ 60 8.4. Implementasi Web Service ......................................................... 62 8.5. Web Service di WWW ................................................................ 63 Latihan ................................................................................................ 65

Page 5: ST-RK-1.16-082-007/R- Modul Praktikum · PDF fileadalah Ms. Visual Studio 2005 dengan database SQL Server 2000 yang terletak di server. ... Metode ini mengkoneksikan sebuah client

Praktikum Pemrograman Client Server

Laboratorium Komputer – STIKOM 3

Petunjuk Umum

Tools yang digunakan untuk praktikum Pemrograman Client Server adalah Ms. Visual Studio 2005 dengan database SQL Server 2000 yang terletak di server.

Pada saat pertama kali membuat project, pilih Visual Basic Projects dan Windows Application sebagai template. Untuk modul 7 web service, gunakan ASP.NET Web Service sebagai template.

Simpan di local dulu, setelah selesai baru pindahkan project web yang dibuat ke server masing-masing.

Penting: Gunakan selalu MSDN Library sebelum bertanya ke asisten/ko-asisten apabila ada kesulitan.

Page 6: ST-RK-1.16-082-007/R- Modul Praktikum · PDF fileadalah Ms. Visual Studio 2005 dengan database SQL Server 2000 yang terletak di server. ... Metode ini mengkoneksikan sebuah client

Praktikum Pemrograman Client Server

4 Laboratorium Komputer – STIKOM

Page 7: ST-RK-1.16-082-007/R- Modul Praktikum · PDF fileadalah Ms. Visual Studio 2005 dengan database SQL Server 2000 yang terletak di server. ... Metode ini mengkoneksikan sebuah client

Praktikum Pemrograman Client Server

Laboratorium Komputer – STIKOM 5

MODUL 1 ADO.NET

Respect yourself and others will respect you.

Confucius (551 BC - 479 BC)

Tujuan :

Praktikan dapat melakukan koneksi ke database SQL SERVER Praktikan dapat mengantisipasi bila terjadi error pada saat

melakukan koneksi pada database SQL SERVER Praktikan dapat menggunakan DataReader

Materi :

SqlConnection, SqlCommand, SqlDataReader

Referensi :

Visual Basic .NET How To Program Second Edition, Deitel http://www.connectionstrings.com

http://authors.aspalliance.com/aspxtreme/sys/data/sqlclient/ SqlConnectionClass.aspx

Page 8: ST-RK-1.16-082-007/R- Modul Praktikum · PDF fileadalah Ms. Visual Studio 2005 dengan database SQL Server 2000 yang terletak di server. ... Metode ini mengkoneksikan sebuah client

Praktikum Pemrograman Client Server

6 Laboratorium Komputer – STIKOM

Connection

xxxConnection

xXxTransaction

Command xxxCommand

Recordset

xXxDataReader

xXxDataAdapter

1.1. ADO.NET

ADO merupakan singkatan dari AxtiveX Data Object yang dipakai untuk mengakses data dalam suatu database seperti SQL Server, Ms Access, Oracle ataupun file seperti file Ms Excel.

Di dalam teknologi .Net, ADO classsic berkembang menjadi ADO.Net dengan beberapa perubahan seperti perubahan object recordset dalam ADO menjadi beberapa object dalam ADO.Net dan lainnya dapat dilihat seperti gambar berikut

1.2. Koneksi

Untuk membuat koneksi dengan sebuah database, hal penting yang harus diperhatikan adalah “ConnectionString”, class inilah yang akan dipakai untuk membuka suatu koneksi dengan database.

ConnectionString

Di dalam ConnectionString terdapat beberapa bagian penting yaitu:

a. Product / Provider (hanya untuk OLE DB .Net Data Provider)

Merupakan produk database yang akan kita pakai. Di dalam ADO .Net ada beberapa Data Provider, seperti :

SQL Server .Net Data Provider

Dipakai oleh SQL Server versi 6.5 keatas

OLEDB .Net Data Provider

Page 9: ST-RK-1.16-082-007/R- Modul Praktikum · PDF fileadalah Ms. Visual Studio 2005 dengan database SQL Server 2000 yang terletak di server. ... Metode ini mengkoneksikan sebuah client

Praktikum Pemrograman Client Server

Laboratorium Komputer – STIKOM 7

Dipakai oleh SQL Server 6, Access, Excel dan data source lainnya.

ODBC .Net Data Provider

Data Source yang memiliki driver ODBC

b. Server Name / Data Source

Merupakan nama server/ komputer tempat database berada

c. Database Name / Initial Catalog

Merupakan nama database yang akan dipakai

d. Security

Bagian ini akan membedakan, apakah koneksi akan dilakukan secara windows authentication atau secara user authentication, jika security yang dipakai berupa WindowsAuthentication maka user dan password tidak diisikan

e. User

Merupakan user yang dapat mengakses database tertentu dalam sebuah server

f. Password

Merupakan password dari user yang dipakai

Setiap datasource akan memiliki connectionstring yang berbeda-beda. Bisa anda lihat pada http://www.connectionstrings.com.

Hal terpenting yang harus anda ingat adalah Class SQL Server™ .NET Data Provider berada pada namespace System.Data.SqlClient. dan untuk menggunakan namespace ini anda harus import

namespace ini, yaitu dengan koding berikut:

Import System.Data.SqlClient

Ada empat buah object dasar yang akan dipakai yaitu:

Connections – digunakan untuk koneksi dan mengatur

operasi dalam database. Commands – digunakan untuk melakukan eksekusi

perintah dalam database. DataReaders – digunakan unruk membaca data secara

langsung dalam database ke dalam sebuah stream.

Page 10: ST-RK-1.16-082-007/R- Modul Praktikum · PDF fileadalah Ms. Visual Studio 2005 dengan database SQL Server 2000 yang terletak di server. ... Metode ini mengkoneksikan sebuah client

Praktikum Pemrograman Client Server

8 Laboratorium Komputer – STIKOM

DataSets dan DataAdapters – Digunakan untuk menyimpan dan memanipulasi data memori sementara dalam penyimpanan data.

Setelah kita mengenal sedikit tentang object connection, sekarang kita akan mencoba membuat suatu koneksi dengan kondisi sebagai berikut:

Object Nilai

Product Microsoft SQL Server 2000

Server Name Web-Server

Database Name Northwind

Security Windows Authentication

xConString =“Initial Catalog=Northwind;” &

_

“Data Source=Web-Server;" & _

“Integrated Security=SSPI;"

Dim xCon As New SqlConnection(xConString)

xCon.Open()

Dengan memahami penggunaan Properties dan Constructor kita bisa membuat sebuah koneksi dengan cara sebagai berikut:

xConString =“Initial Catalog=Northwind;” &

_

“Data Source=Web-Server;" & _

“Integrated Security=SSPI;"

Dim xCon As New SqlConnection()

xCon.ConnectionString = xConString

xCon.Open()

1.3. Connected Database

Salah satu metode koneksi yang ada di .Net adalah connected database. Metode ini mengkoneksikan sebuah client pada sebuah database dan mengambil atau memanipulasi data dalam database tersebut secara langsung.

Setelah setelah sebuah client terkoneksi dengan sebuah database, kita akan bisa mengakses memanipulasi database tersebut. Untuk melakukan hal tersebut kita membutuhkan object SqlCommand.

Page 11: ST-RK-1.16-082-007/R- Modul Praktikum · PDF fileadalah Ms. Visual Studio 2005 dengan database SQL Server 2000 yang terletak di server. ... Metode ini mengkoneksikan sebuah client

Praktikum Pemrograman Client Server

Laboratorium Komputer – STIKOM 9

SqlCommand

Untuk menjalankan sebuah perintah, baik itu berupa Query SQL atau Transact SQL, object yang biasa dipakai adalah SqlCommand.

Setiap method memiliki fungsi yang berbeda, seperti terlihat pada tabel berikut:

Item Description

ExecuteReader

Menjalankan sebuah command yang mengembalikan sebuah rows. Dan disimpan dalam sebuah SqlDataReader dan navigasinya bersifat forward only.

ExecuteNonQuery Digunakan untuk menjalankan perintah seperti Transact-SQL INSERT, DELETE, dan UPDATE.

ExecuteScalar Perintah yang mengembalikan sebuah nilai, seperti aggregate dari sebuah database.

ExecuteXmlReader Mengirim CommandText ke dalam object Connection dam membangun object XmlReader.

ExecuteReader

Dengan menggunakan method ini, kita bisa menempatkan beberapa buah row ke dalam object yang disebut dengan SqlDataReader, seperti pada contoh berikut:

Public Sub BacaData()

Dim xConString As String

xConString =“Initial Catalog=Northwind;” &

_

“Data Source=Web-Server;" & _

“User Id=mhs; Password=rahasia;"

Dim xCon As New SqlConnection (xConString)

xCon.Open()

Page 12: ST-RK-1.16-082-007/R- Modul Praktikum · PDF fileadalah Ms. Visual Studio 2005 dengan database SQL Server 2000 yang terletak di server. ... Metode ini mengkoneksikan sebuah client

Praktikum Pemrograman Client Server

10 Laboratorium Komputer – STIKOM

Dim xQuery As String

xQuery = "SELECT * FROM Orders"

Dim xCommand As New SqlCommand(xQuery,

xCon)

Dim xReader As SqlDataReader = _

xCommand.ExecuteReader()

Try

While myReader.Read()

MessageBox.Show(( _

xReader.GetInt32(0).ToString & _

", " & xReader.GetString(1)))

End While

Finally

„Selalu tutup reader bila sudah

selesai.

xReader.Close()

„Tutup connection bila sudah selesai.

xCon.Close()

End Try

End Sub

Page 13: ST-RK-1.16-082-007/R- Modul Praktikum · PDF fileadalah Ms. Visual Studio 2005 dengan database SQL Server 2000 yang terletak di server. ... Metode ini mengkoneksikan sebuah client

Praktikum Pemrograman Client Server

Laboratorium Komputer – STIKOM 11

Latihan

1. Buat project dengan nama Lat_Modul_1, tambahkan satu form dengan nama frmKoneksi dengan tampilan berikut:

2. ComboBox nama provider berisi “SQL Server 2000” dan “Ms Access”. Apabila pilihan pertama dipilih, maka jenis koneksi dengan SQL Server 2000 yang digunakan, begitu juga jika yang dipilih Ms Access, koneksi yang digunakan adalah jenis untuk Ms Access. Apabila Ms Access yang dipilih, maka TextBox nama server tidak perlu diisi.

3. Gunakan tipe connected connection dengan datareader.

4. Apabila data ada, maka kolom pertama dan kedua dari table yang ada ditampilkan pada ListBox.

5. Ambil database Ms Access di http://web-server/client-server untuk mencoba koneksi dengan Ms Access.

6. Berikut tampilan jika memilih Ms Access:

Page 14: ST-RK-1.16-082-007/R- Modul Praktikum · PDF fileadalah Ms. Visual Studio 2005 dengan database SQL Server 2000 yang terletak di server. ... Metode ini mengkoneksikan sebuah client

Praktikum Pemrograman Client Server

12 Laboratorium Komputer – STIKOM

Page 15: ST-RK-1.16-082-007/R- Modul Praktikum · PDF fileadalah Ms. Visual Studio 2005 dengan database SQL Server 2000 yang terletak di server. ... Metode ini mengkoneksikan sebuah client

Praktikum Pemrograman Client Server

Laboratorium Komputer – STIKOM 13

MODUL 2 CONNECTED DATABASE

In The World of Ninja, Those who Break the Rules are Scum,

That's True. But, Those who Abandon their Friends are

Worse than Scum

- Hatake Kakashi - Naruto

Tujuan :

Praktikan dapat menggunakan command pada aplikasi connected database

Materi :

SqlCommand, ExecuteNonQuery, ExecuteScalar

Referensi :

Introduction to Visual Basic .NET Programming with Microsoft .NET

http://www.connectionstrings.com Programming with Microsoft ADO. NET

Object lain yang dimiliki oleh class SqlCommand adalah:

Page 16: ST-RK-1.16-082-007/R- Modul Praktikum · PDF fileadalah Ms. Visual Studio 2005 dengan database SQL Server 2000 yang terletak di server. ... Metode ini mengkoneksikan sebuah client

Praktikum Pemrograman Client Server

14 Laboratorium Komputer – STIKOM

2.1. ExecuteScalar

Method ini hanya dapat digunakan untuk menjalankan perintah yang mengembalikan sebuah nilai. Seperti banyak dipakai dalam menjalankan group function/ agregate function.

Contoh:

Public Sub HitungJumlahData()

Dim xConString As String

xConString=“Initial Catalog=Northwind;” & _

“Data Source=Web-Server;" & _

“User Id=mhs; Password=rahasia;"

Dim xCon As New SqlConnection (xConString)

Dim xQuery As String

xQuery="SELECT Count(OrderId) FROM Orders"

Dim xCommand As New SqlCommand(xQuery,

xCon)

Dim xJml As Integer

Try

xCon.Open()

xJml = xCommand.ExecuteScalar()

Finally

'Tutup koneksi setelah selesai

xCon.Close()

End Try

End Sub

2.2. ExecuteNonQuery

Method ini biasanya digunakan untuk menjalankan perintah DML (INSERT, UPDATE, DELETE), dengan menjalankan perintah melalui method ini nilai kembalian yang akan dihasilkan adalah berupa integer dari jumlah record yang berubah.

Contoh:

Public Sub MasukkanData()

Page 17: ST-RK-1.16-082-007/R- Modul Praktikum · PDF fileadalah Ms. Visual Studio 2005 dengan database SQL Server 2000 yang terletak di server. ... Metode ini mengkoneksikan sebuah client

Praktikum Pemrograman Client Server

Laboratorium Komputer – STIKOM 15

Dim xConString As String

xConString=“Initial Catalog=Northwind;” &

_

“Data Source=Web-Server;" & _

“User Id=mhs; Password=rahasia;"

Dim xCon As New SqlConnection (xConString)

Dim xQuery As String

xQuery = “INSERT INTO Orders(OrderId, ” &

_

“CustomerId) Values ” & _

“(„O-0001‟, „C-0001‟)”

Dim xCommand As New SqlCommand(xQuery,

xCon)

Dim xJml As Integer

Try

xCon.Open()

xJml = xCommand.ExecuteNonQuery()

Finally

'Tutup koneksi setelah selesai

xCon.Close()

End Try

End Sub

Page 18: ST-RK-1.16-082-007/R- Modul Praktikum · PDF fileadalah Ms. Visual Studio 2005 dengan database SQL Server 2000 yang terletak di server. ... Metode ini mengkoneksikan sebuah client

Praktikum Pemrograman Client Server

16 Laboratorium Komputer – STIKOM

Latihan

1. Buat project dengan nama Lat_Modul_2, tambahkan satu form dengan nama frmDML dengan tampilan berikut:

2. Jalankan script SQL berikut pada database masing-masing.

CREATE TABLE Praktikum

(

[Kode_Praktikum] Char(3)

CONSTRAINT PK_Prak_KdPrak PRIMARY

KEY,

[Nama_Praktikum] VarChar(50) NOT NULL,

[Koordinator] VarChar(30)

)

Insert into Praktikum values

('PWB','Pemrograman Web','Hatake Kakashi')

Insert into Praktikum values

('PV2','Pemrograman Visual 2','Abarai

Renji')

Insert into Praktikum values

('PCS','Pemrograman Client Server','Roronoa

Zoro')

Page 19: ST-RK-1.16-082-007/R- Modul Praktikum · PDF fileadalah Ms. Visual Studio 2005 dengan database SQL Server 2000 yang terletak di server. ... Metode ini mengkoneksikan sebuah client

Praktikum Pemrograman Client Server

Laboratorium Komputer – STIKOM 17

3. Gunakan tipe connected connection dengan menggunakan eksekusi yang sesuai untuk mendapatkan jumlah record pada TextBox jumlah data.

4. Gunakan tipe connected connection dengan menggunakan eksekusi yang sesuai untuk melakukan perintah DML (Insert, Update, Delete) sesuai dengan penekanan tombol.

5. Gunakan field Kode_Praktikum sebagai primary key untuk melakukan proses Update dan Delete pada table Praktikum.

6. Apabila ada perubahan jumlah record pada table Praktikum setelah operasi DML, maka TextBox jumlah data juga ikut berubah.

7. Tambahkan pesan di MessageBox “Data berhasil masuk” jika proses Insert berhasil, “Data berhasil diubah” jika proses Update berhasil, dan “Data berhasil dihapus” jika proses Delete berhasil.

Page 20: ST-RK-1.16-082-007/R- Modul Praktikum · PDF fileadalah Ms. Visual Studio 2005 dengan database SQL Server 2000 yang terletak di server. ... Metode ini mengkoneksikan sebuah client

Praktikum Pemrograman Client Server

18 Laboratorium Komputer – STIKOM

Page 21: ST-RK-1.16-082-007/R- Modul Praktikum · PDF fileadalah Ms. Visual Studio 2005 dengan database SQL Server 2000 yang terletak di server. ... Metode ini mengkoneksikan sebuah client

Praktikum Pemrograman Client Server

Laboratorium Komputer – STIKOM 19

MODUL 3 TRANSAKSI (STUDI KASUS)

Manusia bisa Bahagia bisa Tidak

Adalah Tergantung Pilihannya Sendiri

- Abraham Lincoln - Presiden Amerika Serikat

Tujuan :

Praktikan dapat menerapkan konsep database pada studi kasus transaksi

Praktikan dapat membuat aplikasi berdasarkan studi kasus

Materi :

Proses Bisnis, Design Table,Design Program

Referensi :

Buku Latihan Visual Basic.Net, Drs. Ario Suryo Kusumo Programming with Microsoft ADO. NET (chapter 3)

Introduction to Visual Basic .NET Programming with Microsoft .NET

Pada pertemuan ini akan menerapkan konsep Connected Database yang dipelajari pada Modul 1 dan Modul 2. Untuk contoh studi kasus kali ini adalah sistem perpustakaan sederhana.

Page 22: ST-RK-1.16-082-007/R- Modul Praktikum · PDF fileadalah Ms. Visual Studio 2005 dengan database SQL Server 2000 yang terletak di server. ... Metode ini mengkoneksikan sebuah client

Praktikum Pemrograman Client Server

20 Laboratorium Komputer – STIKOM

3.1. Proses Bisnis

Peminjam pada sistem perpustakaan ini harus terdaftar sebagai anggota pada perpustakaan ini agar dapat diperbolehkan meminjam koleksi. Koleksi yang tersedia pada perpustakaan ini terdiri dari Buku, Majalah, Jurnal dan CD/DVD Program. Batas peminjaman

untuk masing-masing koleksi ini berbeda-beda. Untuk Buku adalah 1 minggu, majalah 4 hari, jurnal 1 hari dan CD/DVD Program 2 hari.

Apabila peminjam terlambat mengembalikan koneksi maka akan dikenakan denda yang di hitung per hari keterlambatan. Denda masing-masing koleksi adalah berbeda beda. Seperti yang terlihat pada tabel dibawah

Jenis Koleksi Lama Peminjaman Denda per Hari

Buku 7 hari 300

Majalah 4 hari 500

Jurnal 1 hari 700

CD/DVD Program 2 hari 500

Batas maksimal untuk peminjam adalah 3 buku, 2 majalah, 1 jurnal dan 1 CD/DVD Program. Peminjam tidak diperkenankan meminjam melebihi batas yang ditentukan.

Page 23: ST-RK-1.16-082-007/R- Modul Praktikum · PDF fileadalah Ms. Visual Studio 2005 dengan database SQL Server 2000 yang terletak di server. ... Metode ini mengkoneksikan sebuah client

Praktikum Pemrograman Client Server

Laboratorium Komputer – STIKOM 21

3.2. Design Table

Berikut beberapa keterangan tambahan mengenai design tabel diatas.

Tabel jenis_koleksi digunakan untuk menyimpan data jenis koleksi berserta lama peminjaman tiap koleksi ,besar denda per hari untuk tiap koleksi dan batas_max untuk meyimpan batas maksimum peminjaman jenis koleksi oleh peminjam.

Tabel koleksi digunakan untuk menyimpan data koleksi yang tersedia, meliputi nama_koleksi, id_jenis_koleksi yang mereference ke tabel jenis_koleksi, dan jumlah stock koleksi yang tersedia.

Tabel transaksi menyimpan data transaksi yang berisi id_pelanggan yang mereference ke tabel pelanggan, serta waktu_peminjaman untuk menyimpan tanggal transaksi peminjaman.

Page 24: ST-RK-1.16-082-007/R- Modul Praktikum · PDF fileadalah Ms. Visual Studio 2005 dengan database SQL Server 2000 yang terletak di server. ... Metode ini mengkoneksikan sebuah client

Praktikum Pemrograman Client Server

22 Laboratorium Komputer – STIKOM

Tabel detail_transaksi digunakan untuk menyimpan detail transaksi peminjaman. Yang dicatat dalam detail_transaksi ini adalah id_transaksi yang mereference ke tabel transaksi id_koleksi yang dipinjam dan tgl_kembali yang digunakan untuk mencatat tanggal kembali tiap-tiap koleksi.

Untuk tiap “id” di setiap detail diisi menggunakan autnumber dari database (kita tidak perlu membuat id sendiri).

3.3. Design Program

Dari deskripsi proses bisnis dan design tabel yang sebelumnya, maka pada bagian ini akan dibahas mengenai garis besar Design Program yang akan kita buat. Program yang akan kita buat terdiri dari pembuatan program master peminjam, master koleksi dan transaksi peminjaman.

Untuk Master peminjam dan Master koleksi meliputi hal-hal dasar yang dibutuhkan yaitu proses penambahan, pengubahan dan penghapusan data.

Sedangkan untuk transaksi peminjaman ada beberapa hal yang perlu diperhatikan yaitu :

Ada pengecekan terhadap peminjam, apakah telah terdaftar atau belum.

Ada pengecekan terhadap koleksi, apakah id koleksi yang dimasukkan benar atau salah

Ada pengecekan terhadap jumlah peminjaman oleh peminjam apakah sudah melebihi batas maksimal atau belum (pengecekan per koleksi)

Ada pengecekan terhadap stock koleksi yang tersedia.

Ada pengurangan terhadap jumlah stock koleksi jika terjadi transaksi peminjaman

Ada perhitungan tanggal kembali untuk tiap detail koleksi

Page 25: ST-RK-1.16-082-007/R- Modul Praktikum · PDF fileadalah Ms. Visual Studio 2005 dengan database SQL Server 2000 yang terletak di server. ... Metode ini mengkoneksikan sebuah client

Praktikum Pemrograman Client Server

Laboratorium Komputer – STIKOM 23

Latihan

1. Buat project dengan nama Lat_Modul_3, tambahkan satu form dengan nama frmTransaksi dengan tampilan berikut:

2. Tombol cek disebelah textbox id peminjam digunakan untuk mengecek data peminjam, apabila belum terdaftar munculkan pesan “Anda belum terdaftar”, sedangkan apabila telah terdaftar detail peminjam akan muncul pada Data Peminjam dibawahnya

3. Tombol Tambahkan digunakan untuk memasukan detail transaksi peminjaman ke dalam list view.

4. Tombol Simpan digunakan untuk menyimpan transaksi ke database

5. Tombol Tutup digunakan untuk menutup Form

6. Gunakan ketentuan design program pada materi modul ini.

Page 26: ST-RK-1.16-082-007/R- Modul Praktikum · PDF fileadalah Ms. Visual Studio 2005 dengan database SQL Server 2000 yang terletak di server. ... Metode ini mengkoneksikan sebuah client

Praktikum Pemrograman Client Server

Laboratorium Komputer – STIKOM 24

Page 27: ST-RK-1.16-082-007/R- Modul Praktikum · PDF fileadalah Ms. Visual Studio 2005 dengan database SQL Server 2000 yang terletak di server. ... Metode ini mengkoneksikan sebuah client

Praktikum Pemrograman Client Server

Laboratorium Komputer – STIKOM 25

MODUL 4 DISCONNECTED DATABASE

Sebuah kesuksesan yang besar dapat dicapai setelah 99% kegagalan

- Soichiro Honda -

Tujuan :

Praktikan dapat menggunakan Dataset Praktikan dapat melakukan sorting dan filtering dengan

menggunakan Dataview

Materi :

SqlDataAdapter, DataSet, DataView, dan DataGrid

Referensi :

Buku Latihan Visual Basic.Net, Drs. Ario Suryo Kusumo Programming with Microsoft ADO. NET (chapter 3)

Introduction to Visual Basic .NET Programming with Microsoft.NET

Microsoft .NET MSDN Visual Studio .Net

Page 28: ST-RK-1.16-082-007/R- Modul Praktikum · PDF fileadalah Ms. Visual Studio 2005 dengan database SQL Server 2000 yang terletak di server. ... Metode ini mengkoneksikan sebuah client

Praktikum Pemrograman Client Server

26 Laboratorium Komputer – STIKOM

4.1. Disconnected Database

Berbeda dengan Connected Database yang telah dipelajari sebelumnya. Disconnected Database hanya melakukan koneksi dengan database disaat pengambilan dan transaksi data secara keseluruhan. Jadi, semua seprubahan yang terjadi secara visual

belum berpengaruh langsung kedalam database.

4.2. Dataset

Dataset adalah sebuah class yang dipakai dalam disconnected database. Dengan dataset ini, emua pekerjaan yang berhuungan dengan database dapat dilakukan secara remote. Jadi semua koleksi tabel dan relasi dari sebuah database dapat ditampung oleh sebuah Dataset. Sebelum masuk kedalam pembahasan lebih dalam, satu hal perlu untuk diingat adalah setiap form yang berhubungan dengan sebuah database membutuhkan sebuah koneksi. Oleh karena itu, SQLConnection tetap dipakai.

Dalam sebuah dataset semua tabel, baris, kolom, relasi semuanya dianggap sebagai objek. Sehingga mampu memberikan kemudahan dalam proses Indexing, Filtering, Sorting bahkan Searching.

Agar seluruh data dapat ditampung kedalam dataset, diperlukan sebuah dataadapter. Contoh kode programnya adalah sebagai

Dim conn As SqlConnection

Dim da As SqlDataAdapter

Dim ds As New DataSet

Private Sub Form1_Load(ByVal sender As

System.Object, ByVal e As System.EventArgs)

Handles MyBase.Load

OpenConnection()

GetData("select * from orders",

"orders")

End Sub

Private Sub OpenConnection()

Dim strcon As String = "Data Source=" &

_

"WEB-SERVER;" & _

"Initial Catalog=Northwind;" & _

"User ID=mhs;Password=rahasia"

Page 29: ST-RK-1.16-082-007/R- Modul Praktikum · PDF fileadalah Ms. Visual Studio 2005 dengan database SQL Server 2000 yang terletak di server. ... Metode ini mengkoneksikan sebuah client

Praktikum Pemrograman Client Server

Laboratorium Komputer – STIKOM 27

conn = New SqlConnection(strcon)

conn.Open()

End Sub

Private Sub GetData(ByVal query As String,

ByVal tablename As String)

da = New SqlDataAdapter(query, conn)

da.MissingSchemaAction =

MissingSchemaAction.AddWithKey

da.Fill(ds, tablename)

End Sub

da.MissingSchemaAction digunakan untuk mengambil strukutur schema ang belum terambil ketika proses Fill. Dalam kasus ini yang diambil adalah struktur Constraint dari tabel.

Pengambilan data dari sebuah data set menggunakan kode program sebagai berikut:

Ditampung dalam sebuah DataGrid

Datagrid1.DataSouce=ds.Tables(“orders”). &

_

DefaultView

Ditampung dalam control (TextBox,ComboBox,dll)

For i As Integer = 0 To ds. & _

Tables("orders").Rows.Count - 1

ComboBox1.Items.Add & _

(ds.Tables("orders").Rows(i).Item(1))

Next

4.3. Sorting dan Filtering pada Dataset

Sebuah query pasti mampu melakukan beberapa batasan terhadap data-data apa saaja dari sebuah tabel, yang akan ditampilkan. Dan bahkan melakukan pengurutan data berdasarkan filed yang diacu. Hal ini dapat dilakukan oleh DataSet dengan menggunakan method RowFilter dan Sort.

Page 30: ST-RK-1.16-082-007/R- Modul Praktikum · PDF fileadalah Ms. Visual Studio 2005 dengan database SQL Server 2000 yang terletak di server. ... Metode ini mengkoneksikan sebuah client

Praktikum Pemrograman Client Server

28 Laboratorium Komputer – STIKOM

Untuk sorting data, kode program akan tampak sebagai berikut ini :

ds.Tables(“orders”).DefaultView. _

Sort=”OrderID”

Untuk filtering data, kode program akan tampak seperti berikut ini :

ds.Tables(“orders”).DefaultView. _

RowFilter=”OrderId=‟O-0001‟”

Yang perlu diingat untuk ke-2 method ini, keduanya hanya berlaku bagi control yang melakukan binding kedalam database dan berinterface Ilist. Sebagai contoh adalah DataGrid. Penggunaan kedua method ini akan tampak pada DataGrid, namun tidak berfungi pada control lain yang tidak berinterface Ilist(ComboBox,TextBox,dll)

Page 31: ST-RK-1.16-082-007/R- Modul Praktikum · PDF fileadalah Ms. Visual Studio 2005 dengan database SQL Server 2000 yang terletak di server. ... Metode ini mengkoneksikan sebuah client

Praktikum Pemrograman Client Server

Laboratorium Komputer – STIKOM 29

Latihan

1. Buat project dengan nama Lat_Modul_4, tambahkan satu form dengan nama frmDataset dengan tampilan berikut:

2. Download file mahasiswa.sql dari server (tanyakan pada pengajar lokasi file tersebut). Jalankan file tersebut pada database anda.

3. Pada saat form pertama kali di load maka, data mahasiswa akan otomatis muncul di datagrid.

4. “cari” digunakan untuk mencari data menurut “Kata Kunci” dan field yang bersangkutan. Hasil yang ditampilkan adalah data yang mengandung “Kata Kunci” bukan data yang sama persis dengan “Kata Kunci”

5. “Order” digunakan untuk mengurutkan data berdasarkan field pada combo box, dan metode pengurutan ditentukan oleh radio button ascending atau discending.

6. Tombol tutup digunakan untuk menutup form.

Page 32: ST-RK-1.16-082-007/R- Modul Praktikum · PDF fileadalah Ms. Visual Studio 2005 dengan database SQL Server 2000 yang terletak di server. ... Metode ini mengkoneksikan sebuah client

Praktikum Pemrograman Client Server

30 Laboratorium Komputer – STIKOM

Page 33: ST-RK-1.16-082-007/R- Modul Praktikum · PDF fileadalah Ms. Visual Studio 2005 dengan database SQL Server 2000 yang terletak di server. ... Metode ini mengkoneksikan sebuah client

Praktikum Pemrograman Client Server

Laboratorium Komputer – STIKOM 31

MODUL 5 OPERASI PADA DATASET

Pertanyaan yang Paling Mendesak Dalam Hidup Ini :

Apakah yang Kamu Perbuat Bagi Orang Lain?

- Martin Luther King Jr. -

Tujuan :

Praktikan dapat membuat DML pada dataset

Materi :

Insert Data, Update Data, Delete Data, Simpan ke Database

Referensi :

Programming with Microsoft ADO. NET

Introduction to Visual Basic .NET Programming with Microsoft.NET

Microsoft .NET MSDN Visual Studio .Net

Pada pertemuan sebelumnya kita telah mempelajari cara mengambil data secara Disconnected Database yang disimpan dalam DataSet.

Page 34: ST-RK-1.16-082-007/R- Modul Praktikum · PDF fileadalah Ms. Visual Studio 2005 dengan database SQL Server 2000 yang terletak di server. ... Metode ini mengkoneksikan sebuah client

Praktikum Pemrograman Client Server

32 Laboratorium Komputer – STIKOM

Selain itu kita juga mempelajari operasi filtering dan sorting pada dataset. Pada pertemuan ini akan dibahas mengenai operasi DML pada DataSet. Struktur tabel yang akan kita pakai adalah sebagai berikut :

Tabel : mhs NIM varchar(12) Primary Key Nama Varchar(50) Alamat varchar(100)

Untuk cara memasukan data dari database ke dalam DataSet silahkan anda pelajari Modul sebelumnya.

5.1. Penambahan Data (Insert Data)

Awal

Nim Nama Alamat

‘Pesan Tempat

Dim xRow As DataRow

xRow = xSet.Tables("mhs").NewRow()

Setelah memesan tempat dengan menggunakan method NewRow pada DataTable. Kita bisa mengilustrasikan tempat penyimpanan sebagai berikut:

Nim Nama Alamat

.... ....... ........

‘Pengisian DataRow

xRow(0) = "09410100999"

xRow(1) = "Hatake Kakashi"

xRow(2) = "Jl. Konoha Village no 999"

Atau bisa juga dengan menyebutkan nama kolomnya, seperti contoh berikut:

xRow(“Nim”) = "06410100666"

xRow(“Nama”) = "Abarai Renji"

xRow(“Alamat”) = "Jl. Sehat no 123"

Dengan mengisi datarow, data belum masuk ke dalam dataset sebelum method Add dijalankan.

xSet.Tables("mhs").Rows.Add(xRow)

Page 35: ST-RK-1.16-082-007/R- Modul Praktikum · PDF fileadalah Ms. Visual Studio 2005 dengan database SQL Server 2000 yang terletak di server. ... Metode ini mengkoneksikan sebuah client

Praktikum Pemrograman Client Server

Laboratorium Komputer – STIKOM 33

Tempat penyimpanan secara ilustrasi akan tampak seperti berikut:

Nim Nama Alamat

09410100999 Hatake Kakashi Jl. Konoha Village no 999

5.2. Penghapusan Data (Delete Data)

Ada pepatah kuno mengatakan “Ada Banyak Jalan Menuju Roma”. Di sini akan ditunjukkan beberapa cara untuk melakukan penghapusan rows pada sebuah Dataset. Yang harus diperhatikan adalah yang dihapus adalah objects berupa “Row”. Lihat contoh berikut:

Cara Pertama

Dim xRow As DataRow

xRow = xSet.Tables("mhs").Rows.Find("0009")

If Not (xRow Is Nothing) Then

xRow.Delete()

End If

Cara Kedua

Dim xRow As DataRow

xRow = xSet.Tables("mhs").Rows.Find("0007")

If Not (xRow Is Nothing) Then

xSet.Tables(0).Rows.Remove(xRow)

End If

Cara Ketiga

If xSet.Tables(0).Rows.Count <> 0 Then

If Not (xSet.Tables(0).Rows(0) _

Is Nothing) Then

xSet.Tables(0).Rows(0).Delete()

End If

End If

Dari ketiga contoh di atas kita bisa melihat bahwa kita bisa menghapus data yang ada pada dataset melalui object DataRow

Page 36: ST-RK-1.16-082-007/R- Modul Praktikum · PDF fileadalah Ms. Visual Studio 2005 dengan database SQL Server 2000 yang terletak di server. ... Metode ini mengkoneksikan sebuah client

Praktikum Pemrograman Client Server

34 Laboratorium Komputer – STIKOM

5.3. Pengubahan Data (Update Data)

Cara Pertama

xSet.Tables(0).Rows(0).BeginEdit()

xSet.Tables(0).Rows(0).Item(0) = _

"07410100777"

xSet.Tables(0).Rows(0).Item(1) = _

"Kurosaki Ichigo"

xSet.Tables(0).Rows(0).Item(2) = _

"Jl. Buntu 999"

xSet.Tables(0).Rows(0).EndEdit()

Cara Kedua

Dim xRow As DataRow

xRow = xSet.Tables("mhs").Rows(0)

xRow.BeginEdit()

xRow (0) = "09410109876"

xRow (1) = "Uzumaki Naruto"

xRow (2) = "Jl. Pagi 123"

xRow.EndEdit()

Cara Ketiga

Dim xRow As DataRow

xRow = xSet.Tables("mhs").Rows.Find("0002")

If Not (xRow Is Nothing) Then

xRow.BeginEdit()

xRow (0) = "09410109876"

xRow (1) = "Miyabi-chan"

xRow (2) = "Jl. Hidup 69"

xRow.EndEdit()

End If

5.4. Menyimpan perubahan pada database

Seperti yang dijelaskan pada modul sebelumnya, pada disconnected database perubahan pada DataSet yang terlihat secara visual sebenarnya belum benar-benar tersimpan di dalam database. Oleh karena itu kita perlu menambahkan instruksi tambahan untuk menyimpan secara permanen pada database.

Page 37: ST-RK-1.16-082-007/R- Modul Praktikum · PDF fileadalah Ms. Visual Studio 2005 dengan database SQL Server 2000 yang terletak di server. ... Metode ini mengkoneksikan sebuah client

Praktikum Pemrograman Client Server

Laboratorium Komputer – STIKOM 35

Dim updtable As DataTable = _

ds.Tables("mhs")

'' Untuk proses deletes.

da.Update(updtable.Select(Nothing, _

Nothing, DataViewRowState.Deleted))

'' Untuk proses updates.

da.Update(updtable.Select(Nothing, _

Nothing, DataViewRowState.ModifiedCurrent))

'' Untuk proses insert.

da.Update(updtable.Select(Nothing, _

Nothing, DataViewRowState.Added))

Page 38: ST-RK-1.16-082-007/R- Modul Praktikum · PDF fileadalah Ms. Visual Studio 2005 dengan database SQL Server 2000 yang terletak di server. ... Metode ini mengkoneksikan sebuah client

Praktikum Pemrograman Client Server

36 Laboratorium Komputer – STIKOM

Latihan

1. Buat project dengan nama Lat_Modul_5, tambahkan satu form dengan nama frmXML dengan tampilan berikut:

2. Gunakan tipe disconnected connection dengan menggunakan dataset yang melakukan query terhadap table Praktikum yang dibuat pada latihan praktikum modul 2. Simpan struktur dan data dari table Praktikum pada dataset.

3. Gunakan dataset yang mempunyai struktur sesuai table Praktikum pada datasource dari datagrid.

4. Lakukan proses penambahan, pengubahan, dan penghapusan data yang ada di dataset sesuai dengan penekanan tombol Simpan, Ubah, atau Hapus.

5. Link cari prak digunakan untuk mencari data pada dataset sesuai dengan kode praktikum yang dimasukkan. Apabila data ada,

Page 39: ST-RK-1.16-082-007/R- Modul Praktikum · PDF fileadalah Ms. Visual Studio 2005 dengan database SQL Server 2000 yang terletak di server. ... Metode ini mengkoneksikan sebuah client

Praktikum Pemrograman Client Server

Laboratorium Komputer – STIKOM 37

maka akan ditampilkan pada textbox nama praktikum dan textbox koordinator.

6. Textbox jumlah data sesuai dengan jumlah data yang ada pada dataset.

7. Tambahkan pesan di MessageBox “Data berhasil masuk” jika proses Insert berhasil, “Data berhasil diubah” jika proses Update berhasil, dan “Data berhasil dihapus” jika proses Delete berhasil.

Page 40: ST-RK-1.16-082-007/R- Modul Praktikum · PDF fileadalah Ms. Visual Studio 2005 dengan database SQL Server 2000 yang terletak di server. ... Metode ini mengkoneksikan sebuah client

Praktikum Pemrograman Client Server

38 Laboratorium Komputer – STIKOM

Page 41: ST-RK-1.16-082-007/R- Modul Praktikum · PDF fileadalah Ms. Visual Studio 2005 dengan database SQL Server 2000 yang terletak di server. ... Metode ini mengkoneksikan sebuah client

Praktikum Pemrograman Client Server

Laboratorium Komputer – STIKOM 39

MODUL 6 CRYSTAL REPORT (1)

Banyak Kegagalan Dalam Hidup ini Dikarenakan Orang-Orang Tidak Menyadari Betapa Dekatnya Mereka dengan Keberhasilan

Saat Mereka Menyerah

- Thomas Alfa Edison -

Tujuan :

Praktikan dapat membuat laporan dengan Crystal Report Praktikan dapat menggunakan Crystal Report

Praktikan mampu menampilkan laporan secara dinamis

Materi :

Crystal Report, Selection Formula, Parameter

Referensi :

Buku Latihan Visual Basic.Net, Drs. Ario Suryo Kusumo http://aspalliance.com/articleViewer.aspx?aId=677&pId=2

Introduction to Visual Basic .NET Programming with Microsoft.NET

Microsoft .NET MSDN Visual Studio .Net

Page 42: ST-RK-1.16-082-007/R- Modul Praktikum · PDF fileadalah Ms. Visual Studio 2005 dengan database SQL Server 2000 yang terletak di server. ... Metode ini mengkoneksikan sebuah client

Praktikum Pemrograman Client Server

Laboratorium Komputer – STIKOM 40

6.1. Membuat sebuah report

Untuk membuat sebuah report kita hanya perlu menambahkan item baru yaitu template Crystal Report pada aplikasi window.

Akan terlihat sebagai berikut:

Dengan memilih template crystal report, akan muncul kotak dialog untuk memilih bentuk dari laporan yang akan kita buat.

Kemudian akan muncul kotak dialog untuk memilih data yang mau ditampilkan pada report tersebut.

Page 43: ST-RK-1.16-082-007/R- Modul Praktikum · PDF fileadalah Ms. Visual Studio 2005 dengan database SQL Server 2000 yang terletak di server. ... Metode ini mengkoneksikan sebuah client

Praktikum Pemrograman Client Server

Laboratorium Komputer – STIKOM 41

Kemudian akan muncul kotak dialog untuk melakukan koneksi ke data source tertentu, sebagai contoh data source yang dipakai berupa SQL Server.

Secara sederhana contoh berikut akan menampilkan data mahasiswa dengan cara sangat sederhana.

Page 44: ST-RK-1.16-082-007/R- Modul Praktikum · PDF fileadalah Ms. Visual Studio 2005 dengan database SQL Server 2000 yang terletak di server. ... Metode ini mengkoneksikan sebuah client

Praktikum Pemrograman Client Server

42 Laboratorium Komputer – STIKOM

6.2. Menampilkan Report dari Aplikasi Windows

Untuk menampilkan report yang sudah kita buat, kita bisa menggunakan Crystal Report Control atau dengan menggunakan Crystal Report Viewer.

Crystal Report Viewer

Kita harus tambahkan Crystal Report Viewer ke dalam form kita.

Cara yang paling sederhana adalah dengan menghubungkan crystal report viewer dengan properties Report Source dengan file report yang akan ditampilkan.

Atau dengan menggunakan koding seperti berikut:

Page 45: ST-RK-1.16-082-007/R- Modul Praktikum · PDF fileadalah Ms. Visual Studio 2005 dengan database SQL Server 2000 yang terletak di server. ... Metode ini mengkoneksikan sebuah client

Praktikum Pemrograman Client Server

Laboratorium Komputer – STIKOM 43

CrystalReportViewer1.ReportSource = _

"..\Nilai.rpt"

CrystalReportViewer1.Refresh()

Atau

Dim rpt As New Nilai

CrystalReportViewer1.ReportSource = rpt

CrystalReportViewer1.Refresh()

Atau

Dim rptDoc As New ReportDocument

rptDoc.Load("..\Nilai.rpt")

CrystalReportViewer1.ReportSource = rptDoc

CrystalReportViewer1.Refresh()

Untuk membuat supaya report yang kita buat bisa dinamis, seperti adanya perubahan datasource pada saat runtime, perhatikan gambaran berikut ini:

Contoh koding

Imports _

CrystalDecisions.CrystalReports.Engine

Imports CrystalDecisions.Shared

Koding:

CrystalReportViewer.ReportSource

ReportDocument.Database.Tables

ConnectionInfo

Server Name DatabaseName UserId Password

ReportDocument

Load() Database.Table

s

Table

LogonInfo ApplyLogOnInfo _

(TableLogOnInfo) Location

TableLogOnInfo

ConnectionInfo Table.LogonInfo

Tables

TableLogoninfo.ConnectionInfo

CrystalReportViewer

ReportSource

Page 46: ST-RK-1.16-082-007/R- Modul Praktikum · PDF fileadalah Ms. Visual Studio 2005 dengan database SQL Server 2000 yang terletak di server. ... Metode ini mengkoneksikan sebuah client

Praktikum Pemrograman Client Server

44 Laboratorium Komputer – STIKOM

Dim crtableLogoninfo As New TableLogOnInfo

Dim crConnectionInfo As New ConnectionInfo

Dim CrTables As Tables

Dim CrTable As Table

Dim TableCounter

Dim crReportDocument As New ReportDocument

crReportDocument.Load _

("..\CrystalReport1.rpt")

With crConnectionInfo

.ServerName = "Web-Server"

.DatabaseName = "Northwind"

.UserID = "mhs"

.Password = "rahasia"

End With

CrTables = crReportDocument.Database.Tables

For Each CrTable In CrTables

crtableLogoninfo = CrTable.LogonInfo

crtableLogoninfo.ConnectionInfo = _

crConnectionInfo

CrTable.ApplyLogOnInfo(crtableLogoninfo)

CrTable.Location = "master." & _

CrTable.Location.Substring _

(CrTable.Location.LastIndexOf(".") + 1)

Next

CrystalReportViewer1.ReportSource = _

crReportDocument

6.3. Memfilter Data

Untuk melakukan filtering terhadap suatu data dalam sebuah report digunakan method “SelectionFormula” pada object CrystalReportViewer.

Contoh

CrystalReportViewer1.SelectionFormula = _

"{mahasiswa.NIM}='00410100033'"

Page 47: ST-RK-1.16-082-007/R- Modul Praktikum · PDF fileadalah Ms. Visual Studio 2005 dengan database SQL Server 2000 yang terletak di server. ... Metode ini mengkoneksikan sebuah client

Praktikum Pemrograman Client Server

Laboratorium Komputer – STIKOM 45

6.4. Passing parameter ke report

Untuk membuat sebuah parameter pada report, anda tinggal klik kanan pada field Explorer di desain report kita dan pilih new, kemudian ikuti langkah-langkahnya.

Untuk memberi nilai pada sebuah parameter digunakan koding berikut ini:

crReportDocument.SetParameterValue _

("nimmhs", txtNim.Text)

Page 48: ST-RK-1.16-082-007/R- Modul Praktikum · PDF fileadalah Ms. Visual Studio 2005 dengan database SQL Server 2000 yang terletak di server. ... Metode ini mengkoneksikan sebuah client

Praktikum Pemrograman Client Server

46 Laboratorium Komputer – STIKOM

Latihan

1. Buat project dengan nama Lat_Modul_6, tambahkan satu form dengan nama frmWebService dengan tampilan berikut:

2. Jalankan Script SQL berikut

CREATE TABLE Praktikan

(

[NIM] VarChar(11)

CONSTRAINT PK_Prtkn_Nim PRIMARY KEY,

[Nama] VarChar(40) NOT NULL,

[Kode_Praktikum] Char(3)

REFERENCES

Praktikum([Kode_Praktikum])

ON DELETE CASCADE ON UPDATE CASCADE

)

Insert into Praktikan values

('03410100073','Tom Cruise','PWB')

Insert into Praktikan values

('06410100666','Dian Sastrowardoyo','PCS')

Insert into Praktikan values

('07410100777','Edward Elric','PCS')

Page 49: ST-RK-1.16-082-007/R- Modul Praktikum · PDF fileadalah Ms. Visual Studio 2005 dengan database SQL Server 2000 yang terletak di server. ... Metode ini mengkoneksikan sebuah client

Praktikum Pemrograman Client Server

Laboratorium Komputer – STIKOM 47

Insert into Praktikan values

('01410100111','Doraemon','PV2')

Insert into Praktikan values

('05410100055','Miyabi-chan','PCS')

Insert into Praktikan values

('09410100666','Avatar','PWB')

3. Combobox kode praktikum mengambil data dari tabel Praktikum yang dibuat sebelumnya. Textbox nama praktikum otomatis keluar sesuai dengan kode praktikum yang dipilih.

4. Buat file crystal report dengan nama report_modul8 yang menampilkan data praktikan sesuai dengan parameter kode_praktikum yang dipilih. Tambahkan passing parameter field dengan nama kode_prak untuk proses ini.

Page 50: ST-RK-1.16-082-007/R- Modul Praktikum · PDF fileadalah Ms. Visual Studio 2005 dengan database SQL Server 2000 yang terletak di server. ... Metode ini mengkoneksikan sebuah client

Praktikum Pemrograman Client Server

48 Laboratorium Komputer – STIKOM

Page 51: ST-RK-1.16-082-007/R- Modul Praktikum · PDF fileadalah Ms. Visual Studio 2005 dengan database SQL Server 2000 yang terletak di server. ... Metode ini mengkoneksikan sebuah client

Praktikum Pemrograman Client Server

Laboratorium Komputer – STIKOM 49

MODUL 7 CRYSTAL REPORT (2)

Latihlah Kebiasaanmu,

Karena Kebiasaan akan Menjadikanmu Sukses atau Menghancurkanmu

- Sean Covey -

The 7 Habits of Highly Effective Teens

Tujuan :

Praktikan dapat membuat laporan dengan Crystal Report Praktikan mampu menampilkan laporan menggunakan group name

fields dan running total fields

Materi :

Formula Filed, Group Nam Field, Running Total Field

Referensi :

Buku Latihan Visual Basic.Net, Drs. Ario Suryo Kusumo http://aspalliance.com/articleViewer.aspx?aId=677&pId=2

Introduction to Visual Basic .NET Programming with Microsoft.NET

Microsoft .NET MSDN Visual Studio .Net

Page 52: ST-RK-1.16-082-007/R- Modul Praktikum · PDF fileadalah Ms. Visual Studio 2005 dengan database SQL Server 2000 yang terletak di server. ... Metode ini mengkoneksikan sebuah client

Praktikum Pemrograman Client Server

Laboratorium Komputer – STIKOM 50

7.1. Formula Field

Perhatikanlah hasil dari report berikut:

Dalam tabel isi field status adalah M atau B, sedangkan di dalam membuat sebuah laporan kita harus menampilkan informasi status mahasiswa tersebut dengan menikah (M) atau belum menikah (B). Untuk itu diperlukan sebuah formula field.

Caranya hampir sama dengan membuat ParameterFiled, dan kita bisa mengeluarkan isi sebuah field dengan format yang kita inginkan:

Di dalam formula editor kita bisa melakukan hal tersebut dengan menambahkan koding seperti berikut

Page 53: ST-RK-1.16-082-007/R- Modul Praktikum · PDF fileadalah Ms. Visual Studio 2005 dengan database SQL Server 2000 yang terletak di server. ... Metode ini mengkoneksikan sebuah client

Praktikum Pemrograman Client Server

Laboratorium Komputer – STIKOM 51

Untuk status

if {Mahasiswa.Status}="M" then

(

"Menikah"

)

else

(

"Belum Menikah"

)

Untuk jenis kelamin

if {Mahasiswa.Jns_Kelamin}="P" then

(

"Pria"

)

else

(

"Wanita"

)

Page 54: ST-RK-1.16-082-007/R- Modul Praktikum · PDF fileadalah Ms. Visual Studio 2005 dengan database SQL Server 2000 yang terletak di server. ... Metode ini mengkoneksikan sebuah client

Praktikum Pemrograman Client Server

52 Laboratorium Komputer – STIKOM

Dan dengan mengganti field yang ada pada report dengan formula field yang baru dibuat, hasilnya akan terlihat seperti berikut:

7.2. Group Name Field

Group name Fields digunakan apabila kita menginginkan pengelompokan data pada laporan yang kita buat berdasarkan field yang ada. Misalnya saja kita ingin membuat laporan detail yang dikelompokkan menurut wilayah penjualan.

Dengan adanya Group Name Fileds ini kita dapat membuat semacam sub total berdasarkan kriteria tertentu, misalnya sub total berdasarkan Area Penjualan, Tanggal transaksi, dll

Klik kanan pada group name fields kemudian pilih insert group

Page 55: ST-RK-1.16-082-007/R- Modul Praktikum · PDF fileadalah Ms. Visual Studio 2005 dengan database SQL Server 2000 yang terletak di server. ... Metode ini mengkoneksikan sebuah client

Praktikum Pemrograman Client Server

Laboratorium Komputer – STIKOM 53

Setelah muncul dialog seperti diatas anda dapat mengatur group baru yang anda inginkan, anda dapat memilih berdasarkan field ang sudah ada ataupun membuat group berdasarkan formula tertentu.

7.3. Running Total Field

Running total fields digunakan untuk membuat akumulasi data pada field tertentu. Misalnya kita ingin membuat jumlah data penjualan, jumlah data pemesanan, dll.

Dengan menggunakan Running Total Fields ini kita dapat membuat sub total dengan mengkombinasikan pemakaiannya dengan group name fields. Serta membuat Grand Total keseluruhan.

Klik kanan pada Running Total Fields kemudian new untuk membuat Running Total Fields baru.

Page 56: ST-RK-1.16-082-007/R- Modul Praktikum · PDF fileadalah Ms. Visual Studio 2005 dengan database SQL Server 2000 yang terletak di server. ... Metode ini mengkoneksikan sebuah client

Praktikum Pemrograman Client Server

54 Laboratorium Komputer – STIKOM

Dari kotak dialog ini kita dapat menentukan bagaimana kita ingin melakukan penjumlahan (akumulasi data), menentukan field yang sudah ada atau menggunakan formula dapat diatur lewat dialog ini.

Page 57: ST-RK-1.16-082-007/R- Modul Praktikum · PDF fileadalah Ms. Visual Studio 2005 dengan database SQL Server 2000 yang terletak di server. ... Metode ini mengkoneksikan sebuah client

Praktikum Pemrograman Client Server

Laboratorium Komputer – STIKOM 55

Latihan

1 Download file trans_penjualan.sql dari server (tanyakan pada pengajar lokasinya). Jalankan pada database anda.

2 Buat laporan dengan tampilan sebagai berikut :

3 Laporan tersebut berisi data penjualan yang di kelompokan

berdasarkan kantor cabang. 4 Tampilkan sub total per kantor cabang beserta grand total

keseluruhan

Page 58: ST-RK-1.16-082-007/R- Modul Praktikum · PDF fileadalah Ms. Visual Studio 2005 dengan database SQL Server 2000 yang terletak di server. ... Metode ini mengkoneksikan sebuah client

Praktikum Pemrograman Client Server

56 Laboratorium Komputer – STIKOM

Page 59: ST-RK-1.16-082-007/R- Modul Praktikum · PDF fileadalah Ms. Visual Studio 2005 dengan database SQL Server 2000 yang terletak di server. ... Metode ini mengkoneksikan sebuah client

Praktikum Pemrograman Client Server

Laboratorium Komputer – STIKOM 57

MODUL 8 WEB SERVICE

It Has Become Appallingly Obvious That Our Technology

Has Exceeded Our Humanity

- Albert Einstein -

Tujuan :

Praktikan dapat membuat web service

Praktikan dapat menggunakan web service

Materi :

Web Service

Referensi :

Buku Latihan Visual Basic.Net, Drs. Ario Suryo Kusumo Programming with Microsoft ADO. NET (chapter 7)

Introduction to Visual Basic .NET Programming with Microsoft.NET

Microsoft .NET MSDN Visual Studio .Net

Page 60: ST-RK-1.16-082-007/R- Modul Praktikum · PDF fileadalah Ms. Visual Studio 2005 dengan database SQL Server 2000 yang terletak di server. ... Metode ini mengkoneksikan sebuah client

Praktikum Pemrograman Client Server

58 Laboratorium Komputer – STIKOM

8.1. Web Service

Web Service merupakan salah satu layanan terbesar di internet. Teknologi ini menggunakan XML (Extensible Markup Language) untuk membangun struktur dari data, SOAP (Simple Object Access Protocol) digunakan untuk transper data, WSDL (Web Services

Description Language) untuk menggambarkan sebuah service dan UDDI (Universal Description, Discovery and Integration) digunakan untuk memperoleh daftar dari service yang tersedia.

Dengan adanya web service aplikasi dapat saling berkomunikasi dengan aplikasi lainnya tanpa harus memusingkan hardware maupun struktur dari komputer yang dipakai.

Salah satu kelebihan web service adalah menggunakan teknologi XML artinya web service ini multi-platform alias bisa diakses di semua jenis sistem operasi. Selain itu, user tidak perlu tahu dengan bahasa apa web service itu dibuat, yang perlu mereka tahu adalah fitur apa saja yang disediakan oleh web service tadi.

8.2. SOAP, WSDL dan UDDI

SOAP (Simple Object Access Protocol) adalah protokol berbasis XML yang digunakan untuk pertukaran informasi pada web services. SOAP mendefinisikan format XML dari web services. Dari format XML tadi kita bisa tahu request dan response dari function yang ada di web service seperti berapa jumlah parameter yang harus dimasukkan, apa saja tipe data dari tiap parameter, dan tipe data dari nilai balik.

Contoh tampilan SOAP web service:

Page 61: ST-RK-1.16-082-007/R- Modul Praktikum · PDF fileadalah Ms. Visual Studio 2005 dengan database SQL Server 2000 yang terletak di server. ... Metode ini mengkoneksikan sebuah client

Praktikum Pemrograman Client Server

Laboratorium Komputer – STIKOM 59

WSDL (Web Services Descriprtion Language) adalah dokumen XML yang digunakan untuk mendiskripsikan methods (berbentuk functions) apa saja yang disediakan oleh web service. Apabila pada pembuatan web service dicantumkan deskripsi keterangan dari function, maka pada WSDL akan ditampilkan keterangan tadi.

Contoh tampilan WSDL:

Page 62: ST-RK-1.16-082-007/R- Modul Praktikum · PDF fileadalah Ms. Visual Studio 2005 dengan database SQL Server 2000 yang terletak di server. ... Metode ini mengkoneksikan sebuah client

Praktikum Pemrograman Client Server

60 Laboratorium Komputer – STIKOM

Di bawah ini contoh hasil tampilan dari web service HitungDiskon pada function NamaLengkap yang parameternya diisi dengan “Dian” dan “Sastro”, hasilnya seperti berikut:

UDDI (Universal Description, Discovery and Integration) adalah web site yang digunakan untuk mendaftarkan web service yang telah kita buat dan telah diposting di internet. Dengan adanya UDDI, web service kita akan ditampilkan pada web site UDDI dan bisa diketahui oleh orang lain yang mengaksesnya. Dengan UDDI kita bisa mencari web service yang kita inginkan dan melihat web service apa saja yang tersedia. Untuk info lebih jelas, bisa dilihat di http://www.uddi.org atau di http://uddi.microsoft.com.

8.3. Membuat Web Service

Membuat web service di .Net tidaklah susah jika kita sudah tau konsep tentang function. Sama seperti function, web service punya nilai balik dalam tipe data tertentu yang bisa diambil untuk diimplementasikan di aplikasi yang kita buat.

Berikut langkah membuat web service:

Buat project baru, pilih template ASP.NET Web Service Beri nama project tadi, secara default akan disediakan satu

halaman web service dengan nama Service1.asmx, ubahlah namanya sesuai keinginan untuk mendefinisikan web service

Double click pada halaman tadi untuk masuk code editor, buatlah sebuah function tapi awali dengan keyword : <WebMethod()>

Lakukan build setelah function selesai dibuat

Page 63: ST-RK-1.16-082-007/R- Modul Praktikum · PDF fileadalah Ms. Visual Studio 2005 dengan database SQL Server 2000 yang terletak di server. ... Metode ini mengkoneksikan sebuah client

Praktikum Pemrograman Client Server

Laboratorium Komputer – STIKOM 61

Contoh web service sederhana:

<WebMethod(Description:="Untuk menampilkan

pesan Hello World")> _

Public Function HelloWorld() As String

Return "Hello World"

End Function

<WebMethod()> _

Public Function GetMessage() As String

Return "Today is the day"

End Function

<WebMethod()> _

Public Function SendMessage _

(ByVal message As String) As String

Return "Message received as: " &

message

End Function

<WebMethod()> _

Public Function ReverseMessageFunction _

(ByVal message As String) As String

Return StrReverse(message)

End Function

<WebMethod()> _

Public Sub ReverseMessageSub _

(ByRef message As String)

message = StrReverse(message)

End Sub

Apabila dilakukan debug, maka hasil debug akan ditampilkan pada browser dengan susunan URL seperti berikut:

http://namaserver/namaProjectWebServices/Na

maWebServices.asmx

Page 64: ST-RK-1.16-082-007/R- Modul Praktikum · PDF fileadalah Ms. Visual Studio 2005 dengan database SQL Server 2000 yang terletak di server. ... Metode ini mengkoneksikan sebuah client

Praktikum Pemrograman Client Server

62 Laboratorium Komputer – STIKOM

8.4. Implementasi Web Service

Untuk melakukan implementasi pada web service kita bisa melakukan web reference web service yang ada, berikut beberapa langkahnya:

Buat project baru ato buka project yang akan digunakan untuk memanfaatkan web service

Import web service yang ada dengan cara klik kanan pada nama project, pilih Add Web Reference, akan muncul tampilan seperti berikut:

Masukkan alamat URL pada textbox URL, lalu tekan tombol Go

untuk melihat service apa saja yang disediakan Di sebelah kanan ada Web Reference Name untuk memberi nama

reference tadi, tekan tombol Add Reference untuk menaruh alamat web tadi sebagai reference dari project yang dibuka

Apabila berhasil, maka nama web reference tadi akan muncul pada folder Web Reference di Solution Explorer

Page 65: ST-RK-1.16-082-007/R- Modul Praktikum · PDF fileadalah Ms. Visual Studio 2005 dengan database SQL Server 2000 yang terletak di server. ... Metode ini mengkoneksikan sebuah client

Praktikum Pemrograman Client Server

Laboratorium Komputer – STIKOM 63

Penerapan di form:

Lakukan proses instance dari web service tadi dengan syntax:

Private namaObject As New _

namaWebReference.namaWebService

Misal:

Private xService As New _

ServiceHitungDiskon.HitungDiskon

Untuk menggunakan function yang ada, tinggal memanggilnya seperti memanggil methods setelah kita menginstankan object dari suatu class.

Misal:

xService.NamaLengkap(“Dian”, “Sastro”)

Karena web service berupa function, maka jangan lupa untuk membuat variabel untuk menampung nilai balik sesuai dengan tipe data yang dikembalikan.

8.5. Web Service di WWW

Menggunakan web service yang sudah ada, baik itu di lokal komputer anda ataupun yang ada di internet, tidaklah begitu sulit seperti yang banyak orang bayangkan. Yang perlu kita ketahui adalah alamat dari web service yang akan kita pakai. Seperti misalnya web service yang ada di google.

Caranya adalah dengan menambahkan web references pada projek anda dan masukkan alamat web service yang ingin anda pakai, seperti contoh berikut.

Cara menggunakannya adalah sebagai berikut

Page 66: ST-RK-1.16-082-007/R- Modul Praktikum · PDF fileadalah Ms. Visual Studio 2005 dengan database SQL Server 2000 yang terletak di server. ... Metode ini mengkoneksikan sebuah client

Praktikum Pemrograman Client Server

64 Laboratorium Komputer – STIKOM

Private Sub btnSearch_Click(ByVal sender As

System.Object, ByVal e As _

System.EventArgs) Handles btnSearch.Click

' Create a Google Search object

Dim s As New _

com.google.api.GoogleSearchService

Dim xLisence As String

Dim xCari As String

xLisence = _

"0c3E0TVQFHJRqN4jYLYN33PX9TQ4IPIG"

xCari = txtSearchTerm.Text

Try

' Invoke the search method

Dim r As _

com.google.api.GoogleSearchResult= _

s.doGoogleSearch(xLisence, xCari, _

0, 1, False, "", False, "", "", "")

„Extract the estimated number of

„results for the search and display

Dim estResults As Integer = _

r.estimatedTotalResultsCount

lblSearchResults.Text = _

CStr(estResults)

Catch ex As _

System.Web.Services.Protocols.SoapException

MsgBox(ex.Message)

End Try

End Sub

Page 67: ST-RK-1.16-082-007/R- Modul Praktikum · PDF fileadalah Ms. Visual Studio 2005 dengan database SQL Server 2000 yang terletak di server. ... Metode ini mengkoneksikan sebuah client

Praktikum Pemrograman Client Server

Laboratorium Komputer – STIKOM 65

Latihan

1. Jalankan script SQL berikut pada database masing-masing.

CREATE TABLE Praktikan

(

[NIM] VarChar(11)

CONSTRAINT PK_Prtkn_Nim PRIMARY KEY,

[Nama] VarChar(40) NOT NULL,

[Kode_Praktikum] Char(3)

REFERENCES

Praktikum([Kode_Praktikum])

ON DELETE CASCADE ON UPDATE CASCADE

)

Insert into Praktikan values

('03410100073','Tom Cruise','PWB')

Insert into Praktikan values

('06410100666','Dian Sastrowardoyo','PCS')

Insert into Praktikan values

('07410100777','Edward Elric','PCS')

Insert into Praktikan values

('01410100111','Doraemon','PV2')

Insert into Praktikan values

('05410100055','Miyabi-chan','PCS')

Insert into Praktikan values

('09410100666','Avatar','PWB')

2. Buat project web service dengan nama service_prak.asmx yang mempunyai dua method berikut:

a. Function bernama AmbilDataPrak yang mengembalikan nilai berupa dataset berisi data dari tabel Praktikum.

b. Function bernama PraktikanByPraktikum dengan ketentuan seperti berikut:

Memiliki 1 inputan, yaitu kode_praktikum berupa String.

Nilai yang dikembalikan berupa dataset berisi data dari tabel Praktikan yang memiliki kode praktikum sesuai inputan.

Page 68: ST-RK-1.16-082-007/R- Modul Praktikum · PDF fileadalah Ms. Visual Studio 2005 dengan database SQL Server 2000 yang terletak di server. ... Metode ini mengkoneksikan sebuah client

Praktikum Pemrograman Client Server

66 Laboratorium Komputer – STIKOM

3. Buat project windows application dengan nama Lat_Modul7 , tambahkan satu form dengan nama frmWebService dengan tampilan berikut:

4. Manfaatkan web service yang telah dibuat ke dalam frmWebService. Gunakan method AmbilDataPrak pada combobox kode praktikum. Nama praktikum otomatis muncul ketika ada pemilihan kode praktikum di combobox.

5. Method PraktikanByPraktikum digunakan ketika terjadi penekanan tombol “Lihat” yang akan menampilkan data praktikan pada datagrid berdasarkan kode praktikum yang dipilih.

Textbox jumlah data berisi jumlah praktikan yang muncul di datagrid.