Sistem Informasi Database Obat Untuk Dokter.

(1)

SISTEM INFORMASI DATABASE OBAT UNTUK DOKTER

Nico Andrianto / 0727013

Jurusan Sistem Komputer, Fakultas Teknik, Universitas Kristen Maranatha Jalan Prof. Drg. Suria Sumantri 65

Bandung 40164, Indonesia

ABSTRAK

Perkembangan teknologi saat ini sudah diterapkan di berbagai bidang, salah satu contohnya adalah bidang kedokteran. Bidang kedokteran sudah sangat berkembang dan dapat dilihat dengan peralatan yang serba terkomputerisasi di dalam rumah sakit. Dengan adanya komputer maka diharapkan dapat mempermudah manusia jika mencari data dalam jumlah yang banyak. Untuk itu dibuat sistem informasi database obat untuk dokter.

Pada proyek ini telah dirancang dan dibuat sistem informasi yang berfungsi untuk menyimpan data obat yang banyak. Sistem informasi ini dapat menampilkan data yang ingin dicari, contohnya ingin mencari komposisi obat, nama obat dan lain-lain. Sehingga dengan adanya aplikasi ini dapat membantu manusia.

Sistem informasi secara keseluruhan telah diuji dan aplikasi yang dibuat ini memberikan hasil yang baik karena telah berfungsi sesuai dengan yang diharapkan. Aplikasi ini dapat mencari data dengan mudah dan cepat.


(2)

ABSTRACT

The development of technology has been applied in various fields today, one example is in the medical field. It is highly developed and can be seen with all computerized equipment in the hospital. It is expected to make human easier searching for data in significant amounts. That is the purpose of making the information system drug database for physician.

This project has been designed and created an information sistem that

serves to store data that a lot of drugs. Te system can display the data you want to find, for example, want to find a drug composition, drug name and others. So with this application, it can help humans.

Overall information sistem has been tested and made application this gives good results because it has been functioning as expected. This application can search the data easily and quickly.


(3)

DAFTAR ISI

Abstrak ... ... i

Abstract ... ... ii

Kata Pengantar... ... iii

Daftar Isi ... ... v

Daftar Gambar... ... ix

Daftar Tabel... ... x

BAB I PENDAHULUAN 1.1 Latar Belakang Masalah ... 1

1.2 Rumusan Masalah ... 2

1.3 Tujuan... ... 3

1.4 Pembatasan Masalah ... 3

1.5 Sistematika pembahasan ... 3

BAB II LANDASAN TEORI 2.1 Borland Delphi 7.0 ... 6

2.1.1 IDE (Integrated Development Environment) Delphi...6

2.1.2 Menu Bar...7

2.1.3 Tool Bar/Speed Bar...8 v Universitas Kristen Maranatha


(4)

2.1.4 Component Palette………..8

2.1.5 Control………...……….8

2.1.6 Form... 9

2.1.7 Object Inspector... ... 9

2.1.8 Object Tree View... 10

2.1.9 Code Editor ... 11

2.2 InterBase ... ... 12

2.2.1 Perancangan Database ... 14

2.2.1 Tipe Data Field InterBase………...15

2.3 Query ... 16

2.4 Structure Query Language………....…...17

2.5 Relasi... ... 27

BAB III PERANCANGAN 3.1 Tombol Cari ... 29

3.2 Tombol Obat Baru...………..30

3.3 Tombol Ubah ... 31

3.4 Tombol Hapus……...………....….32

3.5 Tombol Keluar ... 33

3.6 Tombol Tambah Pada Form Pasien ... 33

3.7 Tombol Cari Pada Form Pasien..………..34

BAB IV PEMBAHASAN 4.1 Pengujian Software.. ... 41


(5)

4.1.1 Pengujian Login ... 41

4.1.2 Pengujian Input Data Obat.. ... 42

4.1.3 Pengujian Ubah Data Obat ... 43

4.1.4 Pengujian Hapus Data Obat ... 44

4.1.5 Pengujian Input Data Pasien ... 45

4.1.6 Pengujian Edit Data Pasien……….……..46

BAB V KESIMPULAN DAN SARAN 5.1 Kesimpulan... ... 47

5.2 Saran... ... 47

DAFTAR PUSTAKA... ... 48 LAMPIRAN A Foto Software.………...A LAMPIRAN B Program...B


(6)

DAFTAR GAMBAR

Gambar 2.1 Interface Delphi 7 ... 7

Gambar 2.2 Menu Bar ... 7

Gambar 2.3 Tool Bar... 8

Gambar 2.4 Menu Control ... 8

Gambar 2.5 Form Delphi ... 9

Gambar 2.6 Object Inspector ... 10

Gambar 2.7 Object Treeview ... 11

Gambar 2.8 Code Editor ... 12

Gambar 2.9 IBConsole ... 13

Gambar 2.10 Database Mobil...13

Gambar 3.1 Flowchart Keseluruhan Program ... 28

Gambar 3.2 Flowchart Cari ... 29

Gambar 3.3 Flowchart obat baru...30

Gambar 3.4 Flowchart Ubah Obat ... 31

Gambar 3.5 Flowchart Hapus Obat ... 32

Gambar 3.6 Flowchart Keluar ... 33

