Вы находитесь на странице: 1из 52

ktyd83mn ktyd83mn ktyd83mn

ktyd83mn ktyd83mn ktyd83mn

ktyd83mn ktyd83mn ktyd83mn

174

BAB IV IMPLEMENTASI 4.1. Penjelasan Program Untuk mempermudah user dalam menjalankan program perlu diberikan

penjelasan alur daripada program. Didalam bab ini akan disertakan gambar-gambar tampilan form yang disertai dengan penjelasan fungsi dan kegunaan masisng-masing kontrol yang terdapat didalam form. Adapun Tampilan Program dan penjelasannya diuraikan sebagai berikut : 4.1.1 Form Menu Utama Form yang Pertama muncul pada saat program dieksekusi adalah menu utama, form ini menyediakan kepada user, langkah-langkah menjalankan program.

175

Menu utama ini terdiri dari beberapa sub menu lainnya yaitu : 1. Menu Pengguna Menu pengguna merupakan sebuah fasilitas yang dimiliki oleh pengguna dalam ha ini adalah penderita penyakit asma, dan memiliki sub menu yaitu sebagai berikut: a. Menu pengguna konsultasi yaitu satu sub menu yang merupakan fasilitas yang disediakan bagi pengguna untuk dapat memanfaatkan manfaat utama yang dimiliki oleh aplikasi ini, manfaat utamanya yaitu mendapatkan obat yang aman dan tepat bagi penderita berdasarkan metode yang cocok sesuai dengan aturan obat masing-masing. b. Menu profil yaitu bentuk form yang menampilkan pembuat aplikasi. c. Menu bantuan utama yaitu suatu form yang menampilkan tentang tata cara penggunaan aplikasi yang baik dan benar. 2. Menu Ubah Data Proses Adalah suatu menu yang menampilkan fasilitas edit data baik itu yang berperan sebagai master data (Tabel Rule), dan fasilitas edit data yang berperan sebagai detail data (Tabel Nama_Obat, Indikasi, Kontra_Indikasi, Perhatian, Interaksi_Obat), selain itu fasilitas ini hanya diperuntukan bagi user yang berperan sebagai admin , seorang admin dalam menjalankan perannya dituntut untuk mengerti alur program. Sehingga pengguna dalam tanda kutip yaitu penderita maka tidak diijinkan untuk memasuki form ini karna memiliki fasilitas login hak akses atau bila ingin memasuki form ini harus memasukan Id user dan password yang sesuai dan Id serta passwordnya telah tersimpan dalam aplikasi. Menu Ubah Data ini memiliki sub yaitu sebagai berikut:

176

a. Nama Obat b. Indikasi c. Kontra Indikasi d. Perhatian e. Interaksi Obat f. Rule 3. Menu Ubah Data Bantuan Menu ubah data bantuan juga memiliki fungsi hak akses yang sama dengan form ubah data proses atau dengan kata lain hanya Admin yang bisa meng-Edit ubah data bantuanya. Sehingga data bantuanya bisa langsung dimanfaatkan dan tersedia langsung pada: a. Form input indikasi Memiliki data bantuan mengenai pengertian atau menceritakan tentang apa itu penyakit-penyakit yang ada di Indikasi. b. Form input Kontra indikasi Memiliki data bantuan mengenai pengertian atau menceritakan tentang apa itu penyakit-penyakit yang ada di Kontra Indikasi c. Form input Perhatian Memiliki data bantuan mengenai pengertian atau menceritakan tentang apa itu penyakit-penyakit yang ada di Perhatian d. Form input interaksi Obat

177

Memiliki data bantuan mengenai pengertian atau menceritakan tentang apa itu Obat-obat yang ada dinteraksi obat atau dengan kata lain menceritakan mengenai fungsi sebenarnya dari riwayat obat lain berdasarkan fungsi atau manfaatnya. 4. Tool Login Hak Akses Tool ini fasilitas yang disediakan bagi seorang admin, tentunya seorang admin memiliki ID dan Password sendiri yang dimiliki. 5. Keluar dari Program Menu ini memberikan pilihan keluar dari program atau tidak. Adapun tampilan dari menu utama program ini seperti terlihat pada gambar dibawah ini:

Gambar 5.1 Form Menu Utama

178

4.1..2

Form Profil

Form Profil adalah form yang menampilkan biodata tentang pembuat aplikasi.

Gambar 5.2 Form Profil 4.1.3 Form Bantuan Penggunaan Aplikasi

Adalah sebuah form yang memiliki fungsi untuk memberikan informasi kepada pengguna mengenai tata cara penggunaan aplikasi yang baik dan benar

179

Gambar 5.3 Form Bantuan Penggunaan Aplikasi Fungsi Kontrol Form Bantuan Penggunaan Aplikasi: Tombol Kembali berfungsi untuk kembali ke form awal yaitu form menu utama. Form Ubah Data Indikasi

4.1.4

Form yang memiliki fungsi untuk melakukan kegiatan pengubahan data dan tugas pengubahan data tersebut dimiliki oleh seorang admin, kegiatan pengubahan data yang dapat dilakukan ialah: edit data, tambah data, hapus data, simpan data.

180

Gambar 5.4 Form Ubah Data Indikasi Fungsi Kontrol Form Ubah Data Indikasi: Tombol Tambah digunakan untuk melakukan kegiatan penambahan data yaitu berupa data indikasi. Tombol Batal digunakan untuk membatalkan proses tambah data dan edit data Tombol Edit Data digunakan untuk melakukan kegiatan pengubahan data berupa data indikasi Tombol Hapus Data digunakan untuk melakukan pengurangan atau penghapusan data, penghapusan data dilakukan per record. Tombol Simpan digunakan untuk melakukan penyimpanan apabila kegiatan penambahan atau pengeditan telah selesai dilakukan. Tombol Kembali memiliki fungsi untuk kembali ke form menu utama

