Dokumen tersebut merupakan tutorial tentang penerapan database SQLite pada sistem informasi KHS dan KRS berbasis Android. Tutorial ini menjelaskan langkah-langkah pembuatan aplikasi tersebut mulai dari desain antarmuka pengguna, pembuatan database dan tabel, penginputan data mahasiswa, mata kuliah, KRS dan KHS, hingga pelaporan. Kode program yang dibutuhkan seperti pembuatan kelas, aktivitas, database, serta operasi CRUD juga dijelaskan secara
MA Kelas XII Bab 1 materi musik mkontemnporerFase F.pdf
SIMPAN_KRS_KHS
1. Tutorial Mobile Computing – Tahun 2014/2015
Penerapan Database SQLiteAndroid pada
Sistem Informasi KHS dan KRS
Fathorazi Nur Fajri /10011543
Program Studi Teknik Informatika
Sekolah Tinggi Teknologi Nurul Jadid
PO. BOX Paiton Probolinggo 67291 Telp. & Fax (0335) 772073
R4si.b1nt4ng@gmail.com
Pada Pembahasan Kali ini akan menjelaskan tentang langkah langkah untuk aplikasi krs dan khs dengan
Sqlite pada android. Kententuan pada aplikasi ini ialah Sebagai berikut :
Terdapat Sebuah Login Untuk
Terdapat input mahasiswa, input matakuliah, input krs, dan input nilai sebagai khs. Dilengkapi
dengan simpan, edit serta hapus.
Terdapat laporan untuk krs dan khs
Setelah kita mengetahui proses dari aplikasi tersebut. Saatnya kita untuk mencoba membuatnya.
Buat lah project Android Dengen ketentuan sebagai Berikut.
Project name Akademik
Build target Android 2.2
Package name com.akademik
Create Activity akademik
Kemudian pada main.xml kita bisa mendesainya Sebagai Berikut.
Untuk menambahkan file .xml atau file desain kita, kita dapat melakukan cara – cara sebagai
berikut:
Klik kanan folder layout - > pilih new kemudian -> android file XML
Setelah itu beri nama file xml kita.
o Desain login (main.xml)
Pada bagian ini button login kita gunakan untuk masuk ke menu dan button exit untuk
keluar dari Aplikasi
2. Tutorial Mobile Computing – Tahun 2014/2015
o Desain Menu (menu.xml)
Pada bagian menu ini terdapat beberapa button yang menghubungkan dengan konten
konten yang lain. Seperti halnya input mahasiswa, Input matakuliah, Input KRS ,dan
Input nilai Sebagai KHS.
Untuk memberi gambar pada button kita bisa melakukan hal sebagai berikut :
1. Buat Folder dengan nama “drawable” pada bagian RES
2. Setelah itu kalian Tinggal Letakkan File gambarnya pada folder drawable dengan
cara mengdrag file gambar kalian ke folder drawable.
3. Kemudian pada Tab Propertis cari bagian background kemudian ganti valuenya
dengan klik [...] kemudia akan keluar kotak dialog dan klik drawable kemudian pilih
gambar yang akan di gunakan.
3. Tutorial Mobile Computing – Tahun 2014/2015
o Desain Input Mahasiswa (i_mahasiswa.xml)
Pada Desain bagian ini terdapat beberapa button yaitu cek, simpan, edit, hapus, serta
refresh. Button ini di gunakan untuk menyimpan, mengedit, serta menghapus data.
o Desain Input Matakuliah (i_makul.xml)
Pada Desain bagian ini terdapat beberapa button yaitu cek, simpan, edit, hapus, serta
refresh. Button ini di gunakan untuk menyimpan, mengedit, serta menghapus data.
4. Tutorial Mobile Computing – Tahun 2014/2015
o Desain Input KRS (i_krs.xml)
Untuk Desain Di bagian KRS terdapat sebuah spinner. Spinner ini untuk awal berjalan
bersifat visible atau tidak terlihat. Hal ini akan terlihat jika mahasiswa telah
menginputkan matakuliah dan dia ingin menambahkan mata kuliah baru dengan
mengeklik tombol button.
Selain itu pada desain terdapat TableLayout 1 yang di dalamnya tablerow yang nantinya
akan terisi checkbox untuk menampilkan semua daftar matakkuliah yang terdapat pada
database.
o Desain Input nilai atau KHS (i_khs.xml)
Pada Bagian desain ini mulai terdapat beberapa spinner. Spinner nim ini digunakan untuk
menampilkan data nim pada database. Dari spinner nim ini akan di hubungkan dengan
spinner matakuliah yang nantinya akan berfungsi untuk memberi nilai pada matakuliah
tersebut.
5. Tutorial Mobile Computing – Tahun 2014/2015
o Desain laporan KRS (o_krs.xml)
Pada bagian desain ini terdapat spinner yang menampikan semua data nim pada database dan
kemudian dari nim tersebut akan di munculkan daftar matakuliah yang mereka pilih pada
proses input KRS.
Setelah kita selesai membuat desain kita harus membuat file . java sebanyak file .xml ada.
Cara membuat file java yaitu sebagai berikut :
Klik kanan pada Package com.akademik -> new -> kemudian pilih Class
Setelah Class atau .java terbuat maka akan tampil Code Sebagai Berikut.
package com.akademik;
public class menu {
}
Nach kode ini Kita tambahkan Sehingga Menjadi Seperti ini.
public class menu extends Activity {
/** Called when the activity is first created. */
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.menu); // ini kode untuk menampilkan file xml
}
}
Tujuan di tambahkan kode tersebut ialah untuk menampilkan file xml yang telah kita buat.
Setelah kita memahami pembuatan class diatas. Maka kita lakukan cara yang sama untuk
membuat class – class yang lain.
Setting File xml dan java seperti tabel di bawah ini.
File XML File Java
Main.xml Akademik.java
Menu.xml Menu.java
I_mahasiswa.xml I_mahasiswa.java
I_makul.xml I_makul.java
I_krs.xml I_krs.java
I_khs.xml I_khs.java
O_krs.xml O_krs.java
6. Tutorial Mobile Computing – Tahun 2014/2015
Setelah kita selesai membuat class. Saatnya kita untuk mendaftarkan class atau file .java tersebut
pada Android manifest.XML
Setelah kita selesai menuliskan Kode pada Android Manifest. Saatnya kita membuat database
yang ingin kita buat dengan menggunakan kode java. Dengan susunan Database sebagai berikut
Tabel Mahasiswa
Tabel Makul
Tabel krs
Tabel khs
Database Akademik
Tabel Mahasiswa
Tabel Makul
Tabel krs
Tabel khs
Field type
Nim Integer Primary Key
Nama Text
Password Text
Field type
Kode Integer Primary Key
Nama Text
Sks Text
Semester Text
Field type
Nim Integer Primary Key
Nama_makul Text
Field type
Nim Integer
Kode Text
Nilai Integer
7. Tutorial Mobile Computing – Tahun 2014/2015
Buat lah method atau public void untuk membuat database dan tabel yang ingin kita buat. Jadi dapat
memanggil method ini jika digunakan.
public void database() {
try {
db = SQLiteDatabase.openDatabase("data/data/com.AndroidKID/db_Akademik", null,
SQLiteDatabase.CREATE_IF_NECESSARY);
Toast.makeText(this, "Database Telah Siap", Toast.LENGTH_SHORT).show();
} catch (Exception e) {
// TODO: handle exception
Toast.makeText(this, e.getMessage(), Toast.LENGTH_SHORT).show();
}
}
Kode ini lah yang kita gunakan untuk membuat database. Akan tetapi jangan lupa untuk memanggil kode ini.
Karena ini sebuah method yang jika tidak di panggil maka tidak akan berfungsi., untuk pemanggilannya tinggal
tuliskan database(); pada oncreate.
Selanjutnya Kita Tinggal buat public Void untu membuat tabel tabel yang lain.
public void tabelmahasiswa() {
db.beginTransaction();
try {
db.execSQL("drop table if exists mahasiswa");
db.execSQL("create table mahasiswa (" + "nim integer PRIMARY KEY," + "nama_maha text," +
"pass text );");
db.setTransactionSuccessful();
Toast.makeText(this, "Tabel Mahasiswa Telah Siap", Toast.LENGTH_SHORT).show();
} catch (Exception e) {
// TODO: handle exception
Toast.makeText(this, e.getMessage(), Toast.LENGTH_SHORT).show();
}
db.endTransaction();
}
public void tabelmakul() {
db.beginTransaction();
try {
db.execSQL("drop table if exists makul");
db.execSQL("create table makul (" + "kode integer PRIMARY KEY," + "nama_makul text," +
"sks integer," + "semester integer );");
db.setTransactionSuccessful();
Toast.makeText(this, "Tabel Makul Telah Siap", Toast.LENGTH_SHORT).show();
} catch (Exception e) {
// TODO: handle exception
Toast.makeText(this, e.getMessage(), Toast.LENGTH_SHORT).show();
}
db.endTransaction();
}
public void tabelkrs() {
db.beginTransaction();
try {
db.execSQL("drop table if exists krs");
db.execSQL("create table krs (" + "nim integer," + "nama_makul text);");
db.setTransactionSuccessful();
Toast.makeText(this, "Tabel krs Telah Siap", Toast.LENGTH_SHORT).show();
} catch (Exception e) {
// TODO: handle exception
Toast.makeText(this, e.getMessage(), Toast.LENGTH_SHORT).show();
}db.endTransaction(); }
8. Tutorial Mobile Computing – Tahun 2014/2015
public void tabelkhs() {
db.beginTransaction();
try {
db.execSQL("drop table if exists khs");
db.execSQL("create table khs(" + "nim integer," + "kode text, " + "nilai integer);");
db.setTransactionSuccessful();
Toast.makeText(this, "Tabel kHs Telah Siap", Toast.LENGTH_SHORT).show();
} catch (Exception e) {
// TODO: handle exception
Toast.makeText(this, e.getMessage(), Toast.LENGTH_SHORT).show();
}
db.endTransaction();
}
Source Code Untuk file akademik.java
Pada file akademik.java yaitu terjadi proses untuk login dan pembuatan database serta tabelnya.
Jadi kita membuat method seperti diatas kemudia kita panggil pada oncreate nya.,,
public class menu extends Activity {
/** Called when the activity is first created. */
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main); // ini kode untuk menampilkan file xml
Database();
Tabelmahasiswa()
Tabelmakul();
Tabelkrs();
Tabelkhs();
}
}
Setelah itu kita Coba jalankan Aplikasinya kemudia kita cek pada File Explorernya, Dan Kita
Periksa apakah pada folder data/ data/com.akademik telah terdapat file Db_Akademik
Nach setelah itu kita Save Db_Akademik yang kemudian kita open pada SQLITE MANAGER
untuk mengetahui apakah tabel tabelnya udah terbuat
9. Tutorial Mobile Computing – Tahun 2014/2015
Jika telah terbuat Semua tabelnya maka kita bisa berlanjut untuk langkah Dan proses selanjutnya.
Kemudian ada Sebuah event Onclick untuk button login serta menuju ke form menu.
public void onClick(View arg0) {
// TODO Auto-generated method stub
switch (arg0.getId()) {
case R.id.bt_log:
if (ed_user.getText().toString().equals("rasibintang") &&
ed_pass.getText().toString().equals("r45ibintang")){
Intent menu = new Intent(getApplicationContext(), menu.class);
menu.putExtra("user", ed_user.getText().toString());
startActivity(menu);
}
break;
default:
break;
}
}
Kode menu.putExtra("user", ed_user.getText().toString()); ini digunakan untuk mengambil data dan
menyimpannya pada variable user.
Source Code Untuk menu.java
Pada file menu.java hanya terjadi perpindahan antara form menu dengan form yang lain seperti
input krs, input khs, laporan, input mahasiswa, input matakuliah. Jadi untuk kode yang di
gunakan hanyalah.
Intent menu = new Intent(getApplicationContext(), menu.class)
startActivity(menu);
Maka kita hanya tinggal mengganti tulisan yang berwarna block hijau dengan file java yang
ingin kita panggil.
10. Tutorial Mobile Computing – Tahun 2014/2015
Source Code input mahasiswa
Untuk File i_mahasiswa.java ini terjadi proses simpan data, edit data, hapus data, bersih,
kemudian cek untuk memeriksa apakah data sudah ada atau belum.
o Kode Cek
nim = ed_nim.getText().toString();
db.beginTransaction();
try {
kursor = db.rawQuery("select * from mahasiswa where nim = '"+nim+"'", null);
if(kursor.moveToNext()){
ed_nama.setText(kursor.getString(1));
ed_pass.setText(kursor.getString(2));
Toast.makeText(this, "Data DiTemukan", Toast.LENGTH_SHORT).show();
}else{
Toast.makeText(this, "Data Tidak Di Temukan",
Toast.LENGTH_SHORT).show();
}
db.setTransactionSuccessful();
} catch (Exception e) {
// TODO: handle exception
Toast.makeText(this, e.getMessage(), Toast.LENGTH_SHORT).show();
}
db.endTransaction();
kursor.close();
Ingat.,, kita juga harus mengcopy method database() yang telah kita buat Diatas tadi.
Dan kita Gunakan Cursor untuk membuat Variabel kursor.
pada Kode cek ini kita memanfaatkan rawQuery untuk menemukan data yang sama
berdasarkan Nim.
o Kode Simpan
if(ed_nim.getText().toString().equals("") || ed_nama.getText().toString().equals("")||
ed_pass.getText().toString().equals("")){
Toast.makeText(this, "Mohon Periksa Inputan", Toast.LENGTH_SHORT).show();
}else{
nim = ed_nim.getText().toString();
nama = ed_nama.getText().toString();
pass = ed_pass.getText().toString();
db.beginTransaction();
try {
db.execSQL("insert into mahasiswa (nim,nama_maha,pass)"+" values
('"+nim+"','"+nama+"','"+pass+"');");
db.setTransactionSuccessful();
Toast.makeText(this, "Data Telah Tersimpan",
Toast.LENGTH_SHORT).show();
bersih();
} catch (Exception e) {
// TODO: handle exception
Toast.makeText(this, e.getMessage(), Toast.LENGTH_SHORT).show();
}
db.endTransaction();
}
11. Tutorial Mobile Computing – Tahun 2014/2015
o Kode Edit
if(ed_nim.getText().toString().equals("") || ed_nama.getText().toString().equals("")||
ed_pass.getText().toString().equals("")){
Toast.makeText(this, "Mohon Periksa Inputan", Toast.LENGTH_SHORT).show();
}else{
nim = ed_nim.getText().toString();
nama = ed_nama.getText().toString();
pass = ed_pass.getText().toString();
db.beginTransaction();
try {
db.execSQL("update mahasiswa set nama_maha
='"+nama+"',"+"pass='"+pass+"'where nim ='"+nim+"'");
db.setTransactionSuccessful();
Toast.makeText(this, "Data Telah Terupdate", Toast.LENGTH_SHORT).show();
bersih();
} catch (Exception e) {
// TODO: handle exception
Toast.makeText(this, e.getMessage(), Toast.LENGTH_SHORT).show();
}
db.endTransaction();
}
Source Code input matakuliah
Pada Source Code input mata kuliah. Kurang lebih sama seperti input mahasiswa, hanya tinggal
kita samakan pada tempat penyimpanannya dan field field pada tabel tersebut.
o Kode Cek
kode = ed_kode.getText().toString();
db.beginTransaction();
try {
kursor = db.rawQuery("select * from makul where kode = '"+kode+"'", null);
if(kursor.moveToNext()){
ed_makul.setText(kursor.getString(1));
ed_sks.setText(kursor.getString(2));
ed_semester.setText(kursor.getString(3));
Toast.makeText(this, "Data DiTemukan",
Toast.LENGTH_SHORT).show();
}else{
Toast.makeText(this, "Data Tidak Di Temukan",
Toast.LENGTH_SHORT).show();
}
db.setTransactionSuccessful();
} catch (Exception e) {
// TODO: handle exception
Toast.makeText(this, e.getMessage(), Toast.LENGTH_SHORT).show();
}
db.endTransaction();
kursor.close();
12. Tutorial Mobile Computing – Tahun 2014/2015
o Kode Simpan
if(ed_kode.getText().toString().equals("") || ed_makul.getText().toString().equals("")||
ed_sks.getText().toString().equals("") || ed_semester.getText().toString().equals("")){
Toast.makeText(this, "Mohon Periksa Inputan",Toast.LENGTH_SHORT).show();
}else{
kode = ed_kode.getText().toString();
makul = ed_makul.getText().toString();
sks = ed_sks.getText().toString();
sem = ed_semester.getText().toString();
db.beginTransaction();
try {
db.execSQL("insert into makul (kode,nama_makul,sks,semester)"+" values
('"+kode+"','"+makul+"','"+sks+"','"+sem+"');");
db.setTransactionSuccessful();
bersih();
Toast.makeText(this, "Data Telah Tersimpan",
Toast.LENGTH_SHORT).show();
} catch (Exception e) {
// TODO: handle exception
Toast.makeText(this, e.getMessage(), Toast.LENGTH_SHORT).show();
}
db.endTransaction();
}
o Kode Edit
if(ed_kode.getText().toString().equals("") || ed_makul.getText().toString().equals("")||
ed_sks.getText().toString().equals("") || ed_semester.getText().toString().equals("")){
Toast.makeText(this, "Mohon Periksa Inputan",Toast.LENGTH_SHORT).show();
}else{
kode = ed_kode.getText().toString();
makul = ed_makul.getText().toString();
sks = ed_sks.getText().toString();
sem = ed_semester.getText().toString();
db.beginTransaction();
try {
db.execSQL("update makul set nama_makul
='"+makul+"',"+"sks='"+sks+"',"+"semester='"+sem+"'where kode
='"+kode+"'");
db.setTransactionSuccessful();
bersih();
Toast.makeText(this, "Data Telah Terupdate", Toast.LENGTH_SHORT).show();
} catch (Exception e) {
// TODO: handle exception
Toast.makeText(this, e.getMessage(), Toast.LENGTH_SHORT).show();
}
db.endTransaction();
}
13. Tutorial Mobile Computing – Tahun 2014/2015
o Kode Hapus
if(ed_kode.getText().toString().equals("") || ed_makul.getText().toString().equals("")||
ed_sks.getText().toString().equals("") || ed_semester.getText().toString().equals("")){
Toast.makeText(this, "Mohon Periksa Inputan",Toast.LENGTH_SHORT).show();
}else{
kode = ed_kode.getText().toString();
db.beginTransaction();
try {
db.execSQL("delete from makul where kode ='"+kode+"'");
bersih();
db.setTransactionSuccessful();
Toast.makeText(this, "Data Telah Hapus", Toast.LENGTH_SHORT).show();
} catch (Exception e) {
// TODO: handle exception
Toast.makeText(this, e.getMessage(), Toast.LENGTH_SHORT).show();
}
db.endTransaction();
}
Source Code Input KRS
Pada Source Code di Input KRS ini Sedikit Berbeda, Karena hal Pertama yang kita lakukan ialah
menampilkan Semua Data matakuliah yang ada di database pada Checkbox dan kemudian kita
membuat event onCheckedChanged pada CheckBox untuk menyimpan data yang tercentang dan
menghapusnya jika data itu telah tercentang sebelumnya dan kembali ke posisi tidak tercentang.
o Menampilkan Data makul ke Checkbox
db.beginTransaction();
try {
String [] colom = {"kode","nama_makul","sks","semester"};
kursor_m = db.query("makul", colom, null, null, null, null, "kode");
if (kursor_m.moveToFirst()){
do {
TableRow tabelbaris = new TableRow(this);
CheckBox ck = new CheckBox(this);
ck.setText(kursor_m.getString(1).toString());
ck.setOnCheckedChangeListener(this);
ck.setTextColor(R.color.hitam);
tabelbaris.addView(ck);
tabel.addView(tabelbaris);
}while (kursor_m.moveToNext());
}
db.setTransactionSuccessful();
} catch (Exception e) {
// TODO: handle exception
Toast.makeText(this, e.getMessage(),
Toast.LENGTH_SHORT).show();
}
db.endTransaction();
kursor_m.close();
14. Tutorial Mobile Computing – Tahun 2014/2015
o Event Tercentang Untuk Simpan Data
if (arg0.isChecked()){
String nim = txt_nim.getText().toString();
String makul = arg0.getText().toString();
db.beginTransaction();
try {
db.execSQL("insert into krs (nim,nama_makul)"+" values
('"+nim+"','"+makul+"');");
db.setTransactionSuccessful();
Toast.makeText(this, "Data Telah Tersimpan",
Toast.LENGTH_SHORT).show();
} catch (Exception e) {
// TODO: handle exception
Toast.makeText(this, e.getMessage(),
Toast.LENGTH_SHORT).show();
}
db.endTransaction();
}
o EvenT Tidak tercentang untuk menghapus Data
else{
String nim = txt_nim.getText().toString();
String makul = arg0.getText().toString();
db.beginTransaction();
try {
db.execSQL("delete from krs where nim = '"+nim+"'"+"and nama_makul =
'"+makul+"'");
db.setTransactionSuccessful();
Toast.makeText(this, "Data Telah TerHapus", Toast.LENGTH_SHORT).show();
} catch (Exception e) {
// TODO: handle exception
Toast.makeText(this, e.getMessage(),
Toast.LENGTH_SHORT).show();
}
db.endTransaction();
}
Source Code Input KHS
Untuk Source Code pada Input KHS kita menggunakan Spinner untuk menapilkan Data
mahasiswa Dan matakuliah Kemudian Nilainya Kita Inputkan pada Textview dan Kemudian Kita
Simpan. Untuk menampilkan data pada spinner yang datanya bersifat array maka kita membuat
function terlebih dahulu dan kemudian kita tampikan pada spinner.
15. Tutorial Mobile Computing – Tahun 2014/2015
o Function Spinner Nim
public ArrayList<String> getnim() {
ArrayList<String> item_nim = new ArrayList<String>();
try {
db =
SQLiteDatabase.openDatabase("data/data/com.AndroidKID/db_Akademik", null,
SQLiteDatabase.CREATE_IF_NECESSARY);
kursor_nim = db.rawQuery("select * from mahasiswa order by nim", null);
if (kursor_nim.moveToFirst()) {
do {
String nim = kursor_nim.getString(0);
item_nim.add(nim);
} while (kursor_nim.moveToNext());
}
kursor_nim.close();
} catch (Exception e) {
Toast.makeText(this, e.getMessage(),Toast.LENGTH_LONG);
}
return item_nim;
}
Source Code untuk pemanggilan Array pada Function Nim
cmb_nim = (Spinner) findViewById(R.id.spinnernim);
ArrayList<String> item_nim = new ArrayList<String>();
item_nim = getnim();
cmb_nim.setAdapter(newArrayAdapter<String>(this,
Android.R.layout.simple_dropdown_item_1line, item_nim ));
o Function Spinner Makul
public ArrayList<String> getmakul() {
ArrayList<String> item_makul = new ArrayList<String>();
try {
db =
SQLiteDatabase.openDatabase("data/data/com.AndroidKID/db_Akademik", null,
SQLiteDatabase.CREATE_IF_NECESSARY);
String nim = cmb_nim.getSelectedItem().toString();
kursor_makul = db.rawQuery("select * from krs where nim = '"+nim+"'", null);
if (kursor_makul.moveToFirst()) {
do {
String makul = kursor_makul.getString(1);
item_makul.add(makul);
} while (kursor_makul.moveToNext());
}else{
Toast.makeText(this, "Mahasiswa Masih Belum Input KRS",
Toast.LENGTH_SHORT).show();
}
kursor_makul.close();
} catch (Exception e) {
Toast.makeText(this, e.getMessage(),Toast.LENGTH_LONG);
}
return item_makul;
}
16. Tutorial Mobile Computing – Tahun 2014/2015
Source Code Untuk Pemanggilan Array Pada Function makul
ArrayList<String> item_makul = new ArrayList<String>();
item_makul = getmakul();
cmb_makul.setAdapter(newArrayAdapter<String>(this,
android.R.layout.simple_dropdown_item_1line, item_makul ));
o Kode Simpan
makul = cmb_makul.getSelectedItem().toString();
nim = cmb_nim.getSelectedItem().toString();
String nil = ed_nil.getText().toString();
db.beginTransaction();
try {
db.execSQL("insert into khs (nim,kode,nilai)"+"
values ('"+nim+"','"+makul+"','"+nil+"');");
db.setTransactionSuccessful();
Toast.makeText(this, "Data Telah Tersimpan",
Toast.LENGTH_SHORT).show();
ed_nil.setText("");
} catch (Exception e) {
// TODO: handle exception
Toast.makeText(this, e.getMessage(),
Toast.LENGTH_SHORT).show();
}
db.endTransaction();
o Kode Edit
makul = cmb_makul.getSelectedItem().toString();
nim = cmb_nim.getSelectedItem().toString();
nil = ed_nil.getText().toString();
db.beginTransaction();
try {
db.execSQL("update khs set kode
='"+makul+"',"+"nilai='"+nil+"'where nim ='"+nim+"'"+"and kode = '"+makul+"'");
db.setTransactionSuccessful();
Toast.makeText(this, "Data Telah Tersimpan",
Toast.LENGTH_SHORT).show();
ed_nil.setText("");
} catch (Exception e) {
// TODO: handle exception
Toast.makeText(this, e.getMessage(),
Toast.LENGTH_SHORT).show();
}
db.endTransaction();
17. Tutorial Mobile Computing – Tahun 2014/2015
o Kode Hapus
makul = cmb_makul.getSelectedItem().toString();
nim = cmb_nim.getSelectedItem().toString();
nil = ed_nil.getText().toString();
db.beginTransaction();
try {
db.execSQL("delete from khs where nim
='"+nim+"'"+"and kode = '"+makul+"'");
db.setTransactionSuccessful();
Toast.makeText(this, "Data Telah Terhapus",
Toast.LENGTH_SHORT).show();
ed_nil.setText("");
} catch (Exception e) {
// TODO: handle exception
Toast.makeText(this, e.getMessage(),
Toast.LENGTH_SHORT).show();
}
db.endTransaction();
Source Code untuk O_krs
Untuk kode pada form ouput krs hanyalah untuk menampilkan data pada database ke listview.
jadi kode yang kita gunakan sama saja dengan kode kode pemanggilan spinner. Yaitu membuat
function untuk daftar matakuliah yang di ambil pada KRS kemudian kita tampilkan pada listview.
o Function Daftar matakuliah Pada KRS
public ArrayList<String> getmakul() {
ArrayList<String> item_makul = new ArrayList<String>();
try {
db =
SQLiteDatabase.openDatabase("data/data/com.AndroidKID/db_Akademik", null,
SQLiteDatabase.CREATE_IF_NECESSARY);
String nim = cmb_nim.getSelectedItem().toString();
kursor_makul = db.rawQuery("select * from krs where nim = '"+nim+"'", null);
if (kursor_makul.moveToFirst()) {
do {
String makul = kursor_makul.getString(1);
item_makul.add(makul);
} while (kursor_makul.moveToNext());
}else{
Toast.makeText(this, "Mahasiswa Masih Belum Input KRS",
Toast.LENGTH_SHORT).show();
}
kursor_makul.close();
} catch (Exception e) {
Toast.makeText(this, e.getMessage(),Toast.LENGTH_LONG);
}
return item_makul;
}
18. Tutorial Mobile Computing – Tahun 2014/2015
o Pemanggilan Function makul pada list view
list = (ListView) findViewById(R.id.listview);
ArrayList<String> item_makul = new ArrayList<String>();
item_makul = getmakul();
list.setAdapter(new ArrayAdapter<String>(this, android.R.layout.simple_dropdown_item_1line,
item_makul ));