Gambar 3.7 Flowchart Tambah Pada Form Pasien ... 33

Gambar 3.8 Flowchart Cari Pada Form Pasien ... 33

Gambar 3.9 Database Obat ... 35

Gambar 3.10 Relasi Obat ... 36 iix Universitas Kristen Maranatha


(7)

Gambar 3.11 Database Pasien ... 37

Gambar 3.12 Relasi Pasien ... 38

Gambar 3.13 Database User Name ... 39

Gambar 3.14 Relasi User Name ... 40

Gambar 4.1 Login ... 41

Gambar 4.2 Tampilan Menu ... 42

Gambar 4.3 Input Data Obat ... 43

Gambar 4.4 Data Output ... 43

Gambar 4.5 Ubah Data Obat ... 44

Gambar 4.6 Hasil Data Yang Diubah ... 44

Gambar 4.7 Menghapus Data ... 45

Gambar 4.8 Data Yang dihapus Tidak Ada ... 45

Gambar 4.9 Input Data Pasien ... 46

Gambar 4.10 Hasil Data Pasien ... 46

Gambar 4.11 Edit Data Pasien ... 47

Gambar 4.12 Hasil Edit Data Pasien ... 47


(8)

DAFTAR TABEL

Tabel 2.2.2 Tipe Data Field InterBase………..……15


(9)

LAMPIRAN

A


(10)

LAMPIRAN A FOTO SOFTWARE


(11)

(12)

(13)

LAMPIRAN

B


(14)

LAMPIRAN B PROGRAM