181

4.1.5

Ubah Data Kontra Indikasi

Form yang memiliki fungsi sebagai media untuk kegiatan pengubahan data berupa data kontra indikasi, dan hak akses yang berhak melakukan pengubahanya yaitu seorang admin.

Gambar 5.5 Form Ubah Data Kontra Indiaksi Fungsi Kontrol Form Ubah Data Kontra Indikasi: Tombol Tambah digunakan untuk melakukan kegiatan penambahan data yaitu berupa data Kontra indikasi. Tombol Batal digunakan untuk membatalkan proses tambah data dan edit data Tombol Edit Data digunakan untuk melakukan kegiatan pengubahan data berupa data Kontra indikasi Tombol Hapus Data digunakan untuk melakukan pengurangan atau penghapusan data, penghapusan data dilakukan per record. Tombol Simpan digunakan untuk melakukan penyimpanan apabila kegiatan penambahan atau pengeditan telah selesai dilakukan. -

182

4.1.6

Ubah Data Perhatian

Sebuah Form yang memiliki fungsi sebagai media bagi seorang admin untuk melakukan kegiatan pengubahan data yaitu berupa data perhatian, kegiatan pengubahan tersebut yang nantinya juga akan mempengaruhi keluaran proses

Gambar 5.6 Form Ubah Data Perhatian Fungsi Kontrol Form Ubah Data Perhatian: Tombol Tambah digunakan untuk melakukan kegiatan penambahan data yaitu berupa data Perhatian Tombol Batal digunakan untuk membatalkan proses tambah data dan edit data Tombol Edit Data digunakan untuk melakukan kegiatan pengubahan data berupa data Perhatian Tombol Hapus Data digunakan untuk melakukan pengurangan atau penghapusan data, penghapusan data dilakukan per record. Tombol Simpan digunakan untuk melakukan penyimpanan apabila kegiatan penambahan atau pengeditan telah selesai dilakukan.

183

4.1.7

Ubah Data Interaksi Obat

Form ini juga memiliki fungsi yang sama dengan form-form ubah data sebelumnya yaitu sebagai media untuk melakukan kegiatan pengubahan data dengan identitas variabelnya yaitu interaksi obat.

Gambar 5.7 Form Ubah Data Interaksi Obat Fungsi Kontrol Form Ubah Data Interaksi Obat: Tombol Tambah digunakan untuk melakukan kegiatan penambahan data yaitu berupa data Interaksi Obat Tombol Batal digunakan untuk membatalkan proses tambah data dan edit data Tombol Edit Data digunakan untuk melakukan kegiatan pengubahan data berupa data Interaksi Obat Tombol Hapus Data digunakan untuk melakukan pengurangan atau penghapusan data, penghapusan data dilakukan per record. Tombol Simpan digunakan untuk melakukan penyimpanan apabila kegiatan penambahan atau pengeditan telah selesai dilakukan.

184

4.1.8

Ubah Data Nama Obat

Form ini memiliki fungsi yaitu sebagai media ubah data nama obat baik itu menambah, menghapus, dan mengedit data nama obat.

Gambar 5.8 Form Ubah Data Nama Obat Fungsi Kontrol Form Ubah Data Nama Obat: Tombol Tambah digunakan untuk melakukan kegiatan penambahan data yaitu berupa data Nama Obat Tombol Batal digunakan untuk membatalkan proses tambah data dan edit data Tombol Edit Data digunakan untuk melakukan kegiatan pengubahan data berupa data Nama Obat Tombol Hapus Data digunakan untuk melakukan pengurangan atau penghapusan data, penghapusan data dilakukan per record. Tombol Simpan digunakan untuk melakukan penyimpanan apabila kegiatan penambahan atau pengeditan telah selesai dilakukan.

185

4.1.9

Ubah Data Rule

Form ini berfungsi untuk kegiatan pengubahan data berupa data rule proses, apabila kegiatan pengubahan terjadi pada rule nya, maka alur prosesnya pun akan berubah sehingga didapat keluaran yang mungkin akan berbeda pula tergantung tingkat pengubahan datanya, apabila pengubahan data secara ekstrim maka hasilnya pun tentu juga akan berubah

Gambar 5.9 Form Ubah Data Rule Fungsi Kontrol Form Ubah Data Rule Tombol Tambah digunakan untuk melakukan kegiatan penambahan data yaitu berupa data Interaksi Obat Tombol Hapus Data digunakan untuk melakukan pengurangan atau penghapusan data, penghapusan data dilakukan per record. Tombol Kembali berfungsi untuk mengembalikan kita pada form menu utama.

186

4.1.10 Form Konsultasi Form Konsultasi adalah form utama dalam segi fungsionalnya, sehingga penderita yang posisinya sebagai user wajib memasuki form ini agar didapat output atau hasil yaitu berupa nama obat yang aman serta tepat sesuai dengan kondisi dan riwayat penyakit dan obat penderita per individu.

Gambar 5.10 Form Ubah Data Konsultasi Fungsi Kontrol Form Konsultasi: Tombol Indikasi digunakan untuk memasuki form input indikasi Tombol Kontra Indikasi digunakan untuk memasuki form input Kontra Indikasi Tombol Perhatian digunakan untuk memasuki form input Perhatian Tombol Interaksi Obat digunakan untuk memasuki form input Interaksi Obat Tombol Proses digunakan untuk memproses untuk mendapatkan hasil obat setelah melalui proses input pada indikasi serta variabel lainnya Tombol Kembali digunakan untuk kembali ke form awal yaitu form menu utama

187

