Source Code Program RANCANG BANGUN SISTEM PENILAIAN PRAKTIKUM BERBASIS JSON WEB SERVICE PADA LAB. BASIS DATA UPN “VETERAN” JATIM.

Gambar 4.8 Menu Laporan Admin

9. Menu Aktivasi

Web Menu aktivasi adalah menu kepala laboratorium untuk mengubah status praktikum yang akan diaktifkan. Gambar 4.9 Menu Aktivasi

4.3 Source Code Program

Berikut ini akan dijelaskan beberapa source code program sistem penilaian praktikum yang diterapkan pada laboratorium Basis Data UPN “VETERAN” JATIM. a. Menampilkan nilai berdasarkan sesi, jenis nilai, dan modul pada form input nilai praktikum. Berikut ini adalah kutipan kode menampilkan nilai dengan pilihan jenis nilai adalah tugas pendahuluan tupen : Dim AXEcess As New localhost.Service Dim du, dut As String Sub viewtp du = nilai_tupen dut = Nilai Tupen Hak Cipta © milik UPN Veteran Jatim : Dilarang mengutip sebagian atau seluruh karya tulis ini tanpa mencantumkan dan menyebutkan sumber. Ds = AXEcess.tampilnilaidu, dut, CmbStats.Text, CmbModul.Text DGInputNilaiPrak.DataSource = Ds.Tables tmplnil End Sub AXEcess adalah nama objek yang menjadi perwakilan dari web service yang akan digunakan. Objek “Ds” adalah objek berupa dataset yang memanggil fungsi web service bernama “tampilnilai”. Berikut adalah kutipan kode dari fungsi web service dengan nama “tampilnilai” : WebMethod _ ScriptMethodResponseFormat:=ResponseFormat.Xml _ Public Function tampilnilai ByVal nil As String , ByVal nmnil As String , ByVal nmsesi As String , ByVal mdl As String As Data.DataSet If kon.State = Data.ConnectionState.Open Then kon.Close End If kon.ConnectionString = Data Source=4TH- PC\SQLEXPRESS;Initial Catalog=BasDat;Integrated Security=True kon.Open DMLSql.CommandText = SELECT praktikan.npm_praktikan AS NPM, praktikan.nama_praktikan AS Nama, nilai. nil AS [ nmnil ], nilai.mdl AS Modul FROM nilai INNER JOIN praktikan ON nilai.npm_praktikan = praktikan.npm_praktikan INNER JOIN penjadwalan ON praktikan.npm_praktikan = penjadwalan.npm_praktikan WHERE penjadwalan.sesi_prak = nmsesi AND nilai.mdl = mdl da = New SqlDataAdapterDMLSql.CommandText, kon da.Fillds, tmplnil da.MissingSchemaAction = Data.MissingSchemaAction.AddWithKey Dim cb As SqlCommandBuilder cb = New SqlCommandBuilderda Return ds End Function Terlihat pada kutipan source code diatas bahwa fungsi web service dengan nama “tampilnilai” adalah web service yang mempunyai output XML. Fungsi ini merupakan fungsi yang membutuhkan parameter, terdapat empat parameter yang dibutuhkan, yaitu “nil”, “nmnil”, “nmsesi”, dan “mdl” yang sama-sama berupa string. Ke empat parameter ini dibutuhkan Hak Cipta © milik UPN Veteran Jatim : Dilarang mengutip sebagian atau seluruh karya tulis ini tanpa mencantumkan dan menyebutkan sumber. untuk melengkapi query pada commandtext. Satu fungsi ini digunakan untuk empat kasus, yaitu menampilkan nilai berdasarkan tugas pendahuluan, disiplin, demo, dan laporan resmi. b. Menyimpan data nilai berdasarkan pilihan datagridview pada form input nilai praktikum. Berikut ini adalah kutipan kode menyimpan data nilai dengan pilihan jenis nilai adalah tugas pendahuluan tupen : Dim AXEcess As New localhost.Service Dim du, dut As String Sub svpiltp du = nilai_tupen Try AXEcess.svdtapildu, TxtInputNil.Text, LblModNil.Text, LblNPMPrak.Text Catch ex As Exception End Try Call viewtp End Sub AXEcess memanggil fungsi yang bernama “svdtapil”. Berikut adalah kutipan kode dari fungsi web service dengan nama “svdtapil” : WebMethod _ ScriptMethodResponseFormat:=ResponseFormat.Json _ Public Function svdtapil ByVal nmnil As String , ByVal valnil As String , ByVal mdl As String , ByVal npm As String As String strSql = UPDATE nilai SET nmnil = valnil WHERE mdl = mdl AND npm_praktikan = npm tabelname = updtpil If kon.State = Data.ConnectionState.Open Then kon.Close End If kon.ConnectionString = Data Source=4TH- PC\SQLEXPRESS;Initial Catalog=BasDat;Integrated Security=True kon.Open da = New SqlDataAdapterstrSql, kon da.Fillds, tabelname da.MissingSchemaAction = Data.MissingSchemaAction.AddWithKey Hak Cipta © milik UPN Veteran Jatim : Dilarang mengutip sebagian atau seluruh karya tulis ini tanpa mencantumkan dan menyebutkan sumber. Dim cb As SqlCommandBuilder cb = New SqlCommandBuilderda Dim MA As String = New String ds.Tablestabelname.Rows.Count {} Dim j As Integer = 0 For Each dr As Data.DataRow In ds.Tablestabelname.Rows MAj = New String {drnmnil.ToString} j += 1 Next Dim js As New JavaScriptSerializer Dim myjson As String = js.SerializeMA Return myjson End Function Terlihat pada kutipan source code diatas bahwa fungsi web service dengan nama “svdtapil” adalah web service yang mempunyai output JSON. Fungsi ini merupakan fungsi yang membutuhkan parameter, terdapat empat parameter yang dibutuhkan, yaitu “nmnil”, “valnil”, “mdl”, dan “npm” yang sama-sama berupa string. Berbeda dengan XML yang mempunyai hasil output berupa objek dataset, JSON mempunyai hasil output berupa string. c. Menampilkan nilai berdasarkan sesi dan modul pada form menu laporan admin. Berikut ini adalah kutipan kode menampilkan nilai dengan pilihan sesi dan modul : Dim lapnil As New localhost.Service Protected Sub BtnLihatNilai_Click ByVal sender As Object , ByVal e As System.EventArgs Handles BtnLihatNilai.Click Ds = lapnil.vwLapAdminDDLMod.SelectedItem.Text, DDLSesi.SelectedItem.Text GVLaporan.DataSource = Ds GVLaporan.DataBind BtnPrint.Visible = True End Sub Hak Cipta © milik UPN Veteran Jatim : Dilarang mengutip sebagian atau seluruh karya tulis ini tanpa mencantumkan dan menyebutkan sumber. lapnil memanggil fungsi yang bernama “vwLapAdmin”. Sedangkan “GVLaporan” adalah sebuah gridview yang menampung data berasal dari web service. Berikut adalah kutipan kode dari fungsi web service dengan nama “vwLapAdmin” : WebMethod _ ScriptMethodResponseFormat:=ResponseFormat.Xml _ Public Function vwLapAdmin ByVal LapMod As String , ByVal LapSesi As String As Data.DataSet If kon.State = Data.ConnectionState.Open Then kon.Close End If kon.ConnectionString = Data Source=4TH- PC\SQLEXPRESS;Initial Catalog=BasDat;Integrated Security=True kon.Open DMLSql.CommandText = SELECT praktikan.npm_praktikan AS NPM, praktikan.nama_praktikan AS Nama, nilai.mdl AS Modul, nilai.nilai_tupen AS Tupen, nilai.nilai_disiplin AS Disiplin, nilai.nilai_demo_prak AS Demo, nilai.nilai_lapres AS Lapres FROM nilai INNER JOIN praktikan ON nilai.npm_praktikan = praktikan.npm_praktikan INNER JOIN penjadwalan ON praktikan.npm_praktikan = penjadwalan.npm_praktikan WHERE nilai.mdl = LapMod AND penjadwalan.sesi_prak = LapSesi da = New SqlDataAdapterDMLSql.CommandText, kon da.Fillds, vwLapAdmin da.MissingSchemaAction = Data.MissingSchemaAction.AddWithKey Dim cb As SqlCommandBuilder cb = New SqlCommandBuilderda Return ds End Function Terlihat pada kutipan source code diatas bahwa fungsi web service dengan nama “vwLapAdmin” adalah web service yang mempunyai output XML. Untuk fungsi ini hanya membutuhkan satu parameter, yaitu parameter “LapMod” sebagai string. Hak Cipta © milik UPN Veteran Jatim : Dilarang mengutip sebagian atau seluruh karya tulis ini tanpa mencantumkan dan menyebutkan sumber. d. Melakukan proses update status praktikum yang akan diaktifkan semester tertentu. Berikut ini adalah kutipan kode proses update status praktikum berdasarkan praktikum pilihan kepala laboratorium : Protected Sub BtnAktivasi_Click ByVal sender As Object , ByVal e As System.EventArgs Handles BtnAktivasi.Click Try aktifread.updstatONDDLAkPrak.SelectedItem.Text Catch ex As Exception End Try Try aktifread.updstatOFFDDLAkPrak.SelectedItem.Text Catch ex As Exception End Try Call loadStatON End Sub Pada kutipan source code diatas, terlihat ada dua proses yang hampir sama tetapi terpisah. Hal ini disebabkan karena eksekusi untuk pemrograman pada ASP .NET Active Server Pages berbeda dengan pemrograman pada aplikasi berbasis desktop sehingga dua proses tersebut harus dieksekusi satu-persatu. Fungsi web service yang bernama “updstatON” dan “upstatOFF” akan dijabarkan sebagai berikut : WebMethod _ ScriptMethodResponseFormat:=ResponseFormat.Json _ Public Function updstatON ByVal nmpilON As String As String strSql = UPDATE praktikum SET status = ON FROM praktikum WHERE nama_prak = nmpilON tabelname = updtstatON If kon.State = Data.ConnectionState.Open Then kon.Close End If kon.ConnectionString = Data Source=4TH- PC\SQLEXPRESS;Initial Catalog=BasDat;Integrated Security=True kon.Open da = New SqlDataAdapterstrSql, kon Hak Cipta © milik UPN Veteran Jatim : Dilarang mengutip sebagian atau seluruh karya tulis ini tanpa mencantumkan dan menyebutkan sumber. da.Fillds, tabelname da.MissingSchemaAction = Data.MissingSchemaAction.AddWithKey Dim cb As SqlCommandBuilder cb = New SqlCommandBuilderda Dim MA As String = New String ds.Tablestabelname.Rows.Count {} Dim j As Integer = 0 For Each dr As Data.DataRow In ds.Tablestabelname.Rows MAj = New String {dr status .ToString} j += 1 Next Dim js As New JavaScriptSerializer Dim myjson As String = js.SerializeMA Return myjson End Function WebMethod _ ScriptMethodResponseFormat:=ResponseFormat.Json _ Public Function updstatOFF ByVal nmpilOFF As String As String strSql = UPDATE praktikum SET status = OFF FROM praktikum WHERE nama_prak nmpilOFF tabelname = updtstatOFF If kon.State = Data.ConnectionState.Open Then kon.Close End If kon.ConnectionString = Data Source=4TH- PC\SQLEXPRESS;Initial Catalog=PrakBasDat;Integrated Security=True kon.Open da = New SqlDataAdapterstrSql, kon da.Fillds, tabelname da.MissingSchemaAction = Data.MissingSchemaAction.AddWithKey Dim cb As SqlCommandBuilder cb = New SqlCommandBuilderda Dim MA As String = New String ds.Tablestabelname.Rows.Count {} Dim j As Integer = 0 For Each dr As Data.DataRow In ds.Tablestabelname.Rows MAj = New String {dr status .ToString} j += 1 Next Dim js As New JavaScriptSerializer Dim myjson As String = js.SerializeMA Return myjson End Function Hak Cipta © milik UPN Veteran Jatim : Dilarang mengutip sebagian atau seluruh karya tulis ini tanpa mencantumkan dan menyebutkan sumber. Pada dua fungsi JSON web service diatas sepintas tidak ada perbedaan, namun kedua fungsi tersebut mempunyai output yang berbeda. Fungsi “updstatON” digunakan untuk mengubah status praktikum menjadi “ON” atau aktif, sedangkan fungsi “updstatOFF” digunakan untuk mengubah status praktikum menjadi “OFF” atau non-aktif. Hak Cipta © milik UPN Veteran Jatim : Dilarang mengutip sebagian atau seluruh karya tulis ini tanpa mencantumkan dan menyebutkan sumber. 69 BAB V UJI COBA SISTEM Pada bab V ini akan membahas tentang uji coba sistem yang telah dibangun, sampai sejauh mana program bekerja, apa kekurangan yang didapat, dan keuntungan dari sistem yang digunakan.

5.1 Hasil dan Pembahasan