/***************************************************** This program was produced by the

Borland Delphi 7

Project : Sistem Informasi Database Obat Untuk Dokter Author : NicoAndrianto - 0727013

Comments: Proyek Tugas Akhir Program type : Application

***************************************************** procedure Tfrmmenu.OBAT1Click(Sender: TObject);

begin

frmobat.Show; end;

procedure Tfrmmenu.exit1Click(Sender: TObject); begin

frmmenu.close end;


(15)

procedure Tfrmmenu.PASIEN1Click(Sender: TObject); begin

frmpasien.showmodal; end;

procedure Tfrmmenu.FormCreate(Sender: TObject); begin

end; end.

//==========PERIKSA DULU DATANYA KOSONG GAK========== if (eduser.Text='') or (edpass.Text='') then

begin

showmessage('Username dan password tidak boleh kosong'); end

//==========AMBIL DATA DARI TABEL USER_ACCOUNT========== else

begin

with frmmenu.qData do begin

close; sql.Clear;

sql.Add('select pass from user_name where user_name=:us'); B-2


(16)

prepare;

parambyname('us').AsString:=trim(eduser.Text); open;

edbuffpass.Text:=fields[0].AsString; end;

if (edbuffpass.Text = edpass.Text) then begin

frmmenu.ShowModal; end

else begin

showmessage('Password salah atau user name tidak ada!'); end;

end; end;

procedure Tfrmlogin.btkeluarClick(Sender: TObject); begin

application.Terminate; end;


(17)

procedure Tfrmobat.btbaruClick(Sender: TObject); begin

frmentryobat.label1.Caption:='INPUT DATA OBAT'; frmentryobat.Caption:='INPUT OBAT';

frmentryobat.edkode.Visible :=true; frmentryobat.ednama.Enabled:=true; frmentryobat.cmbsatuan.Enabled:=true; frmentryobat.edperusahaan.Enabled :=true; frmentryobat.edkomposisi.Enabled :=true; frmentryobat.memoindikasi.Enabled :=true; frmentryobat.memodosis.Enabled :=true;

frmentryobat.memokontraindikasi.Enabled :=true; frmentryobat.memoperhatian.Enabled :=true; frmentryobat.memoefeksamping.Enabled :=true; frmentryobat.memointeraksiobat.Enabled :=true; frmentryobat.edkemasan.Enabled:=true;

frmentryobat.edus.Enabled:=true; frmentryobat.cmbkode.Visible :=false; frmentryobat.btubah.Visible:=false; frmentryobat.bttambah.Visible:=true; frmentryobat.bthapus.Visible:=false; frmentryobat.ShowModal;


(18)

end;

procedure Tfrmobat.btubahClick(Sender: TObject); begin

frmentryobat.label1.Caption:='UBAH DATA OBAT'; frmentryobat.Caption:='UBAH DATA OBAT'; frmentryobat.edkode.Visible :=false;

frmentryobat.ednama.Enabled:=true; frmentryobat.cmbsatuan.Enabled:=true; frmentryobat.edperusahaan.Enabled :=true; frmentryobat.edkomposisi.Enabled :=true; frmentryobat.memoindikasi.Enabled :=true; frmentryobat.memodosis.Enabled :=true;

frmentryobat.memokontraindikasi.Enabled :=true; frmentryobat.memoperhatian.Enabled :=true; frmentryobat.memoefeksamping.Enabled :=true; frmentryobat.memointeraksiobat.Enabled :=true; frmentryobat.edkemasan.Enabled:=true;

frmentryobat.edus.Enabled:=true; frmentryobat.cmbkode.Visible :=false; frmentryobat.btubah.Visible:=false; frmentryobat.bttambah.Visible:=true;


(19)

frmentryobat.bthapus.Visible:=false; frmentryobat.cmbkode.Visible :=true;

frmentryobat.btubah.Visible:=true; frmentryobat.bttambah.Visible:=false; frmentryobat.bthapus.Visible:=false;

frmentryobat.ShowModal; end;

procedure Tfrmobat.bthapusClick(Sender: TObject); begin

frmentryobat.label1.Caption:='HAPUS DATA OBAT'; frmentryobat.Caption:='HAPUS DATA OBAT'; frmentryobat.edkode.Visible :=false;

frmentryobat.ednama.Enabled:=false; frmentryobat.cmbsatuan.Enabled:=false; frmentryobat.edperusahaan.Enabled :=false; frmentryobat.edkomposisi.Enabled :=false; frmentryobat.memoindikasi.Enabled :=false; frmentryobat.memodosis.Enabled :=false;

frmentryobat.memokontraindikasi.Enabled :=false; B-6


(20)

frmentryobat.memoperhatian.Enabled :=false; frmentryobat.memoefeksamping.Enabled :=false; frmentryobat.memointeraksiobat.Enabled :=false; frmentryobat.edkemasan.Enabled:=false;

frmentryobat.edus.Enabled:=false; frmentryobat.cmbkode.Visible :=false; frmentryobat.btubah.Visible:=false; frmentryobat.bttambah.Visible:=true; frmentryobat.bthapus.Visible:=false; frmentryobat.cmbkode.Visible :=true; frmentryobat.btubah.Visible:=false; frmentryobat.bttambah.Visible:=false; frmentryobat.bthapus.Visible:=true; frmentryobat.ShowModal;

end;

procedure Tfrmobat.Button1Click(Sender: TObject); begin

//========TAMPILKAN SELURUH DATE KE DB GRID========= with frmmenu.qData do


(21)

close; sql.Clear;

sql.Add('select * from obat order by kode_obat'); open;

end; end;

procedure Tfrmobat.FormShow(Sender: TObject); begin

//========TAMPILKAN SELURUH DATE KE DB GRID========= with frmmenu.qProses do

begin close; sql.Clear;

sql.Add('select * from obat order by kode_obat'); open;

end; end;


(22)

procedure Tfrmobat.btcariClick(Sender: TObject); begin

//=JIKA EDCARI KOSONG ATAU JENIS PENCARIAN BELUM DIPILIH == IF ((edcari.Text='') or (combobox1.Text='JENIS PENCARIAN')) then begin

showmessage('Isi data pencarian dan pilih jenis pencarian'); end

else begin

{PENCARIAN BERDASARKAN KODE OBAT} if combobox1.ItemIndex = 0 then

begin

with frmmenu.qData do begin

close; sql.Clear;

sql.Add('select kode_obat, nama_obat, nama_perusahaan, kemasan_harga, us_fda_preg_cat, jenis_obat '+

'from obat where kode_obat like:kb order by kode_obat'); prepare;

parambyname('kb').AsString:='%'+edcari.Text+'%'; open;


(23)

end;

end;

{PENCARIAN BERDASARKAN NAMA OBAT} if combobox1.ItemIndex = 1 then

begin

with frmmenu.qData do begin

close; sql.Clear;

sql.Add('select kode_obat, nama_obat, nama_perusahaan, kemasan_harga, us_fda_preg_cat, jenis_obat '+

'from obat where nama_obat like:kb order by nama_obat'); prepare;

parambyname('kb').AsString:='%'+edcari.Text+'%'; open;

end; end;


(24)

{PENCARIAN BERDASARKAN JENIS OBAT} if combobox1.ItemIndex = 2 then

begin

with frmmenu.qData do begin

close; sql.Clear;

sql.Add('select kode_obat, nama_obat, nama_perusahaan, kemasan_harga, us_fda_preg_cat, jenis_obat '+

'from obat where jenis_obat like:kb order by jenis_obat'); prepare;

parambyname('kb').AsString:='%'+edcari.Text+'%'; open;

end; end;

{PENCARIAN BERDASARKAN KOMPOSISI OBAT} if combobox1.ItemIndex = 3 then

begin

with frmmenu.qData do begin


(25)

close; sql.Clear;

sql.Add('select kode_obat, nama_obat, nama_perusahaan, kemasan_harga, us_fda_preg_cat, jenis_obat '+

'from obat where komposisi_obat like:kb order by komposisi_obat'); prepare;

parambyname('kb').AsString:='%'+edcari.Text+'%'; open;

end; end;

end; end;

procedure Tfrmobat.btkeluarClick(Sender: TObject); begin

frmobat.Close; end;


(26)

procedure Tfrmobat.DBGrid1DblClick(Sender: TObject); begin

{MENAMPILKAN ATTRIBUT OBAT}

//if MessageDlg('Maulihat?', mtConfirmation,[mbYes,mbNo],0)=mrYes then begin

With frmmenu.qProses Do Begin

Close; Sql.Clear;

Sql.Add('select * From obat where kode_obat=:kp'); prepare;

parambyname('kp').AsString :=dbgrid1.Fields[0].AsString; open;

memoindikasi.Text :=fields[4].AsString; memodosis.Text :=fields[5].AsString; memokontra.Text :=fields[6].AsString; memoperhatian.Text :=fields[7].AsString; memoefeksamping.Text :=fields[8].AsString; memointeraksi.Text :=fields[9].AsString; memokomposisi.Text :=fields[2].AsString; End;


(27)

end;

procedure Tfrmobat.FormActivate(Sender: TObject); begin

with frmmenu.qData do begin

close; sql.Clear;

sql.Add('select * from obat order by kode_obat'); open;

end; end;

procedure Tfrmentryobat.bttambahClick(Sender: TObject); begin

{CEK DULU DATANYA KOSONG GAK}

if ((edkode.Text='') or (ednama.Text='') or (cmbsatuan.Text='')) then begin

showmessage('Data harus lengkap!'); end

{TERUS PERIKSA KODE OBAT YANG DIINPUT UDAH ADA BELOM DI DATABASE}


(28)

else begin

with frmmenu.qData do begin

close; sql.Clear;

sql.Add('select * from obat where kode_obat=:kb'); prepare;

parambyname('kb').AsString:=trim(edkode.Text); open;

{kalau kode obat belum ada, boleh diinputin} if fields[0].IsNull then

begin

with frmmenu.qproses do begin

close; sql.Clear;

Sql.Add('Insert Into

obat(kode_obat,nama_obat,jenis_obat,nama_perusahaan,komposisi_obat, '+

'indikasi, dosis, kontra_indikasi, perhatian, efek_samping, interaksi_obat, kemasan_harga, us_fda_preg_cat) '+

'Values(:ko, :no, :jo, :np, :kmp, :in, :do, :ki, :pr, :es, :io, :kh, :uf)'); prepare;


(29)

parambyname('ko').AsString:=trim(edkode.Text); parambyname('no').AsString:=trim(ednama.Text); parambyname('jo').AsString:=trim(cmbsatuan.Text); parambyname('np').AsString:=trim(edperusahaan.Text); parambyname('kmp').AsString:=trim(edkomposisi.Text); parambyname('in').AsString:=trim(memoindikasi.Text); parambyname('do').AsString:=trim(memodosis.Text);

parambyname('ki').AsString:=trim(memokontraindikasi.Text); parambyname('pr').AsString:=trim(memoperhatian.Text); parambyname('es').AsString:=trim(memoefeksamping.Text); parambyname('io').AsString:=trim(memointeraksiobat.Text); parambyname('kh').AsString:=trim(edkemasan.Text);

parambyname('uf').AsString:=trim(edus.Text); ExecSql;

showmessage('Data telah berhasil disimpan'); end;

end

{kalo kode obat udah ada, gak bisa dimasukin} else

begin

showmessage('Kode Obat Sudah Ada! Data tidak dapat diinputkan!'); end;


(30)

end; end;

edkode.Clear; ednama.Clear; edperusahaan.Clear; edkomposisi.Clear; memoindikasi.clear; memodosis.clear;

memokontraindikasi.clear; memoperhatian.clear; memoefeksamping.clear; memointeraksiobat.clear; edkemasan.Clear;

edus.Clear;

//========TAMPILKAN SELURUH DATE KE DB GRID========= with frmmenu.qData do

begin close; sql.Clear;

sql.Add('select * from obat order by kode_obat'); open;


(31)

end; end;

procedure Tfrmentryobat.FormShow(Sender: TObject); begin

cmbkode.Clear;

{=======MENAMPILKAN KODE OBAT KE COMBOBOX========}

With frmmenu.QData Do Begin

Close; Sql.Clear;

Sql.Add('Select Distinct kode_obat From obat'); Sql.Add('Order by kode_obat');

Open;

while not Eof do begin

cmbkode.Items.Add(Trim(Fields[0].AsString)); Next;

end; end; end;


(32)

procedure Tfrmentryobat.bthapusClick(Sender: TObject); begin

//cek dulu datanya kosong gak if (cmbkode.Text='') then begin

showmessage('kode obat harus diisi!') end

else begin

{---hapus data obat---} With frmmenu.qProses Do

Begin Close; Sql.Clear;

Sql.Add('Delete From obat'); Sql.Add('Where kode_obat =:ko'); Prepare;

ParamByName('ko').AsString := cmbkode.Text; ExecSql;

End;

frmmenu.trobat.Commit; edkode.Clear;


(33)

ednama.Clear; edperusahaan.Clear; edkomposisi.Clear; memoindikasi.clear; memodosis.clear;

memokontraindikasi.clear; memoperhatian.clear; memoefeksamping.clear; memointeraksiobat.clear; edkemasan.Clear;

edus.Clear;

showmessage('Data Berhasil Dihapus'); end;

{---}

{=============MENAMPILKAN KODE OBAT KE

COMBOBOX==============} With frmmenu.QData Do Begin

Close; Sql.Clear;

Sql.Add('Select Distinct kode_obat From obat'); Sql.Add('Order by kode_obat');


(34)

Open;

while not Eof do begin

cmbkode.Items.Add(Trim(Fields[0].AsString)); Next;

end; end;

{============================================================ =}

end;

procedure Tfrmentryobat.cmbkodeChange(Sender: TObject); begin

{TAMPILKAN DATA KE MASING MASING TEXTBOX} with frmmenu.qData do

begin close; sql.Clear;

sql.Add('select nama_obat, nama_perusahaan, komposisi_obat, jenis_obat, indikasi, '+

' dosis, kontra_indikasi, perhatian, efek_samping, interaksi_obat as Interaksi_Obat, kemasan_harga, us_fda_preg_cat from obat where kode_obat=:kb'); prepare;


(35)

parambyname('kb').AsString:=trim(cmbkode.Text); open;

ednama.Text:=fields[0].AsString; edperusahaan.Text:=fields[1].AsString; edkomposisi.Text:=fields[2].AsString; cmbsatuan.Text:=fields[3].AsString; memoindikasi.Text:=fields[4].AsString; memodosis.Text:=fields[5].AsString;

memokontraindikasi.Text:=fields[6].AsString; memoperhatian.Text:=fields[7].AsString; memoefeksamping.Text:=fields[8].AsString; memointeraksiobat.Text:=fields[9].AsString; edkemasan.Text:=fields[10].AsString; edus.Text:=fields[11].AsString; end;

end;

procedure Tfrmentryobat.btubahClick(Sender: TObject); begin

if (cmbkode.Text='') then begin

showmessage('Kode obat harus diisi!'); B-22


(36)

end

else begin

{---mengubah obat---} With frmmenu.qProses Do

Begin Close; Sql.Clear;

Sql.Add('update obat set nama_obat=:no, jenis_obat=:jo,'+

'nama_perusahaan=:np, komposisi_obat=:kmp, indikasi=:in, dosis=:do, kontra_indikasi=:ki, perhatian=:pr,'+

'efek_samping=:es, interaksi_obat=:io, kemasan_harga=:kh, us_fda_preg_cat=:uf '+

'where kode_obat=:ko'); Prepare;

ParamByName('no').AsString :=ednama.Text; ParamByname('jo').AsString :=cmbsatuan.Text; ParamByname('np').AsString :=edperusahaan.Text; ParamByname('kmp').AsString:=edkomposisi.Text; ParamByname('ko').asstring :=cmbkode.Text; parambyname('in').AsString :=memoindikasi.Text;


(37)

parambyname('do').AsString :=memodosis.Text;

parambyname('ki').AsString :=memokontraindikasi.Text; parambyname('pr').AsString :=memoperhatian.Text; parambyname('es').AsString :=memoefeksamping.Text; parambyname('io').AsString :=memointeraksiobat.Text; parambyname('kh').AsString :=edkemasan.Text;

parambyname('uf').AsString :=edus.Text; ExecSql;

frmmenu.trobat.Commit; edkode.Clear;

ednama.Clear; edperusahaan.Clear; edkomposisi.Clear; memoindikasi.clear; memodosis.clear;

memokontraindikasi.clear; memoperhatian.clear; memoefeksamping.clear; memointeraksiobat.clear; edkemasan.Clear;

edus.Clear; End;


(38)

showmessage('Data berhasil Diubah') end;

{=====MENAMPILKAN KODE OBAT KE COMBOBOX=====} With frmmenu.QData Do

Begin Close; Sql.Clear;

Sql.Add('Select Distinct kode_obat From obat'); Sql.Add('Order by kode_obat');

Open;

while not Eof do begin

cmbkode.Items.Add(Trim(Fields[0].AsString)); Next;

end; end; end;

procedure Tfrmentryobat.Button1Click(Sender: TObject); begin

frmentryobat.Close; end;


(39)

procedure Tfrmpasien.btTambahClick(Sender: TObject); begin

{CEK DULU DATANYA KOSONG GAK}

if ((ednama.Text='') or (edumur.Text='') or (edalamat.Text='')) then begin

showmessage('Data harus lengkap!'); end

ELSE begin

with frmmenu.qproses do begin

close; sql.Clear;

Sql.Add('Insert Into

pasien(kode_pasien,nama_pasien,umur_pasien,keterangan_medis,tanggal_berobat,ko de_obat,alamat) '+

'Values(:kp, :np, :up, :km, :tb, :ko, :al)'); prepare;

parambyname('kp').AsString:=trim(edkodepasien.Text); parambyname('np').AsString:=trim(ednama.Text); parambyname('up').AsString:=trim(edumur.Text);

parambyname('km').AsString:=trim(edketeranganmedis.Text); B-26


(40)

parambyname('ko').AsString:=trim(edkodeobat.Text); parambyname('tb').Asdate:=(datetimepicker1.date); parambyname('al').AsString:=trim(edalamat.Text); ExecSql;

showmessage('Data telah berhasil disimpan'); end;

end ;

edkodepasien.Clear; ednama.Clear; edumur.Clear;

edketeranganmedis.Clear; edkodeobat.Clear;

edalamat.Clear; with frmmenu.qproses Do begin

close; sql.clear;

sql.add('select* from pasien'); open;

end; end;


(41)

procedure Tfrmpasien.FormActivate(Sender: TObject); begin

datetimepicker1.DateTime := now; with frmmenu.qproses Do

begin close; sql.clear;

sql.add('select* from pasien'); open;

end; end;

procedure Tfrmpasien.DBGrid1DblClick(Sender: TObject); begin

With frmmenu.qData Do Begin

Close; Sql.Clear;

Sql.Add('select * from PASIEN where KODE_PASIEN =:kp'); prepare;

parambyname('kp').AsString := dbgrid1.Fields[0].AsString; open;


(42)

edkodepasien.Text:=fields[0].AsString; memo1.Text := fields[3].AsString; frmedit.Memo1.Text:=fields[3].AsString; End;

end;

procedure Tfrmpasien.btCariClick(Sender: TObject); begin

with frmmenu.qProses do begin

close; Sql.Clear;

Sql.Add('select * from pasien');

Sql.Add('Where NAMA_PASIEN like :kp'); prepare;

ParamByName('kp').AsString :='%'+edCari.Text+'%'; open;

end;


(43)

procedure Tfrmpasien.btShowAllClick(Sender: TObject); begin

//========TAMPILKAN SELURUH DATE KE DB GRID========= with frmmenu.qData do

begin close; sql.Clear;

sql.Add('select * from pasien order by kode_pasien'); open;

end; end;

procedure Tfrmpasien.Button1Click(Sender: TObject); begin

frmedit.ShowModal; end;

procedure Tfrmpasien.Timer1Timer(Sender: TObject); begin

if edkodepasien.Text=''then button1.Enabled:=false else

button1.Enabled:= true;


(44)

procedure TFrmEdit.FormActivate(Sender: TObject); begin

edkodepasien.Text:=frmpasien.edkodepasien.Text; end;

procedure TFrmEdit.btSimpanClick(Sender: TObject); begin

With frmmenu.qProses Do Begin

Close; Sql.Clear;

Sql.Add('update pasien set keterangan_medis = :km where kode_pasien =:kp'); Prepare;

ParamByName('km').AsString :=memo1.Text; ParamByname('kp').AsString :=edkodepasien.Text ; ExecSql;

frmmenu.trobat.Commit;

showmessage('Data berhasil Diubah'); end;

end; end.


(45)

/***************************************************** This program was produced by the

Interbase 6.5

***************************************************** CREATE TABLE "OBAT" (

"KODE_OBAT" VARCHAR(10) NOT NULL, "NAMA_OBAT" VARCHAR(50),

"KOMPOSISI_OBAT" VARCHAR(600), "NAMA_PERUSAHAAN" VARCHAR(200), "INDIKASI" VARCHAR(1000),

"DOSIS" VARCHAR(800),

"KONTRA_INDIKASI" VARCHAR(1000), "PERHATIAN" VARCHAR(1000),

"EFEK_SAMPING" VARCHAR(1000), "INTERAKSI_OBAT" VARCHAR(900), "KEMASAN_HARGA" VARCHAR(200), "US_FDA_PREG_CAT" VARCHAR(50), "JENIS_OBAT" VARCHAR(50),

CONSTRAINT "PKOBAT" PRIMARY KEY ("KODE_OBAT") );


(46)

CREATE TABLE "PASIEN" (

"KODE_PASIEN" VARCHAR(10) NOT NULL, "NAMA_PASIEN" VARCHAR(30),

"UMUR_PASIEN" INTEGER,

"KETERANGAN_MEDIS" VARCHAR(3000), "TANGGAL_BEROBAT" DATE,

"KODE_OBAT" VARCHAR(10), "ALAMAT" VARCHAR(120),

CONSTRAINT "PKPASIEN" PRIMARY KEY ("KODE_PASIEN") );

CREATE TABLE "USER_NAME" (

"USER_NAME" VARCHAR(20) NOT NULL, "PASS" VARCHAR(20),

CONSTRAINT "PKUSER_NAME" PRIMARY KEY ("USER_NAME") );


(47)

1 Universitas Kristen Maranatha BAB I

PENDAHULUAN

1.1 Latar Belakang Masalah

Saat ini perkembangan dalam dunia teknologi sangat berkembang. Segala teknologi yang canggih sudah dapat membantu bahkan meringankan dalam pekerjaan manusia. Salah satu teknologi canggih yang membantu manusia dalam membatu pekerjaannya adalah komputer. Penggunaan komputer telah menjadi salah satu hal yang penting dalam kehidupan sehari-hari. Ada beberapa fungsi dari komputer, yaitu komputer dapat bermain game, membuat tugas, browsing ke dalam dunia internet, membuat program, dan dapat menyimpan file-file yang penting dan lain-lain. Dengan adanya komputer diharapkan dapat membuat sistem informasi untuk menyimpan data-data dengan mudah.

Bidang kedokteran sekarang sudah berkembang. Salah satu contoh penggunaan komputer dalam dunia kedokteran adalah penggunaan sistem CAT (Computerized

Axial Tomography) digunakan untuk mengambil seluruh organ tubuh yang lainnya.

Dengan adanya alat ini dapat lebih mudah bagi dokter untuk menganalisa sakit apa yang diderita pasien. Dalam bidang kedokteran dibutuhkan tempat untuk menyimpan data-data, baik data-data pasien atau data rekam medis. Untuk menyimpan data-data tersebut dibutuhkan sistem informasi.


(48)

Sistem informasi dapat diterapkan dalam bidang kedokteran. Sistem informasi dapat digunakan dalam menyimpan data-data pasien, dan data-data lainnya. Tetapi untuk data-data obat masih tersimpan di dalam buku. Dokter tidak mungkin akan ingat semua data obat yang ada di dalam buku, tentunya hal ini akan mempersulit jika dokter harus membuka buku untuk mencari jenis-jenis obat.

Untuk membuat menjadi lebih mudah, dapat dipergunakan sistem informasi

database obat untuk dokter. Dokter tidak perlu membuka buku untuk mencari

jenis-jenis obat, tetapi hanya mengetik data obat yang ingin dicari.

1.2 Rumusan Masalah

Sistem informasi ini merupakan sebuah software yang dibuat dengan program dan berfungsi untuk membantu dokter dalam mencari data obat. Dengan adanya sistem informasi ini dokter tidak membutuhkan waktu yang lama dalam mencari data obat yang ingin dicari. Sistem informasi ini juga mempunyai interface baik dan mudah dimengerti. Dilihat dari keadaan tersebut, muncul pertanyaan-pertanyaan sebagai berikut.

1. Bagaimana cara membuat sistem informasi database obat untuk dokter? 2. Bagaimana cara menghubungkan sistem informasi dengan database? 3. Bagaimana mendesain interface agar mudah digunakan?


(49)

3 Universitas Kristen Maranatha 1.3 Tujuan

Tugas akhir ini dibuat untuk merancang dan membuat sistem informasi database obat untuk dokter, yang didalamnya terdapat informasi mengenai obat yaitu nama obat, komposisi obat, efek samping dan lain-lain.

1.4Batasan Masalah

Batasan-batasan masalah dalam tugas akhir ini adalah sebagai berikut: 1. Pembuatan tugas akhir ini hanya dibuat oleh softwareDelphi 7 .

2. Pembuatan tugas akhir ini data yang diambil hanya didasarkan pada buku Mims.

3. Data tentang obat hanya kode obat, nama obat, komposisi obat, nama perusahaan, indikasi, dosis, kontra indikasi, perhatian, efek samping, interaksi obat, kemasan dan harga, us fda preg cat, jenis obat.


(50)

1.5Sistematika Pembahasan

Penyusunan sistematika pembahasan dilakukan untuk mempermudah penyampaian informasi berdasarkan aturan dan urutan yang benar dari apa yang telah dilakukan. Sistematika pembahasan laporan tugas akhir ini adalah sebagai berikut.

BAB I PENDAHULUAN

Bab ini membahas tentang latar belakang, rumusan masalah, tujuan, batasan masalah, dan sistematika pembahasan.

BAB II DASAR TEORI

Bab ini membahas tentang teori-teori penunjang, seperti pengertian database, pengertian sistem informasi, penjelasan tentang program Delphi, penjelasan tentang InterBase, penjelasan tentang query, Structure Query language dan penjelasan tentang relasi.

BAB III PERANCANGAN DAN REALISASI

Bab ini berisi tentang pembahasan atas perancangan yang dilakukan terhadap sistem informasi ini.


(51)

5 Universitas Kristen Maranatha BAB IV PENGUJIAN ALAT DAN PENGAMATAN

Bab ini berisi tentang hasil-hasil yang didapat atas pengujian yang telah dilakukan terhadap sistem informasi yang digunakan.

BAB V KESIMPULAN DAN SARAN

Bab ini berisi kesimpulan, yaitu pengetahuan yang didapat setelah mengerjakan karya ilmiah ini. Selain itu berisi pula saran, yaitu hal baru yang dapat digunakan untuk mengembangkan karya ilmiah ini.


(52)

BAB V

KESIMPULAN DAN SARAN

5.1 Kesimpulan

Berdasarkan hasil ujicoba dan pengamatan, dapat diambil kesimpulan sebagai berikut.

 Sistem informasi database obat untuk dokter telah selesai dirancang dan dibuat

 Setelah dilakukan pengujian, keseluruhan software dapat berjalan sesuai dengan yang diinginkan.

5.2 Saran

Setelah dilakukan evaluasi terhadap sistem informasi database obat untuk dokter, diharapkan proyek ini dapat dikembangkan lebih lanjut dengan penambahan-penambahan sebagai berikut.

 Sistem informasi database obat untuk dokter ini tidak hanya mencatat data obat tetapi bisa untuk mencatat resep obat

 Sistem informasi database obat untuk dokter, dapat melakukan diagnosa penyakit.


(53)

49 Universitas Kristen Maranatha DAFTAR PUSTAKA

1. Wong, Hendri. “Pemrograman pemograman database menggunakan delphi”.

Bandung: Informatika.

2. http://www.dafferianto.web.ugm.ac.iddiakses pada tanggal 1 Januari 2011

3. http://iptek-hiban.blogspot.com/2008/12/pengertian-delphi.html diakses pada

tanggal 10 Desember 2010

4. http://soil.faperta.ugm.ac.id/tj/1981/1990%20SISTEM%20INFORMASI.pdf

diakses pada tanggal 31 Desember 2010

5. http://agungsr.staff.gunadarma.ac.id/Downloads/files/3412/Konsep+SI.pdf

diakses pada tanggal 20 Desember 2010

6. http://www.scribd.com/doc/23089559/Kumpulan-Perintah-SQL diakses pada tanggal 15 Februari 2011

7. http://agnez-dylan.blogspot.com/2008/10/penjelasan-sql.html pada tanggal 15 Februari 2011


(1)

Sistem informasi dapat diterapkan dalam bidang kedokteran. Sistem informasi dapat digunakan dalam menyimpan data-data pasien, dan data-data lainnya. Tetapi untuk data-data obat masih tersimpan di dalam buku. Dokter tidak mungkin akan ingat semua data obat yang ada di dalam buku, tentunya hal ini akan mempersulit jika dokter harus membuka buku untuk mencari jenis-jenis obat.

Untuk membuat menjadi lebih mudah, dapat dipergunakan sistem informasi

database obat untuk dokter. Dokter tidak perlu membuka buku untuk mencari jenis-jenis obat, tetapi hanya mengetik data obat yang ingin dicari.

1.2 Rumusan Masalah

Sistem informasi ini merupakan sebuah software yang dibuat dengan program dan berfungsi untuk membantu dokter dalam mencari data obat. Dengan adanya sistem informasi ini dokter tidak membutuhkan waktu yang lama dalam mencari data obat yang ingin dicari. Sistem informasi ini juga mempunyai interface baik dan mudah dimengerti. Dilihat dari keadaan tersebut, muncul pertanyaan-pertanyaan sebagai berikut.

1. Bagaimana cara membuat sistem informasi database obat untuk dokter? 2. Bagaimana cara menghubungkan sistem informasi dengan database? 3. Bagaimana mendesain interface agar mudah digunakan?


(2)

1.3 Tujuan

Tugas akhir ini dibuat untuk merancang dan membuat sistem informasi database

obat untuk dokter, yang didalamnya terdapat informasi mengenai obat yaitu nama obat, komposisi obat, efek samping dan lain-lain.

1.4Batasan Masalah

Batasan-batasan masalah dalam tugas akhir ini adalah sebagai berikut: 1. Pembuatan tugas akhir ini hanya dibuat oleh softwareDelphi 7 .

2. Pembuatan tugas akhir ini data yang diambil hanya didasarkan pada buku Mims.

3. Data tentang obat hanya kode obat, nama obat, komposisi obat, nama perusahaan, indikasi, dosis, kontra indikasi, perhatian, efek samping, interaksi obat, kemasan dan harga, us fda preg cat, jenis obat.


(3)

1.5Sistematika Pembahasan

Penyusunan sistematika pembahasan dilakukan untuk mempermudah penyampaian informasi berdasarkan aturan dan urutan yang benar dari apa yang telah dilakukan. Sistematika pembahasan laporan tugas akhir ini adalah sebagai berikut.

BAB I PENDAHULUAN

Bab ini membahas tentang latar belakang, rumusan masalah, tujuan, batasan masalah, dan sistematika pembahasan.

BAB II DASAR TEORI

Bab ini membahas tentang teori-teori penunjang, seperti pengertian database, pengertian sistem informasi, penjelasan tentang program Delphi, penjelasan tentang InterBase, penjelasan tentang query, Structure Query language dan penjelasan tentang relasi.

BAB III PERANCANGAN DAN REALISASI

Bab ini berisi tentang pembahasan atas perancangan yang dilakukan terhadap sistem informasi ini.


(4)

BAB IV PENGUJIAN ALAT DAN PENGAMATAN

Bab ini berisi tentang hasil-hasil yang didapat atas pengujian yang telah dilakukan terhadap sistem informasi yang digunakan.

BAB V KESIMPULAN DAN SARAN

Bab ini berisi kesimpulan, yaitu pengetahuan yang didapat setelah mengerjakan karya ilmiah ini. Selain itu berisi pula saran, yaitu hal baru yang dapat digunakan untuk mengembangkan karya ilmiah ini.


(5)

BAB V

KESIMPULAN DAN SARAN

5.1 Kesimpulan

Berdasarkan hasil ujicoba dan pengamatan, dapat diambil kesimpulan sebagai berikut.

 Sistem informasi database obat untuk dokter telah selesai dirancang dan dibuat

 Setelah dilakukan pengujian, keseluruhan software dapat berjalan sesuai dengan yang diinginkan.

5.2 Saran

Setelah dilakukan evaluasi terhadap sistem informasi database obat untuk dokter, diharapkan proyek ini dapat dikembangkan lebih lanjut dengan penambahan-penambahan sebagai berikut.

 Sistem informasi database obat untuk dokter ini tidak hanya mencatat data obat tetapi bisa untuk mencatat resep obat

 Sistem informasi database obat untuk dokter, dapat melakukan diagnosa penyakit.


(6)

DAFTAR PUSTAKA

1. Wong, Hendri. “Pemrograman pemograman database menggunakan delphi”.

Bandung: Informatika.

2. http://www.dafferianto.web.ugm.ac.iddiakses pada tanggal 1 Januari 2011

3. http://iptek-hiban.blogspot.com/2008/12/pengertian-delphi.html diakses pada tanggal 10 Desember 2010

4. http://soil.faperta.ugm.ac.id/tj/1981/1990%20SISTEM%20INFORMASI.pdf

diakses pada tanggal 31 Desember 2010

5. http://agungsr.staff.gunadarma.ac.id/Downloads/files/3412/Konsep+SI.pdf

diakses pada tanggal 20 Desember 2010

6. http://www.scribd.com/doc/23089559/Kumpulan-Perintah-SQL diakses pada tanggal 15 Februari 2011

7. http://agnez-dylan.blogspot.com/2008/10/penjelasan-sql.html pada tanggal 15 Februari 2011