Tombol Pembuktian digunakan untuk melakukan kegiatan pembuktian mengenai variabel mana yang memang tereliminasi menurut variabelnya dan mana yang tidak ikut tereliminasi menurut variabelnya

Tombol Kondisi awal digunakan untuk mengetahui mengetahui mngenai kondisi penderita berupa tekanan darah dan kategori umur penderita

Tombol Preview Obat digunakan untuk memasuki form output obat hasil proses yang sudah berlangsung.

4.1.11 Form Input Indikasi Form Input Indikasi adalah sebuah form yang kegunaanya digunakan untuk kegiatan input indikasi kondisi asma penderita secara mendetail agar didapat nama obat yang seseuai dengan kondisi penderita sebenar-benarnya.

Gambar 5.11 Form Input Indikasi Fungsi Kontrol Input Indikasi: Tombol pindah (speed button1/>) digunakan untuk memindah indikasi atau detail asma penderita

188

Tombol Hapus (speed button2/X) digunakan untuk menghapus detail asma atau indikasi yang telah dipilih

Tombol Kembali digunakan untuk pindah ke form awal yaitu form menu utama Tombol Proses maksudnya digunakan untuk menyimpan untuk dijadikan proses aplikasi

Tombol Bantuan digunakan untuk memberikan informasi tentang pengetahuan mengenai ciri penyakit dan definisinya bagi penderita agar penderita dapat mengetahui dengan jelas tentang berbagai penyakit tersebut dan untuk membantu penderita membedakan detail penyakit agar tidak salah pilih mengenai input detail penyakit pada indikasi

4.1.12 Form Input Kontra Indikasi Form Input Kontra Indikasi adalah sebuah form yang kegunaanya digunakan untuk kegiatan input Riwayat penyakit lain yang tercantum pada detail Kontra indikasi penderita, maksudnya ditujukan untuk kegiatan memilah obat yang aman bagi penderita

Gambar 5.12 Form Input Kontra Indikasi

189

Fungsi Kontrol Input Kontra Indikasi: Tombol pindah (speed button1/>) digunakan untuk memindah riwayat penyakit lain menurut kondisi penderita per individu sesuai yang tercantum pada list pada Form Kontra Indikasi, dipindah untuk diproses. Tombol Hapus (speed button2/X) digunakan untuk menghapus riwayat penyakit pada kontra indikasi yang telah dipilih atau dihapus untuk dibatalkan. Tombol Kembali digunakan untuk pindah ke form awal yaitu form menu utama Tombol Proses maksudnya digunakan untuk menyimpan untuk dijadikan proses aplikasi Tombol Bantuan digunakan untuk memberikan informasi tentang pengetahuan mengenai ciri penyakit dan definisinya bagi penderita agar penderita dapat mengetahui dengan jelas tentang berbagai penyakit tersebut dan untuk membantu penderita membedakan detail penyakit agar tidak salah pilih mengenai input riwayat penyakit lain pada kontra indikasi. 4.1.13 Form Input Perhatian Form Input Perhatian adalah sebuah form yang kegunaanya digunakan untuk kegiatan input Riwayat penyakit lain yang tercantum pada detail Form Perhatian untuk dipilih oleh penderita, maksudnya ditujukan untuk kegiatan memilah obat yang aman bagi penderita

190

Gambar 5.13 Form Input Perhatian Fungsi Kontrol Input Perhatian: Tombol pindah (speed button1/>) digunakan untuk memindah riwayat penyakit lain menurut kondisi penderita per individu sesuai yang tercantum pada list pada Form Perhatian, dipindah untuk diproses. Tombol Hapus (speed button2/X) digunakan untuk menghapus riwayat penyakit pada Perhatian yang telah dipilih atau dihapus untuk dibatalkan. Tombol Kembali digunakan untuk pindah ke form awal yaitu form menu utama Tombol Proses maksudnya digunakan untuk menyimpan untuk dijadikan proses aplikasi Tombol Bantuan digunakan untuk memberikan informasi tentang pengetahuan mengenai ciri penyakit dan definisinya bagi penderita agar penderita dapat mengetahui dengan jelas tentang berbagai penyakit tersebut dan untuk membantu

191

penderita membedakan detail penyakit agar tidak salah pilih mengenai input riwayat penyakit lain pada Perhatian. 4.1.14 Form Input Interaksi Obat Form Input Interaksi Obat adalah sebuah form yang kegunaanya digunakan untuk kegiatan input Riwayat Konsumsi Obat lain yang tercantum pada detail Form Interaksi Obat untuk dipilih oleh penderita, maksudnya ditujukan untuk kegiatan memilah obat yang aman bagi penderita

Gambar 5.14 Form Input Interaksi Obat Fungsi Kontrol Input Interaksi Obat: Tombol pindah (speed button1/>) digunakan untuk memindah riwayat obat lain menurut kondisi penderita per individu sesuai yang tercantum pada list pada Form Interaksi Obat, dipindah untuk diproses. Tombol Hapus (speed button2/X) digunakan untuk menghapus riwayat obat pada form interaksi obat yang telah dipilih atau dihapus untuk dibatalkan.

192

Tombol Kembali digunakan untuk pindah ke form awal yaitu form menu utama Tombol Proses maksudnya digunakan untuk menyimpan untuk dijadikan proses aplikasi

Tombol Bantuan digunakan untuk memberikan informasi tentang pengetahuan mengenai kegunaan obat pada riwayat konsumsi obat lain bagi penderita agar penderita dapat mengetahui dengan jelas tentang berbagai nama obat tersebut dan untuk membantu penderita mengetahui fungsi atau kegunaan bagi tiap obat riwayat konsumsi lain pada form interaksi obat

