• Tidak ada hasil yang ditemukan

Sistem Informasi Database Obat Untuk Dokter.

N/A
N/A
Protected

Academic year: 2017

Membagikan "Sistem Informasi Database Obat Untuk Dokter."

Copied!
53
0
0

Teks penuh

(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

(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

(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)
(10)

LAMPIRAN A

(11)
(12)
(13)
(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

(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');

(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;

(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;

(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;

(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)');

(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');

(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;

(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');

(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!');

(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;

(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);

(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;

(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;

(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.

(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.

(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.

(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

(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

(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

(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

Referensi

Dokumen terkait

Program dapat digunakan setelah proses instalasi selesai, aplikasi ini berfungsi untuk membantu pencatatan pengolahan data obat, data dokter, data konsumen, data

Untuk mengatasi masalah tersebut dibuatlah program sistem informasi stok obat secara komputerisasi sehingga dapat membantu proses penghitungan stok obat, pendataan obat,

Sistem informasi praktek dokter umum yang dibangun ini secara umum dapat berfungsi dengan baik dalam hal pengolahan data-data klinik yang meliputi pengolahan data

Secara umum sistem informasi rekam medis dan resep obat berbasis web ini dapa berfungsi dengan baik dalam menangani proses pendaftaran pasien lama dan pasien baru ke dalam sebuah

Dari rancangan sistem dan rancangan basis data maka akan dibuat sebuah program untuk membantu sistem informasi persediaan obat pada Apotik Angsana Fiesta.. Untuk

Dari rancangan sistem dan rancangan basis data maka akan dibuat sebuah program untuk membantu sistem informasi persediaan obat pada Apotik Angsana Fiesta.. Untuk

Penelitian ini bertujuan untuk membangun sebuah sistem pakar yang dapat digunakan untuk merekomendasikan obat non-resep dokter, serta memberikan informasi mengenai jenis dan

Dengan adanya sistem informasi pendistribusian ini akan membantu pihak outlite/sales mengetahui stok obat yang dipesan.sehingga lebih mudah dalam proses pesanan. Pihak sales