APLIKASI CETAK SIA DESKTOP Amron Yusro1, Kodrat I Satoto 2, Adian Fatchur Rochim2
Jurusan Teknik Elektro, Fakultas Teknik, Universitas Diponegoro Abstrak – Pada era perkembangan teknologi seperti sekarang ini, efisiensi waktu dan tenaga sangatlah diperlukan dalam dunia pendidikan. Kususnya dalam bidang cetak dokumen sistem informasi akademik berbasis PC (Personal Computer), cetak dokumen akan menjadi cepat, akurat dan efisien apabila ditunjang dengan aplikasi program yang tepat. Aplikasi program cetak dokumen sistem informasi akademik di Jurusan Teknik Elektro Universitas Diponegoro yang dipakai saat ini, masih mempunyai beberapa kekurangan salah satunya adalah untuk cetak dokumen transkrip akademik, yang masih harus diedit terlebih dahulu untuk mendapatkan format yang diinginkan, ini memungkinkan terjadi kesalahan pemindahan data, baik yang disengaja maupun yang tidak. Sehingga melalui tugas akhir ini akan dibuat suatu aplikasi program yang lebih baik dari sebelumnya, serta dapat memberikan metode keamanan data setelah dokumen dicetak. Langkah-langkah penelitian dalam pembuatan tugas akhir ini adalah analisis kebututuhan ,perancangan sistem dan pengujian sistem. Metode yang digunakan dalam perancangan sistem aplikasi ini dengan pendekatan terstruktur dari perancangan aliran data dengan sistem Entity Relationship Diagram (ERD) dan Data Flow Diagram (DFD). Aplikasi sistem ini akan memberikan tampilan cetak dokumen dalam PDF, dengan LUA sebagai bahasa pemrogramnnya, IUP sebagai tampilan program dan MySQL sebagai sistem databasenya. Berdasarkan hasil pengujian dapat diambil beberapa kesimpulan, diantaranya adalah : aplikasi sistem ini dapat memberikan kemudahan bagi pengguna dalam proses pencetakan dokumen SIA, memberikan laporan dokumen dalam bentuk PDF yang sesuai dengan format yang ditentukan serta dapat memberikan keamanan data setelah dokumen dicetak, karena terdapat kode pengaman yang berisi nama pengguna, waktu pencetakan, jenis dokumen, nim dan jumlah SKS.
komputer kita akan semakin mempermudah dalam melakukan pengolahan data dan sangat berpengaruh dalam efisiensi dan efektivitas kerja. Selama ini aplikasi program cetak dokumen sistem informasi akademik di Jurusan Teknik Elektro Universitas Diponegoro, masih mempunyai kekurangan salah satunya adalah untuk cetak dokumen transkrip akademik yang masih harus diedit terlebih dahulu sesuai dengan format yang dipakai, ini memungkinkan terjadi kesalahan pemindahan data baik yang disengaja maupun yang tidak. Sehingga melalui tugas akhir ini akan dibuat suatu aplikasi program yang lebih baik dari sebelumnya (menggunakan bahasa Delphi sebagai bahasa pemgrogramannya), serta dapat memberikan metode keamanan data setelah dokumen dicetak. Berdasarkan latar belakang diatas penulis mengangkat judul “Aplikasi Cetak SIA Desktop”. Aplikasi Cetak SIA Desktop di Jurusan Teknik Elektro Universitas Diponegoro merupakan penerapan suatu sistem berbasis PC (Personal Computer) untuk mencetak dokumen KRS (Kartu Rencana Studi), kartu peserta ujian, KHS (Kartu Hasil Studi), transkrip nilai, transkrip terbaik, transkrip lengkap, transkrip akademik, laporan distribusi jumlah dan prosentase IPK (Indek Prestasi Kumulatif) persemester, cetak nilai KHS (Kartu Hasil Studi) mahasiswa perdosen wali pada semester tertentu, daftar hadir kuliah, daftar peserta kuliah, daftar hadir ujian tengah semester dan daftar hadir ujian akhir semester. I.2 Tujuan Tujuan Tugas Akhir ini adalah untuk membuat dan mempelajari mempelajari bahasa pemrograman LUA dan Basisdata Mysql, dengan studi kasus aplikasi cetak dokuman SIA (Sistem Informasi Akademik) berbasis PC (Personal Computer), di SIFT (Sistem Informasi Fakultas Teknik) Universitas Diponegoro.
Kata-kunci : cetak dokumen, sistem berbasis PC, LUA, desktop
I.3 Pembatasan Masalah Batasan masalah pada Tugas Akhir ini adalah : a. Perancangan sistem berbasis PC (Personal Computer) dengan memanfaatkan LUA sebagai bahasa pemogramannya dan MySQL sebagai basis datanya. b. Sistem akan berjalan dalam sistem operasi Windows dan tidak berjalan pada sistem operasi yang lainnya. c. Hasil tampilan dokumen berupa berkas PDF.
I.PENDAHULUAN 1.1 Latar Belakang Pada era perkembangan teknologi seperti sekarang ini, efisiensi waktu dan tenaga sangatlah diperlukan dalam dunia pendidikan, informasi akademik sangatlah penting untuk menunjang kelancaran belajar mengajar. Seiring dengan bertambahnya jumlah pelajar/mahasiswa, maka dibutuhkan suatu sistem cetak dokumen informasi akademik yang cepat dan efisien, dengan pemakaian 1 2
Mahasiswa Teknik Elektro Universitas Diponegoro Dosen Teknik Elektro Universitas Diponegoro
1
dengan bantuan komputer yang memungkinkan data dapat diakses dengan mudah dan cepat untuk memperoleh informasi. MySQL merupakan sebuah sistem manajemen basisdata relasional yang bersifat open source, dan dapat beroperasi pada berbagai sistem operasi seperti Linux, FreeBSD, Windows, UNIX, dan SUN-Solaris. MySQL menggunakan bahasa standar SQL (Strukture Query Language) untuk mengelola data seperti membuat, menghapus, menambahkan dan lain sebagainya.
II. Dasar Teori 2.1 LUA Lua adalah bahasa penulisan (scripting) yang lahir pada tahun 1993, sebagai bagian dari Tecgraf, Computer Graphics Technology Group di PUC-Rio, Universitas Pontificial Catholic Rio de Janeiro, Brazil. Ketiga pencipta Lua merupakan anggota Tecgraf, yaitu Roberto Ierusalimschy, Luiz Henrique de Figueiredo, dan Waldemar celes. Pada awal kelahirannya, Lua merupakan perangkat pengembangan software rumahan, namun telah diadopsi oleh beberapa proyek industri seluruh dunia dan telah berkembang luas dalam berbagai jenis aplikasi industri seperti robotic, pemrograman literature, bisnis terdistribusi, teks editor, Bioinformatika, pengembangan web, dan lain-lain. Secara khusus, Lua menjadi salah satu software terkemuka di dunia dalam perkembangan game. Para pengguna Lua pada umumnya terbagi dalam tiga kelompok besar: a) mereka yang menggunakan Lua yang telah ter'(embedded)' dalam satu program aplikasi, b) mereka yang menggunakan Lua stand alone, dan c) mereka yang menggunakan Lua dan C bersamasama. Banyak orang menggunakan Lua embedded dalam satu program aplikasi, seperti CGILua (untuk membangun Halaman web dinamis) atau LuaOrb (untuk mengakses CORBA object). Aplikasi ini menggunakan Lua-C API untuk mendaftarkan fungsifungsi baru, untuk membuat tipe-tipe baru. Mengubah perilaku dari beberapa operasi bahasa, konfigurasi Lua untuk domain spesifik. Sering, para pemakai aplikasiaplikasi tersebut bahkan tidak mengetahui bahwa Lua adalah satu bahasa independent yang diadaptasikan pada domain khusus; sebagai contoh, CGILUA para pemakai cenderung berpikir Lua sebagai bahasa yang secara khusus dirancang untuk Web. Lua juga bermanfaat sebagai bahasa stand alone, sebagian besar untuk pengolahan teks dan sebagian kecil suatu program. Untuk penggunaanpenggunaan seperti itu, kemampuan utama Lua datang pada pustaka standarnya, yang menawarkan bentuk yang sesuai dan fungsi lain untuk penanganan string. Kita mungkin menganggap bahasa stand alone seperti penempelan(embedding) pada Lua dalam bagian string dan (teks) manipulasi file. Akhirnya, ada programmer yang bekerja di sisi lain dari bench, penulisan aplikasi yang menggunakan Lua sebagai library. Programmer seperti itu akan membuat program lebih pada C daripada Lua, meski mereka perlu pemahaman yang baik tentang Lua untuk membuat interface yang sederhana, mudah digunakan, dan terintegrasi baik dengan bahasa pemrograman.
III. Perancangan Sistem 3.1 Kebutuhan Sistem Setelah melakukan wawancara dan melihat persoalan yang ada maka informasi yang dibutuhkan dalam aplikasi ini meliputi : 1. Sistem membutuhkan database yang dipakai di Jurusan Teknik Elektro Universitas Diponegoro. 2. Sistem membutuhkan informasi mengenai pengguna dan penerima dari aplikasi cetak dokumen. 3. Sistem membutuhkan contoh format cetak dokumen SIA. Setelah membuat analisis kebutuhan, maka langkah selanjutnya adalah proses perancangan aplikasi cetak dokumen. 3.2. Rancangan Aplikasi Sistem Perancangan aplikasi sistem dimulai dari perancangan diagram konteks. Diagram konteks akan menggambarkan sebuah proses yang berinteraksi dengan lingkungannya, selanjutnya dibuat perancangan DFD (Data Flow Diagram) yang menggambarkan sistem sebagai jaringan kerja antar fungsi yang berhubungan satu sama lain dengan aliran dan penyimpanan data. Tahap perancangan selanjutnya adalah dibuat diagram entitas (Diagram E-R) dari sistem tersebut yang merupakan gambaran relasi antar entitas yang ada dalam sistem. Aplikasi Cetak SIA Desktop pada Jurusan Teknik Elektro Universitas Diponegoro ini, dibuat dengan LUA sebagai aplikasi bahasa pemrogramannya, dan MySQL sebagai basis data . 3.3
Diagram Konteks Diagram konteks merupakan sebuah diagram sederhana, yang menggambarkan hubungan antara entitas luar, masukan dan keluarannya, atau dengan kata lain diagram konteks menunjukkan sebuah proses yang berinteraksi dengan lingkungannya. Pada Aplikasi Cetak SIA Desktop ini terdapat empat terminator, yaitu operator, administrator, dosen dan mahasiswa. Operator dan administrator adalah sebagai pihak yang mempunyai hak akses ke dalam aplikasi,
2.2 Basisdata dan MySQ Secara sederhana basisdata (database) dapat diungkapkan sebagai suatu pengorganisasian data 2
karyawan dan daftar hadir ujian tengah semester (perMK/kelas). Pada proses ketiga, terdapat proses penghapusan, penambahan dan pengeditan data pengguna serta pengeditan untuk data mahasiswa dan matakuliah. Adapun gambaran secara umum DFD level 0 terlihat seperti pada Gambar 3.2.
sedangkan dosen dan mahasiswa merupakan pihak yang menerima hasil keluaran dari aplikasi sistem.
Gambar 3.1 Diagram Konteks Aplikasi Cetak SIA Desktop
Pada diagram konteks Gambar 3.1 diatas dapat dilihat gambaran secara umum aliran data dan aktifitas atau aksi yang dapat dilakukan oleh operator dan administrator. Aktifitas operator meliputi aktifitas pencarian data mahasiswa, data matakuliah, data alumni mahasiswa, data karyawan, mencetak dokumen dan menyimpan kode pengaman. Administrator dapat menjalankan fungsi aktifitas operator dan juga dapat menjalankan aktifitas penambahan pengguna, pencarian data kode pengaman, pengeditan data global, mencetak dokumen kode pengaman serta pengeditan data mahasiswa dan matakuliah.
Gambar 3.2 DFD Level 0
3.4.2 DFD Level 1 DFD level 1 merupakan penjelasan lebih rinci terhadap proses-proses yang terjadi pada aplikasi. DFD level 1 memberikan gambaran yang lebih jelas karena selain terminator aplikasi, digambarkan pula penyimpan data dan proses yang terjadi di dalam aplikasi.
3.4 Data Flow Diagram (DFD) DFD dalam aplikasi ini menjelaskan proses apa saja yang terjadi pada Aplikasi Cetak SIA Desktop, serta bagaimana interaksi antara data yang tersimpan dan proses yang dikenakan pada data tersebut. Dalam DFD ini akan terjadi penurunan level dimana dalam penurunan level yang lebih rendah akan merepresentasikan proses tersebut ke arah yang lebih jelas dan terperinci.
3.4.2.1 DFD Level 1 Proses 1 DFD level 1 proses 1 berisi proses yang terjadi pada proses login, yang ditunjukkan oleh Gambar 3.5. Dari Gambar 3.5 dapat dilihat bahwa dalam level 1 proses 1 terdapat proses : 1. Memasukkan nama (username) dan sandi (password) Memasukkan username dan password sebagai Operator dan Administrator. 2. Memeriksa username dan password Memeriksa username dan password yang terdapat pada basisdata tabel user. 3. Mengaktifkan menu utama dan menu admin. Menampilkan menu utama dan menu admin sesuai dengan username dan password yang digunakan.
3.4.1 DFD Level 0 Diagram aliran data(DFD) level 0 untuk aplikasi sistem pencetak dokumen SIA ini terdapat tiga proses, yaitu proses login, proses menampilkan berkas PDF dan proses administrator. Pada proses pertama terdapat form pengisian username dan password, yang merupakan syarat masuk ke dalam menu utama. Bila data yang dimasukkan dan setelah dicek pada basisdata sesuai, maka sistem akan masuk ke menu utama, sedangkan jika data yang dimasukkan tidak sesuai dengan basisdata maka pengguna tidak dapat masuk ke menu utama. Pada proses kedua yaitu proses menampilkan berkas PDF, yang meliputi menampilkan dokumen krs, kartu peserta ujian, khs (semester aktif), khs (semester lainnya), transkrip nilai, transkrip terbaik, transkrip lengkap, transkrip akademik, laporan distribusi jumlah dan prosentase ipk persemester, cetak nilai khs mahasiswa perdosen wali pada semester tertentu, daftar hadir kuliah, daftar peserta kuliah, daftar hadir ujian tengah semester (perMK/wali), daftar hadir ujian tengah semester (perMK/kelas), daftar hadir ujian akhir semester (perMK/wali), daftar
Dari DFD level 1 proses 1 ini dapat diterangkan secara lebih rinci yaitu sebagai berikut : 1. Pengguna diminta untuk memasukkan username dan password yang bersangkutan. 2. Sistem akan mencocokkan data yang dimasukkan dengan data yang ada pada basisdata. 3. Apabila username dan password yang diberikan salah, maka akan ditampilkan penolakan dan pengguna akan diminta memasukkan username dan password lagi. 4. Apabila username dan password yang dimasukkan telah benar, maka akan ditampilkan pilihan tema yang sebelumnya 3
telah dipilih, setelah itu kemudian masuk ke menu utama dan menu admin sesuai dengan kewenangannya. 5. Selanjutnya akan memasuki proses 2.
Gambar 3.3 DFD Level 1 Proses 1
3.4.2.2 DFD Level 1 Proses 2 Pada DFD level 1 proses 2 ini berisi proses yang terjadi pada halaman utama, seperti yang terlihat pada Gambar 3.4. Pada DFD level 1 proses 2 ini terdapat empat proses, yaitu : menampilkan menu tabel data mahasiswa, menampilkan tabel data matakuliah, menampilkan tabel data alumni, dan menampilkan tabel data karyawan. Pada input data pengguna akan berhubungan dengan data dari basisdata tabel user_lua.
Gambar 3.5 DFD Level 1 Proses 3 Menu Tabel Mahasiswa.
3.4.2.4 DFD Level 1 Proses 4. Pada proses 3 ini berisi diagram alir proses Administrator. Terdapat 5 proses yang terjadi antara lain proses menambah, mengedit dan menghapus User, pencarian dan cetak dokumen tabel kode pengaman, mengedit dan menyimpan data tabel global, mengedit dan menyimpan data tabel mahasiswa serta mengedit dan menyimpan data tabel matakuliah. Proses pertama adalah menambah User baru, pengguna (dalam hal ini Admin) akan menambah User baru dengan mengisi data-data yang diminta yaitu berupa username, password, previllege, dan active, untuk semua proses tersebut akan berhubungan dengan basisdata tabel user_lua dan semua data yang telah diisi nantinya akan disimpan dalam basisdata tabel user_lua. Untuk proses menambah, mengedit dan menghapus pengguna atau user akan berhubungan dengan basisdata tabel user_lua. Pencarian dan menampilkan berkas dokumen kode pengaman akan berhubungan dengan basisdata tabel security_code. Mengedit, menghapus dan menyimpan tabel global akan berhubungan dengan basisdata tabel global. Pada proses mengedit, menghapus dan menyimpan data mahasiswa akan berhubungan dengan basisdata tabel mhs. Sedangkan untuk proses terakhir adalah mengedit, menghapus dan menyimpan data matakuliah akan berhubungan dengan basisdata tabel mk.
Gambar 3.4 DFD Level 1 Proses 2
3.4.2.3 DFD Level 1 Proses 3 Menu Tabel Mahasiswa. Pada DFD level 1 proses 3 ini berisi proses yang terjadi pada halaman menu tabel mahasiswa, seperti yang terlihat pada Gambar 3.5. Pada DFD level 1 proses 2 ini terdapat sepuluh proses cetak dokumen yang dapat dilakukan pada menu tabel mahasiswa, yaitu : cetak dokumen kartu rencana studi, kartu ujian, kartu hasil studi, transkrip nilai, transkrip terbaik, transkrip lengkap, transkrip akademik, distribusi jumlah dan prosentase IPK persemester dan DPNA
Gambar 3.9 DFD Level 1 Proses 4.
4
3.6 Perancangan Basis Data Untuk perancangan basis data tidak disertakan dalam laporan,karena basis data yang digunakan dalam aplikasi cetak SIA Desktop ini menggunakan basis data yang telah tersedia di SIA Jurusan Teknik Elektro Universitas Diponegoro.
3.5
Diagram E-R (Entity Relationship) Diagram E-R merupakan diagram yang menggambarkan hubungan antara entitas satu dengan entitas lain dalam sebuah sistem. Pada aplikasi cetak SIA desktop ini, sebagai penggambarannya menggunakan contoh satu cetak dokumen SIA untuk menu tabel mahasiswa, menu tabel matakuliah dan menu tabel alumni transkrip. Contoh proses cetak dokumen menu tabel mahasiswa yaitu cetak dokumen KRS, untuk menu tabel matakuliah yaitu cetak dokumen daftar hadir kuliah dan menu transkrip alumni adalah transkrip nilai. Dalam aplikasi Cetak SIA Desktop ini terdapat dua pengguna sebagai pengakses sistem yaitu Operator dan Administrator. Pengguna aplikasi mempunyai atribut yang menyertainya diantaranya adalah username, password (merupakan password dari masing-masing pengguna), previlege (yang membedakan kewenangan untuk mengakses sistem terdapat 2 nilai yaitu operator dan admin) dan active (merupakan status yang membedakan masih aktif tidaknya pengguna di sistem). Diagram E-R ditunjukkan pada Gambar 3.7.
IV. IMPLEMENTASI DAN PENGUJIAN SISTEM Pada bab ini dibahas tentang implementasi dan pengujian terhadap aplikasi yang telah dibuat. Implementasi dan pengujian kali ini meliputi proses koneksi dengan basisdata, proses login, proses pergantian database, proses pencarian data, proses pengaturan halaman, proses pengaturan berkas PDF, proses penghapusan pengguna, proses penambahan pengguna baru, proses pengeditan data pengguna, proses pengeditan data mahasiswa dan proses pengeditan data matakuliah. 4.1
Proses Koneksi Dengan Basisdata Aplikasi ini menggunakan sistem basisdata MySQL dengan nama basisdatanya adalah elektro_S1_R1, elektro_S1_R2 dan elektro_d3. Agar aplikasi dapat mengakses sistem basisdata, maka aplikasi harus terhubung terlebih dahulu dengan sistem basisdata. Dalam LUA terdapat suatu fungsi siap pakai untuk melakukan proses tersebut. Berikut skrip program koneksi ke basisdata MySQL. require("luasql.mysql") module("mysql_con", package.seeall) sql_user = "root" sql_password = "ayusfumi" dbserver = "" sql_port = "3306" con_s1_r1 = "elektro_s1_r1" con_s1_r2 = "elektro_s1_r2" con_d3 = "elektro_d3" env = assert(luasql.mysql()) function connect_s1_r1() con_elektro=assert(env:connect(con_s1_r 1,sql_user,sql_password,dbserver,sql_port )) _G['con_elektro'] = con_elektro end function connect_s1_r2() con_elektro=assert(env:connect(con_s1_r 2,sql_user,sql_password,dbserver,sql_port )) _G['con_elektro'] = con_elektro end function connect_d3() con_elektro=assert(env:connect(con_d3,s ql_user,sql_password,dbserver,sql_port)) _G['con_elektro'] = con_elektro end
Gambar 3.11 Diagram E-R
Pada skrip di atas, terdapat tiga fungsi koneksi yaitu connect_s1_r1(), connect_s1_r2() dan connect_D3() yang berfungsi untuk memilih database, sistem akan melakukan koneksi ke sistem basisdata MySQL dengan mengisi dbserver dengan IP server, dan mengisi variabel pada user dan password sesuai dengan variabel user dan password MySQL.
Pada Diagram E-R dapat dilihat bahwa pada menu tabel matakuliah sebagai penghubung antara entitas krs dan mk adalah kmk, sedangkan antara entitas mk dan karyawan adalah dosen1 dan kode. Pada proses masuk ke sistem, sebelumnya akan melewati proses login terlebih dahulu, dengan mencocokkan atribut nama dan sandi. 5
Kemudian sistem melakukan koneksi ke basisdata yang akan digunakan.
di tampilkan adalah tabel security code. Berikut adalah skrip program untuk proses mencetak dokemen pada menu tabel mahasiswa.
4.2
function preview_tabel_mhs(file_lua,path) ass_dofile = assert(dofile(file_lua)) print_code.searching_print_code(#cek_mhs,cek_m hs) os.execute(path) end Pada saat proses sebelum tampilan PDF, cmd.exe akan muncul terlebih dahulu ini dikarenakan adanya fungsi os.execute dimana fungsi tersebut merupakan fasilitas sistem operasi yang disediakan oleh program LUA untuk menampilkan suatu file lewat cmd.exe.
Proses Login Pada proses login ini dibedakan menjadi dua jenis pengguna utama, yaitu login sebagai operator dan login sebagai admin. Jika login sebagai operator, maka hak aksesnya adalah hanya melihat dan mencetak dokumen pada halaman utama. Namun jika login sebagai admin, maka aplikasi akan masuk ke menu admin.
Gambar 4.1 Implementasi tampilan menu login.
4.3
Proses Pencarian Data Mahasiswa Pengujian pencarian data mahasiswa dilakukan pada halaman utama bagian tabel mahasiswa. Masukan data yang dapat dicari berupa nim, nama, kode wali, semester dan status. Apabila input ini tidak sesuai dengan database, maka akan muncul pesan bahwa data yang dimasukkan tidak sesuai dengan database. Berikut skrip program untuk proses pencarian data mahasiswa.
Gambar 4.4 Tampilan Pengujian keluaran cetak dokumen. 4.5
Proses Pengaturan Halaman Pengujian proses pengaturan halaman dapat dilakukan pada menu utama dan menu admin. Implementasi pengaturan halaman dapat dilihat pada gambar 4.5.
sql = " select smt,ta,nim,nama,kdw,aktif,tgl_lulus,almt,ipk,ip_lalu from mhs ".. " where nim like '%"..sql_nim.."%' and nama like '%"..sql_nama.."%' and ta like '%"..sql_ta.."%' and smt like '%"..sql_smt.."%'and aktif like '%"..sql_status.."%' and kdw like '%"..sql_kdw.."%' and ip_lalu like '%"..sql_ip.."%'" sql = sql.." limit "..from..",20"
Pada skrip diatas merupakan perintah untuk meminta data pada database tabel mhs, dimana menggunakan like untuk permintaan datanya, dimana data yang dimasukan dalam menu pencarian akan dicari berdasarkan kemiripan data.
Gambar 4.5 Implementasi pengaturan halaman
Hasil pengujian setelah masukan yang dirubah, dapat dilihat pada gambar 4.6. Masukan yang dirubah adalah font header menjadi times bolditalic, font body dirubah menjadi font symbol, top margin = 1, left margin = 1, line bodi dirubah menjadi 2.0 dan dashmode menjadi normal (yang berarti garis putus-putus berubah menjadi garis lurus).
Gambar 4.3 Pengujian pencarian data mahasiswa
4.4
Proses Keluaran Cetak Dokumen SIA Pengujian proses keluaran cetak dokumen SIA dapat dilakukan pada menu utama dan menu admin, keluaran cetak dokumen untuk menu admin yang dapat
Gambar 4.6 Pengujian pengaturan halaman
6
q = assert (con_elektro:execute (" insert into user_lua (username,password,previlege,active,mem o) value ('"..sql_user.."','"..sql_password.."','"..sql_pr evilege.."','"..sql_active.."','"..sql_memo.."')" )) searching_user(0) elseif sql_active == "NO" then q = assert (con_elektro:execute (" insert into user_lua (username,password,previlege,active,mem o) value ('"..sql_user.."','"..sql_password.."','"..sql_pr evilege.."','"..sql_active.."','"..sql_memo.."')" )) searching_user(0) else iup.Message("Error","Masukkan nilai YES atau NO untuk add kolom active") end
4.6
Proses Penghapusan Pengguna. Pengujian penghapusan operator admin oleh administrator dilakukan pada halaman utama bagian menu admin user. Kita tinggal klik tabel user yang mau dihapus kemudian tekan tombol delete . Impementasi halaman menu admin pengguna dapat dilihat pada gambar 4.9. Berikut adalah skrip untuk penghapusan pengguna. function btn_delete:action() b = iup.Alarm("Delete", "Anda yakin mau delete User ini?","Yes","No","Cancel") -- Shows a message for each selected button if b == 1 then --iup.Message("Sukses", "Delete successfully") q = assert (con_elektro:execute (" delete from user_lua where row_id = '"..mat_user:getcell(x,1).."'and username = '"..mat_user:getcell(x,2).."' and password = '"..mat_user:getcell(x,3).."' and previlege = '"..mat_user:getcell(x,4).."' and active = '"..mat_user:getcell(x,5).."' and memo = '"..mat_user:getcell(x,6).."'")) searching_user(0) elseif b == 2 then return iup.DEFAULT elseif b == 3 then iup.Message("Cancel", "Delete Cancel") end end
end
Pada skrip diatas terdapat fungsi btn_add, yang merupakan aksi dari tombol add setelah ditekan, jika semua nilai atribut yang diminta sudah terisi maka, akan menjalankan permintaan penambahan pengguna. Untuk nilai active harus bernilai “YES” atau “NO”, . jika memasukkan nilai selain itu maka akan muncul pesan error.Pengujian penambahan pengguna dapat dilihat pada gambar 4.63.
Pada skrip diatas terdapat fungsi btn_delete, yang merupakan aksi dari tombol delete setelah ditekan, iup.alarm digunakan untuk menampilkan dialog pesan, terdapat dua nilai kondisi jika bernilai 1 maka akan menjalankan permintaan penghapusan data, jika bernilai dua maka akan kembali kembali ke menu utama, yang berarti data tidak jadi dihapus. Pengujian penghapusan pengguna dapat dilihat pada gambar 4.62.
Gambar 4.8 Pengujian penambahan pengguna admin baru
4.8
Proses Pengeditan Data Pengguna. Pengujian pengeditan pengguna baru oleh administrator dilakukan pada halaman form admin user. Kolom yang dapat di edit adalah kolom UserId, Password, Username, Previllege, dan Active. Halaman form pengeditan data pengguna dapat dilihat pada gambar 4.65. Berikut adalah skrip untuk pengeditan data pengguna.
Gambar 4.7 Pengujian penghapusan pengguna
4.7
Proses Penambahan Pengguna Baru. Pengujian penambahan pengguna baru oleh admin dilakukan pada menu admin user. Kolom yang harus diisi adalah kolom UserId, Username, Password, Previllege dan Active. Halaman form penambahan pengguna baru dapat dilihat pada gambar 4.64. Berikut adalah skrip untuk penembahan pengguna baru.
function btn_save:action() sql_value() if mat_user:getcell(x,1) == nil then iup.Message("Error", "Klik pada tabel kolom dan baris yang mau di edit ..") end if sql_active == "YES" then q = assert (con_elektro:execute (" update user_lua set username = '"..sql_user.."', password = '"..sql_password.."', previlege = '"..sql_previlege.."', active = '"..sql_active.."', memo = '"..sql_memo.."'
function btn_add:action() sql_value() if sql_memo == nil then sql_memo = "" end if sql_active == "YES" then
7
where row_id = '"..mat_user:getcell(x,1).."'")) q = assert (con_elektro:execute (" update theme_lua set username = '"..sql_user.."', password = '"..sql_password.."', active = '"..sql_active.."' where row_id = 2")) searching_user(0) elseif sql_active == "NO" then q = assert (con_elektro:execute (" update user_lua set username = '"..sql_user.."', password = '"..sql_password.."', previlege = '"..sql_previlege.."', active = '"..sql_active.."', memo = '"..sql_memo.."' where row_id = '"..mat_user:getcell(x,1).."'")) searching_user(0) else iup.Message("Error","Masukkan nilai YES atau NO untuk edit kolom active") end
if text_edit_ta.value == "" then iup.Message("Error","text ada yang kosong!") return iup.CLOSE end if text_edit_ip_lalu.value == "" then iup.Message("Error","text ada yang kosong!") return iup.CLOSE end if text_edit_tgl_lulus.value == "" then iup.Message("Error","text ada yang kosong!") return iup.CLOSE end q = assert (con_elektro:execute (" update mhs set nama = '"..text_edit_nama.value.."',ktlhr = '"..text_edit_ktlhr.value.."',tlhr = '"..text_edit_tlhr.value.."',konsentrasi = '"..text_edit_konsentrasi.value.."',almt = '"..text_edit_almt.value.."',kelamin = '"..list_kelamin.value.."',negara = '"..text_edit_negara.value.."',aktif = '"..list_aktif.value.."',status = '"..text_edit_status.value.."',kp = '"..text_edit_kp.value.."',kpeng = '"..text_edit_kpeng.value.."',skripsi = '"..text_edit_skripsi.value.."',skripsieng = '"..text_edit_skripsieng.value.."',asal_sek = '"..text_edit_asal_sek.value.."',ta = '"..text_edit_ta.value.."',ortu = '"..text_edit_ortu.value.."',alamat_ortu = '"..text_edit_almt_ortu.value.."',pekerjaan = '"..text_edit_pekerjaan.value.."',ip_lalu = '"..text_edit_ip_lalu.value.."',tgl_lulus = '"..text_edit_tgl_lulus.value.."',no_ijasah = '"..text_edit_no_ijasah.value.."' where nim = '"..mat_search_edit_mhs:getcell(1,1).."'")) searching_edit_mahasiswa(0) return iup.CLOSE end
end
Pada skrip diatas terdapat fungsi btn_save, yang merupakan aksi dari tombol save setelah ditekan, jika semua nilai atribut yang diminta sudah terisi maka, akan menjalankan permintaan penyimpanan pengguna. Untuk nilai active harus bernilai “YES” atau “NO”, . jika memasukkan nilai selain itu maka akan muncul pesan error.Pengujian penambahan pengguna dapat dilihat pada gambar 4.64.
Pada skrip diatas terdapat fungsi btn_save, yang merupakan aksi dari tombol save setelah ditekan, jika semua nilai atribut yang diminta sudah terisi maka, akan menjalankan permintaan penyimpanan data mahasiswa. Pengujian penambahan pengguna dapat dilihat pada gambar 4.65
Gambar 4.9 Pengujian pengeditan pengguna admin yang lama
4.9
Proses Pengeditan Data Mahasiswa. Pengujian pengeditan data mahasiswa oleh admin dilakukan pada halaman form admin edit mahasiswa. Kolom yang dapat di edit adalah kolom nama, ktlhr, tlhr, konsentrasi, almt, kelamin, negara, aktif, status, kp, kpeng, skripsi, skripsieng, asal_sek, ta, ortu, alamat_ortu, pekerjaan, ip_lalu, tgl_lulus, dan no_ijasah. Halaman form pengeditan data mahasiswa dapat dilihat pada gambar 4.66, sedangkan untuk proses pengeditan data matakuliah sama dengan data mahasiswa hanya terdapat perbedaan pada pengambilan tabel database dan tampilan menu. Berikut ini adalah skrip untuk proses pengeditan data mahasiswa. function btn_save_mhs:action() if text_edit_tlhr.value == "" then iup.Message("Error","text ada yang kosong!") return iup.CLOSE end
Gambar 4.10 Pengujian pengeditan data mahasiswa
8
[10]The Kepler Project, Lua SQL, 2003.
V. KESIMPULAN DAN SARAN 5.1 Kesimpulan Dari semua penjelasan yang telah disampaikan baik pada proses awal perancangan sampai dengan pengujian, maka dapat ditarik beberapa kesimpulan dan saran yang dapat digunakan sebagai bahan untuk mengembangkan sistem ini ke arah yang lebih baik dan sempurna.
Amron Yusro (L2F305184) lahir di Banyumas, 05 September 1980. Menyelesaikan pendidikan dasar hingga pendidikan tingkat pertama di Purwokerto dan pendidikan tingkat menengah serta Diploma 3 Politeknik Negeri Semarang di Semarang. Saat ini sedang menempuh pendidikan Strata 1 di jurusan Teknik Elektro bidang Konsentrasi Teknik Informatika dan Komputer Universitas Diponegoro
5.1 Kesimpulan 1. Aplikasi ini memberikan kemudahan bagi Administrator dalam proses pencetakan dokumen SIA. 2. Aplikasi dapat memberikan laporan dokumen dalam bentuk PDF yang sesuai dengan format yang ditentukan. 3. Aplikasi dapat memberikan keamanan data setelah dokumen dicetak, karena terdapat kode pengaman yang berisi nama pengguna, waktu pencetakan, jenis dokumen, nim dan jumlah SKS.
Mengetahui, Dosen Pembimbing I
Ir.Kodrat I Satoto,MT. NIP.196310281993031002
5.2 Saran 1. Agar cetak dokumen SIA lebih akurat dan lengkap maka diharapkan administrator dalam mengisi database lebih komplit dan tidak membiarkan kolom-kolom dalam database tidak terisi. 2. Diharapkan dari sistem aplikasi cetak SIA ini dapat dikembangkan menjadi sistem yang menjadi pedoman untuk menyamakan format cetak dokumen SIA yang selama ini masih ada perbedaan format antar jurusan. 3. Diharapkan untuk pengamanan hasil cetak dokumen tidak hanya menggunakan code yang tersimpan di database, tetapi juga barcode untuk kemudahan validasi data. 4. Diharapkan sistem informasi ini dapat dikembangkan di semua jurusan Universitas Diponegoro. DAFTAR PUSTAKA [1]Albrecht Zimmermann, A Short LUA Overview, 2005. [2]Ahmad Benny Mutiara dkk, “Pengantar Bahasa Pemrograman LUA”, 2007. [3]Fathansyah, “Basis Data”, CV. Informatika, Bandung, 1999. [4]James Hoffman. Introduction to Structured Query Language.: 1996. [5]Kurt Jung and Aaron Brown. Beginning LUA Programing. Wiley Publishing. Indianapolis: 2007. [6]Roberto Ierusalimschy and Marcela Ozório Suarez, MD5, PUC-Rio, 2003. [7]Sutanta, E., Sistem Basisdata, Graha Ilmu, Yogyakarta, 2004. [8]Suja, Imam, Pemrograman SQL dan database server MSQL, ANDI, Yogyakarta, 2005. [9]Takeshi Kanno, Haru Free PDF Library II, 1999. 9
Dosen Pembimbing II
Adian Fatchurrohim,ST,MT NIP.197302261998021001