4.1.15 Form Pembuktian Sistem Form Pembuktian mempunyai kegunaan sebagai fasilitas pembuktian antar variabel, dan membuktikan apakah benar variabel yang dimaksud memang telah tereliminasi, sehingga dapat disimpulkan bahwa kegunaan form pembuktian ini lebih kepada pengujian proses sistem.

Gambar 5.15 Form Pembuktian

193

Fungsi Kontrol Form Pembuktian: Tombol kembali digunakan untuk kembali ke form konsultasi.:

4.1.16 Form Kondisi Awal Form Kondisi Awal Memiliki kegunaan untuk mengecek mengenai kondisi anda yang sebenarnya, berupa pengecekan tekanan darah serta pengecekan kategori umur apakah penderita masuk dalam kategori anak-anak,dewasa, atau lansia.

Gambar 5.16 Form Cek Kondisi Awal Fungsi Kontrol Form Pembuktian: Tombol Proses digunakan untuk memproses untuk mendapatkan hasil setelah point yang diminta telah selesai diinputkan Tombol keluar digunakan untuk keluar dari form pengecekan kondisi untuk kembali kepada form konsultasi

194

4.1.17 Form Preview Obat

195

Gambar 5.17 Form Preview Obat Fungsi kontrol form preview obat (Spees button1) button pindah untuk cetak digunakan untuk memindah nama obat yang siap untuk dicetak dengan kategori obat yang aman (speed button2) button hapus digunakan untuk menghapus nama obat yang telah dipilih. (Spees button3) button hapus digunakan untuk menghapus nama obat yang telah dipilih. Button simpan digunakan untuk menyimpan nama obat yang telah dipilih untuk mendukung proses untuk mendapatkan rincian obat Button rincian digunakan untuk mendapatkan keluaran yaitu rincian obat berupa indikasi, efek samping, dan dosis pemakaian. 4.1.18 Form Update Bantuan Form update bantuan mempunyai kegunaan untuk mengubah data bantuan yang fungsinya dipegang oleh seorang admin untuk membantu kelancaran proses konsultasi seorang user.

196

Gambar 5.18 Form Update Bantuan Fungsi kontrol form Update bantuan: Tombol simpan berfungsi untuk menyimpan data bantuan yang telah diisi maupun telah diubah. Button kembali berfungsi untuk kembali ke form menu utama

4.1.19 Form Laporan Obat yang Aman Form laporan obat yang aman mempunyai kegunaan untuk mencetak nama obat yang diinginkan oleh seorang user dalam hal ini adalah penderita itu sendiri

197

Gambar 5.19 Form Laporan Obat Yang Aman 4.1.20 Form Rincian Obat Form laporan obat yang tepat mempunyai kegunaan untuk mencetak nama obat yang sesuai dengan kondisi sebenarnya seorang user dalam hal ini adalah penderita itu sendiri

Gambar 5.20 Form Laporan Rincian Obat

198

4.2

Diagram Alur Program atau Flowchart 4.2.1 Flowchart Menu Utama

Mulai

Form Menu Utama

K1 Y Form Konsultasi A

Ingin Konsultasi?

Buka form Konsultasi

T T Keluar

Buka Form Profil?

Form Profil

T Y

Update Data Proses Klik?

Buka form Update Indikasi

Form Update Indikasi

Buka form Update Kontra Indikasi Buka form Ubah Data Cara pemakaian aplikasi Y Form Ubah Data Cara Pemakaian Aplikasi T

Form Update Kontra Indikasi

Buka form Update Perhatian

Form Update Perhatian

Buka form Ubah Data Bantuan Indikasi

T Y Form Ubah Data Bantuan Indkasi Buka form Update Interaksi Y Form Update Interaksi E

H T

Buka form Ubah Data Bantuan Kontra Indikasi

Form Ubah Data Bantuan Kontra Indikasi

Buka form Update Rule

Form Update Rule

I K1

Buka form Ubah Data Bantuan Perhatian

Form Ubah Data Bantuan Perhatian

Buka form Ubah Data Bantuan Interaksi

Form Ubah Data Bantuan Interaksi

K1

Gambar 5.21 Flowchart Menu Utama

199

4.2.2

Flowchart Konsultasi
A

4.2.2.1 Input Indikasi

Buka Form Input Indikasi

Y Button1 klik form4.Show;

sa

T K1

sa

Form Input Indikasi

T Pilih detail asma pada input indikasi Y vindikasi . Append ; vindikasi ['kd_ indikasi ' ]:= AQifindikasi ['kd_ indikasi ']; vindikasi [' indikasi ' ]:= AQifindikasi [' indikasi ']; vindikasi . Post; Proses Berhenti

Speedbutton1 klik

DBGrid1

Apakah Penyakit Indikasi Benar Menurut pilihan Anda ?

Apakah akan mengubah pilihan penyakit ?

Speedbutton 2 klik

T Y Button1 klik form2. Show; A

if vindikasi . RecordCount< 1 then exit else vindikasi . Delete;

DBLookUpListBox1 Button2 klik

vindikasi . First; form2.ind:=''; form2. Kind:=''; for Lp:= 1 to vindikasi . RecordCount do begin form 2.ind:=form2.ind+ vindikasi [' indikasi ' ]+','; form 2. Kind:=form2. Kind+''''+ vindikasi ['kd_ indikasi ' ]+''''+','; vindikasi . Next; end; form2. iakhir:=copy( form2. ind,1, length( form2.ind)-1); form2. Kakhir:=copy( form2. Kind,1, length( form2. Kind)-1); close;

Gambar 5.22 Flowchart input Incdikasi

200

4.2.2.2 Input Kontra Indikasi


A

Buka Form Kontra Indikasi

Y Button2 klik form6.show;

sb

T K1

sc

Form Input Kontra Indikasi

T Pilih riwayat penyakit lain pada Kontra Proses Berhenti

Y Speedbutton 1 klik vki. Append ; vki[' typeki' ]:=aqfki[' typeki']; vki[' kontra_ indikasi ' ]:=aqfki[' kontraindikasi ']; DBGrid1

Apakah Riwayat Penyakit lain Benar Menurut pilihan Anda ?

Apakah akan mengubah pilihan riwayat penyakit ?

Speedbutton 2 klik

if vki . RecordCount< 1 then exit else vki. Delete ;

Button2 klik

Button1 klik

form2. Show; A DBLookupListBox1

cd

vki. First; form2. KdK:=''; form2. nmk:=''; vki. First; for ki:= 1 to vki. RecordCount do begin form 2. KdK:=form2. KdK+''''+vki[' typeki' ]+''''+','; form 2. nmk:=form2. nmk+vki[' kontra_ indikasi ' ]+','; vki. Next; end; form2. akdk:=copy( form2. KdK,1, length( form2. KdK)-1); form2. anmk:=copy( form2. nmk,1, length( form2. nmk)-1); Close;

Gambar 5.23 Flowchart Input Kontra Indikasi

201

4.2.2.3 Input Perhatian


A

Buka Form Perhatian

Y Button3 klik form7.show;

sc

T K1

sc

Form Input Perhatian

T Pilih riwayat penyakit lain pada Perhatian Proses Berhenti

Y Speedbutton 1 klik

vperh. Append; vperh[' typeperhatian ']:= aqfperob [' typeperhatian ']; vperh [' perhatian ']:= aqfperob [' perhatian ']; vperh . Post;

DBGrid1

Apakah Riwayat Penyakit lain Benar Menurut pilihan Anda ?

Apakah akan mengubah pilihan riwayat penyakit ?

Speedbutton 2 klik

if vperh . RecordCount< 1 then exit else vperh . delete;

Button2 klik

Button1 klik

form2. Show; A DBLookupListbox1

cd

fperh. First; form2. kdpr:=''; form2. nmpr:=''; for per:= 1 to vperh . RecordCount do begin form 2. kdpr:=form2. kdpr+''''+ vperh[' typeperhatian ']+''''+','; form 2. nmpr:=form2. nmpr+ vperh[' perhatian ']+','; vperh . Next; end; form 2. akdpr:=copy( form2. kdpr,1, length( form2. kdpr)-1); form 2. anmpr:=copy( form2. nmpr,1, length( form2. nmpr)-1); Close;

Gambar 5.24 Flowchart Input Perhatian

202

4.2.2.4 Input Interaksi


A

Buka Form Interaksi Obat

Y Button4 klik form5.show;

sd

T K1

sd

Form Input Interaksi Obat

T Pilih riwayat obat lain pada Interaksi obat Proses Berhenti

Y Speedbutton 1 klik

vio. Append ; vio[' typeio']:= AQfiobat [' typeio']; vio[' interaksi _ obat']:=form5. AQfiobat [' interaksi _o bat']; vio. Post; DBGrid1

Apakah Riwayat Obat lain Benar Menurut pilihan Anda ?

Apakah akan mengubah pilihan riwayat obat ?

Speedbutton 2 klik

if vio. RecordCount< 1 then exit else vio. Delete;

Button2 klik

Button1 klik

form2. Show; A DBLookupListBox1

cd

form2. kdio:=''; form2. nmio:=''; vio. First; for intobat := 1 to vio. RecordCount do begin form 2. kdio:=form2. kdio+''''+vio[' typeio']+''''+','; form 2. nmio:=form2. nmio+vio[' interaksi _ obat']+','; vio. Next; end ; form 2. akdio:=copy( form2. kdio,1, length( form2. kdio)-1); form 2. anmio:=copy( form2. nmio,1, length( form2. nmio)-1); Close;

Gambar 5.25 Flowchart Input Interaksi Obat

203

4.2.3

Listing Program untuk Proses Konsultasi Input Indikasi

4.2.3.1

o Button Pilih untuk dipindah procedure TForm4.SpeedButton1Click(Sender: TObject); begin vindikasi.Append; vindikasi['kd_indikasi']:=AQifindikasi['kd_indikasi']; vindikasi['indikasi']:=AQifindikasi['indikasi']; vindikasi.Post; end; o Button Hapus procedure TForm4.SpeedButton2Click(Sender: TObject); begin if vindikasi.RecordCount < 1 then exit else vindikasi.Delete; end; o Button Simpan untuk diproses procedure TForm4.Button2Click(Sender: TObject); var LP:integer; //ind,iAkhir,kind,kakhir:String; begin vindikasi.First; form2.ind:=''; form2.Kind:=''; for Lp:=1 to vindikasi.RecordCount do begin form2.ind:=form2.ind+vindikasi['indikasi']+','; form2.Kind:=form2.Kind+''''+vindikasi['kd_indikasi']+''''+','; vindikasi.Next; end; form2.iakhir:=copy(form2.ind,1,length(form2.ind)-1); form2.Kakhir:=copy(form2.Kind,1,length(form2.Kind)-1); close; end;

204

o Button Kembali procedure TForm4.Button1Click(Sender: TObject); begin form2.Show; end; o Button Bantuan procedure TForm4.Button3Click(Sender: TObject); begin form19.show; end; 4.2.3.2 Input Kontra Indikasi

o Button Pilih untuk dipindah procedure TForm6.SpeedButton1Click(Sender: TObject); begin vki.Append; vki['typeki']:=aqfki['typeki']; vki['kontra_indikasi']:=aqfki['kontraindikasi']; end; o Button Hapus procedure TForm6.SpeedButton2Click(Sender: TObject); begin if vki.RecordCount < 1 then exit else vki.Delete; end; o Button Simpan untuk diproses procedure TForm6.Button2Click(Sender: TObject); var ki:integer; begin vki.First; form2.KdK:=''; form2.nmk:='';

205

vki.First; for ki:=1 to vki.RecordCount do begin form2.KdK:=form2.KdK+''''+vki['typeki']+''''+','; form2.nmk:=form2.nmk+vki['kontra_indikasi']+','; vki.Next; end; form2.akdk:=copy(form2.KdK,1,length(form2.KdK)-1); form2.anmk:=copy(form2.nmk,1,length(form2.nmk)-1); o Button Kembali procedure Tform6.Button1Click(Sender: TObject); begin form2.Show; end; o Button Bantuan procedure TForm4.Button3Click(Sender: TObject); begin form19.show; end; 4.2.3.3 Input Perhatian

o Button Pilih untuk dipindah procedure TForm7.SpeedButton1Click(Sender: TObject); begin vperh.Append; vperh['typeperhatian']:=aqfperob['typeperhatian']; vperh['perhatian']:=aqfperob['perhatian']; vperh.Post; end; o Button Hapus procedure TForm7.SpeedButton2Click(Sender: TObject); begin if vperh.RecordCount < 1 then exit else vperh.delete;

206

end; o Button Simpan untuk diproses procedure TForm7.Button2Click(Sender: TObject); var per:integer; begin vperh.First; form2.kdpr:=''; form2.nmpr:=''; for per:=1 to vperh.RecordCount do begin form2.kdpr:=form2.kdpr+''''+vperh['typeperhatian']+''''+','; form2.nmpr:=form2.nmpr+vperh['perhatian']+','; vperh.Next; end; form2.akdpr:=copy(form2.kdpr,1,length(form2.kdpr)-1); form2.anmpr:=copy(form2.nmpr,1,length(form2.nmpr)-1); close; end; o Button Kembali procedure Tform7.Button1Click(Sender: TObject); begin form2.Show; end; o Button Bantuan procedure TForm7.Button3Click(Sender: TObject); begin form17.show; end; 4.2.3.4 Input Interaksi Obat

o Button Pilih untuk dipindah procedure TForm5.SpeedButton1Click(Sender: TObject); begin vio.Append; vio['typeio']:=AQfiobat['typeio'];

207

vio['interaksi_obat']:=form5.AQfiobat['interaksi_obat']; vio.Post; end; o Button Hapus procedure TForm5.SpeedButton2Click(Sender: TObject); begin if vio.RecordCount < 1 then exit else vio.Delete; end; o Button Simpan untuk diproses procedure TForm5.Button2Click(Sender: TObject); var intobat:integer; begin form2.kdio:=''; form2.nmio:=''; vio.First; for intobat:=1 to vio.RecordCount do begin form2.kdio:=form2.kdio+''''+vio['typeio']+''''+','; form2.nmio:=form2.nmio+vio['interaksi_obat']+','; vio.Next; end; form2.akdio:=copy(form2.kdio,1,length(form2.kdio)-1); form2.anmio:=copy(form2.nmio,1,length(form2.nmio)-1); close; end; o Button Kembali procedure Tform5.Button1Click(Sender: TObject); begin form2.Show; end; o Button Bantuan procedure TForm5.Button3Click(Sender: TObject); begin form16.show;

208

end; end; 4.2.4 Listing Program Untuk Tombol Proses

procedure TForm2.Button7Click(Sender: TObject); var ik,ki,aik,aki,prk,aprk,iokd,aiokd,sma,asma,tdk,atdk,abaru:string; lop:integer; LpKon:integer; ada:variant; probat,lokasitbl:string; begin for lpkon:=1 to virtualtable1.RecordCount do begin virtualtable1.Delete; virtualtable1.Next; end; for lpkon:=1 to form11.VAkhir.RecordCount do begin form11.VAkhir.Delete; form11.VAkhir.Next; end; ik:=''; ki:=''; aik:=''; aprk:=''; aiokd:=''; abaru:=''; asma:=''; sma:=''; // aki:='';prk:='';aprk:='';iokd:='';aiokd:='';sma:='';asma:=''; VirtualTable1.Append; VirtualTable1['indikasi']:=Iakhir;//vindikasi['indikasi']; Virtualtable1['kd_indikasi']:=Kakhir; virtualtable1['kontra_indikasi']:=anmk; //virtualtable1['komposisi_obat']:=aob;//vkomb['komposisi_obat']; //virtualtable1['typekomposisi']:=akd;//vkomb['typekomposisi']; virtualtable1['typeio']:=akdio; virtualtable1['interaksi_obat']:=anmio; virtualtable1['typeki']:=akdk; virtualtable1['perhatian']:=anmpr; virtualtable1['typeperhatian']:=akdpr; // VirtualTable1['tensidarah']:=AQfkondaw['kondisi_awal']; //Virtualtable1['kd_tensi']:=aqfkondaw['kd_kondaw'];

209

// VirtualTable1['umur']:=AQumur['kondisi_awal']; //Virtualtable1['kd_umur']:=AQumur['kd_kondaw']; // VirtualTable1['jeniskelamin']:=combobox1.Text; VirtualTable1.Post; //indikasi if Length(virtualtable1['kd_indikasi']) = 0 then aki:='' else begin form11.Qindi.Close; form11.Qindi.SQL.Clear; form11.Qindi.SQL.Add('select rule.Kd_obat,nama_obat from rule left join obat on rule.kd_obat=obat.kd_obat'+ ' where kd_variabel in ('+virtualtable1['kd_indikasi']+') group by rule.kd_obat,nama_obat'); form11.Qindi.Open; // ambil kode obat indikasi form11.Qindi.First; for lop:=1 to form11.Qindi.RecordCount do begin ki:=ki+''''+form11.Qindi['kd_obat']+''''+','; form11.Qindi.Next; end; aki:=copy(ki,1,length(ki)-1); end; //kontra indikasi if Length(virtualtable1['typeki']) = 0 then aik:='' else begin form11.QKontraindi.Close; form11.QKontraindi.SQL.clear; form11.QKontraindi.SQL.Add('Select kd_obat from rule '+ ' where kd_variabel in ('+virtualtable1['typeki']+') and kd_variabel like:a group by kd_obat'); form11.QKontraindi.Parameters[0].Value:=copy(virtualtable1['typeki'],2,2)+'%'; form11.QKontraindi.Open; //ambil kode obat kontra indikasi form11.QKontraindi.First; for lop:=1 to form11.QKontraindi.RecordCount do begin ik:=ik+''''+form11.QKontraindi['kd_obat']+''''+','; form11.QKontraindi.Next; end; probat:=copy(ik,1,length(ik));

210

form11.QKontraindi.Close; form11.QKontraindi.SQL.clear; form11.QKontraindi.SQL.Add('Select kd_obat from rule '+ ' where kd_variabel not in ('+virtualtable1['typeki']+')'+ ' and kd_obat not in('+probat+') group by kd_obat'); //QKontraindi.Parameters[0].Value:=copy(virtualtable1['typeki'],2,2)+'%'; form11.QKontraindi.Open; //ambil kode obat kontra indikasi form11.QKontraindi.First; for lop:=1 to form11.QKontraindi.RecordCount do begin ik:=ik+''''+form11.QKontraindi['kd_obat']+''''+','; form11.QKontraindi.Next; end; aik:=copy(ik,1,length(ik)); end; //perhatian if Length(virtualtable1['typeperhatian']) = 0 then aprk:='' else begin form11.Qpr.Close; form11.Qpr.SQL.clear; form11.Qpr.SQL.Add('Select kd_obat from rule '+ ' where kd_variabel in ('+virtualtable1['typeperhatian']+') and kd_variabel like:a group by kd_obat'); form11.Qpr.Parameters[0].Value:=copy(virtualtable1['typeperhatian'],2,1)+'%'; form11.Qpr.Open; form11.Qpr.First; for lop:=1 to form11.Qpr.RecordCount do begin prk:=prk+''''+form11.Qpr['kd_obat']+''''+','; form11.Qpr.Next; end; probat:=copy(prk,1,length(prk)-1); form11.Qpr.Close; form11.Qpr.SQL.clear; form11.Qpr.SQL.Add('Select kd_obat from rule '+ ' where kd_variabel not in ('+virtualtable1['typeperhatian']+') and kd_obat not in('+probat+') group by kd_obat'); //qpr.Parameters[0].Value:=copy(virtualtable1['typeperhatian'],2,1)+'%'; form11.Qpr.Open; //ambil kode obat perhatian form11.Qpr.First; for lop:=1 to form11.Qpr.RecordCount do

211

begin prk:=prk+''''+form11.Qpr['kd_obat']+''''+','; form11.Qpr.Next; end; aprk:=copy(prk,1,length(prk)); end; //interaksi obat if Length(virtualtable1['typeio']) = 0 then aiokd:='' else begin form11.qio.Close; form11.qio.SQL.clear; form11.qio.SQL.Add('Select kd_obat from rule '+ ' where kd_variabel in ('+virtualtable1['typeio']+') and kd_variabel like:a group by kd_obat'); form11.qio.Parameters[0].Value:=copy(virtualtable1['typeio'],2,2)+'%'; form11.qio.Open; form11.qio.First; for lop:=1 to form11.qio.RecordCount do begin iokd:=iokd+''''+form11.qio['kd_obat']+''''+','; form11.qio.Next; end; probat:=copy(iokd,1,length(iokd)); form11.qio.Close; form11.qio.SQL.clear; form11.qio.SQL.Add('Select kd_obat from rule '+ ' where kd_variabel not in ('+virtualtable1['typeio']+') '+ ' and kd_obat not in('+probat+') group by kd_obat'); //qio.Parameters[0].Value:=copy(virtualtable1['typeio'],2,2)+'%'; form11.qio.Open; //ambil kode obat io form11.qio.First; for lop:=1 to form11.qio.RecordCount do begin iokd:=iokd+''''+form11.qio['kd_obat']+''''+','; form11.qio.Next; end; aiokd:=copy(iokd,1,length(iokd)); end; form11.Qindi.First; for lpkon:=1 to form11.Qindi.RecordCount do begin

212

{ qupakhir.Close; qupakhir.SQL.Clear; qupakhir.SQL.Add('Insert into lokasi values(:a,:b)'); qupakhir.Parameters[0].Value:=qindi['kd_obat']; qupakhir.Parameters[1].Value:=''; } form11.VAkhir.Append; form11.VAkhir['kd_obat']:=form11.Qindi['kd_obat']; form11.VAkhir['namaobat']:=form11.Qindi['nama_obat']; // vakhir['lokasitabel']:=','; form11.VAkhir.Post; form11.Qindi.Next; end; form11.VAkhir.First; For lpkon:=1 to form11.VAkhir.RecordCount do begin vada; if form11.QKontraindi.Active = true then begin form11.Vkontra.Close; form11.Vkontra.Assign(form11.QKontraindi); form11.Vkontra.Open; form11.Vkontra.Filtered:=false; form11.vkontra.Filter:='Kd_obat ='''+form11.VAkhir['kd_obat']; form11.Vkontra.Filtered:=true; if form11.Vkontra.RecordCount < 1 then begin lokasitbl:='Not in kontra indikasi '+','+form11.VAkhir['lokasitabel']; form11.VAkhir.Edit; form11.VAkhir['lokasitabel']:=copy(lokasitbl,1,length(lokasitbl)-1); form11.VAkhir.Post; end; // else // vdel; end; if form11.qio.Active = true then begin form11.Vkontra.Close; form11.Vkontra.Assign(form11.qio); form11.Vkontra.Open; form11.Vkontra.Filtered:=false; form11.Vkontra.Filter:='Kd_obat ='''+form11.VAkhir['kd_obat']; form11.Vkontra.Filtered:=true; if form11.Vkontra.RecordCount < 1 then begin lokasitbl:='Not in interaksi obat '+','+form11.VAkhir['lokasitabel'];

213

form11.VAkhir.Edit; form11.VAkhir['lokasitabel']:=copy(lokasitbl,1,length(lokasitbl)-1); form11.VAkhir.Post; end; // else // vdel; end; if form11.Qpr.Active = true then begin form11.Vkontra.Close; form11.Vkontra.Assign(form11.Qpr); form11.Vkontra.Open; form11.Vkontra.Filtered:=false; form11.Vkontra.Filter:='Kd_obat ='''+form11.VAkhir['kd_obat']; form11.Vkontra.Filtered:=true; if form11.Vkontra.RecordCount < 1 then begin lokasitbl:='not in perhatian '+','+form11.VAkhir['lokasitabel']; form11.VAkhir.Edit; form11.VAkhir['lokasitabel']:=copy(lokasitbl,1,length(lokasitbl)-1); form11.VAkhir.Post; end; // else // vdel; end; lokasitbl:=copy(form11.VAkhir['lokasitabel'],1,length(form11.VAkhir['lokasitabel'])-1); form11.VAkhir.Edit; form11.VAkhir['lokasitabel']:=lokasitbl; form11.VAkhir.Next; //showmessage(''); end; end; //=================================================== procedure TForm2.VAkhirCalcFields(DataSet: TDataSet); begin // vakhir['lokasitabel']:=copy(vakhir['lokasitabel'],1,length(vakhir['lokasitabel'])-1); end; procedure TForm2.Button6Click(Sender: TObject); begin form9.Show;

214

end; procedure TForm2.Button8Click(Sender: TObject); begin FORM11.Show; end; procedure TForm2.Button9Click(Sender: TObject); begin form12.Show end; end.

215

4.3

Implementasi Program Aplikasi Sistem Pakar Pemilihan Obat Yang Aman dan Tepat

4.3.1

Form Awal Konsultasi Pada pengujian pertama ini penulis mencoba melakukan pengujian pemilihan

Obat Yang tepat dan aman, pada pengujian ini penulis mencoba untuk memasukan premis pada tiap variabelnya.

Gambar 5.26 Form Awal Konsultasi (imp1)

216

4.3.2

Form Input Indikasi

Input Indikasi: Asma Bronkial Bronkitis Kronis Emfisema

Gambar 5.27 Form Input Indikasi (imp2) 4.3.3 Form Input Kontra Indikasi

Input Kontra Indikasi: Glaukoma

217

4.3.4

Gambar 5.28 Form Input Kontra Indikasi (imp3) Form Input Perhatian

Input Perhatian: Aneurisma

Gambar 5.29 form Input Perhatian (imp4)

218

4.3.5

Form Input Interaksi Obat

Input Interaksi Obat: Aspirin

Gambar 5.30 Form Input Interaksi Obat (imp5)

219

4.3.6

Melakukan Proses Pencarian

Tekan Proses untuk melakukan pencarian

Gambar 5.31 Form proses Pencarian (imp6)

220

4.3.7

Hasil Pencarian

Gambar 5.32 Form Hasil Pencarian (imp7) Outputnya Adalah: 1) Obat Yang Aman: Alupent Aminophylinum Asmabet Asmadex Astherin Meptin Air Meptin Nairet Proventol Expectoran Pulmobron

221

Bambec Berodual Berotec Bintasma Brasmatic Bricasma Expectorant Bricasma dengan Nebuhaler Bronchophyllin Brondilex Bronsolvan Cariamyl Clenil Clenil Compositum Combivent Dilatamol Etaphyllin Forasma Inflamide Inolin Intal5 Ipradol Kalbron

Retaphyl SR Salbron / Salbron Expectorant Salbuven Espectorant Sedakter Spiropent Suprasma Symbicort Tabas Teosal Terasma / Terasma Expectoran Theobron Theochodil Tilade Mint Tismalin

222

2) Obat Tidak Aman (Bila konsumsi terpaksa dilakukan dengan syarat dalam pengawasan atau konsultasi terlebih dahulu kepada Dokter dengan permasalahan pada riwayat obat lain dengan variabel Interaksi Obat) -` Accolate 3) Obat Tidak Aman (Bila konsumsi terpaksa dilakukan dengan syarat dalam pengawasan atau konsultasi terlebih dahulu kepada Dokter dengan permasalahan pada riwayat penyakit lain dengan variabel Perhatian) Asmacare Azmacon Fartolin Fartolin Expectorant Glisend Lasal Lasal Expectorant Lasmalin Librentin Salbuven Ventab Volmax Venterol

4) Obat Tidak Aman (Dilarang keras dalam kegiatan Konsumsinya) Asmano Asma Solon Asthma Soho Ephedrin HCI Neo Dilakris Neo Napacin Prinasma

223

5) Obat Yang Aman dan Tepat pada Ketiga Premis Indikasi nya Alupent Asmabet Astherin Bintasma Brasmatic Bricasma dengan Nebuhaler Etaphyllin Forasma Inflamide Meptin Nairet Pulmobron Salbron / Salbron Expectorant

224

4.3.7

Laporan Rincian Output Obat per 1 Item Pilihan

Gambar 5.33 Form Laporan Obat Yang Aman (imp8)

225

Вам также может понравиться