Perancangan Pemesanan Makanan Di Cafe Dengan Menggunakan Perangkat Lunak.

(1)

i

Universitas Kristen Maranatha

ABSTRAK

Pada zaman dahulu, jika ingin memesan makanan pelanggan diharuskan melihat menu yang dibawa oleh pelayan cafe tempat pelanggan makan. Setelah itu, pelayan akan mencatat semua pesanan (makanan dan minuman) dan memberikan kepada koki cafe untuk dibuat pesanan dari pelanggan tersebut. Lalu, setelah pesanan itu selesai, pelayan akan memberikan pesanan itu ke meja tempat pelanggan itu berada dan setelah pelanggan selesai makan, pelanggan menuju kasir untuk membayar pesanan itu.

Tetapi sekarang, dengan adanya kecanggihan teknologi pemesanan makanan dapat dilakukan dengan menggunakan bantuan software, yang akan mempermudah pelayan memberikan pelayanan yang lebih baik. Jadi, dengan menggunakan bantuan software ini, mempermudah dan mempercepat admin dalam hal laporan pembelian dan penjualan, lalu mempermudah pula pelayan dalam hal daftar menu, karena daftar menu ini dibuat dengan software. Pelanggan tinggal memesan dan pelayan menggunakan software ini untuk memasukkan pesanan pelanggan. Admin juga, dipermudah dalam hal pembelian bahan baku pembuatan makanan, karena dapat melihat stok makanan yang ada.


(2)

ii Universitas Kristen Maranatha

ABSTRACT

In the past time, if you want to order food Customers are required to view the menu was brought by the maid cafe where Customers eat. After that, the pelayan will record all orders (food and beverages) and give to the chef to madeall ordersfor the Customer. Then, after the order was completed, pelayan will give orders to the table where the Customer is and after the subscribers had finished eating, he headed for the cashier to pay for your order.

But now, with the technological sophistication of the food orders can be done by using statistical software, which will facilitate the waiter to give better service. So, with the help of this software, simplify and accelerate the admin in the case of purchases and sales reports, and also facilitate the waiter in the menu list, because the menu was created with the software. Customers stay order and the waiter use this software to enter customer orders. Admin also, watered down in terms of purchasing raw materials for food, because it can see the existing food stocks.


(3)

iii Universitas Kristen Maranatha

DAFTAR ISI

ABSTRAK……….. i

ABSTRACT……… ii

DAFTAR ISI…………..………. iii

DAFTAR GAMBAR………..……… vi

BAB I. PENDAHULUAN………. 1

1.1. Latar Belakang Masalah………. 1

1.2. Identifikasi Masalah……… 1

1.3. Tujuan Masalah……….. 1

1.4. Pembatasan Masalah……….. 1

1.5. Cara Kerja……….. 2

1.6. Sistematika Penulisan……….. 2

Bab II. LANDASAN TEORI……….……….. 3

2.1. Pengertian Delphi………. 3

2.2. Sejarah Perkembangan Delphi………. 3

2.2.1. Delphi versi 1……… 4

2.2.2. Delphi versi 2……….... 5

2.2.3. Delphi versi 3……… 5

2.2.4. Delphi versi 4……… 6


(4)

iv Universitas Kristen Maranatha

2.2.6. Delphi versi 6…….……… 7

2.2.7. Delphi versi 7……… 7

2.2.8. Delphi versi 8……… 8

2.2.9. Delphi 2005……… 9

2.2.10. Delphi 2006………. 10

2.2.11. CodeGear Delphi 2007……… 11

2.2.12. Embarcadero Delphi 2009……….…….. 13

2.2.13. Embarcadero Delphi 2010……….. 13

2.2.14. Embarcadero Delphi 2011(Fulcrum)……….. 15

2.3. OOP(Object Oriented Programming)……….. 16

2.3.1. Tiga Model OOP………... 16

2.3.1.1. Encapsulation atau pemodelan..…… 16

2.3.1.2. Inheritance atau penurunan………… 17

2.3.1.3. Polymorphism atau Polimorfisme….. 17

2.4. Delphi dan OOP (Object Oriented Programming)…….. 17

2.5. Kelebihan Delphi 7.0……… 18

Bab III. PEMODELAN DAN ANALISIS PROGRAM…………. 19

3.1. Pembuatan Flowchart………... 19

3.2. Perancangan Program………..………..………….. 28

3.2.1. Perancangan Database…….………. 28


(5)

v Universitas Kristen Maranatha

Bab IV. HASIL PROGRAM………. 35

4.1. Pembuatan Software……….……… 35

4.1.1. Pembuatan Database………. 35

4.1.1.1. Form Barang……….. 35

4.1.1.2. Form Customer……….. 36

4.1.1.3. Form Supplier………. 37

4.1.1.4. Form Jual……… 38

4.1.1.5. Form Jual Item……… 39

4.1.1.6. Form Beli……… 40

4.1.1.7. Form Beli Item.……….. 41

4.1.2. Pembuatan Program……….. 42

Bab V. KESIMPULAN DAN SARAN……… 69

5.1. Kesimpulan……….. 69

5.2. Saran……… 69

DAFTAR PUSTAKA ……… 70 LAMPIRAN I …….………..………. A-1


(6)

vi Universitas Kristen Maranatha

DAFTAR GAMBAR

Gambar 2.1. Delphi versi 1 ……… 4

Gambar 2.2. Delphi versi 2 ……… 5

Gambar 2.3. Delphi versi 3 ……….... 5

Gambar 2.4. Delphi versi 4 ……… 6

Gambar 2.5. Delphi versi 5 ……… 6

Gambar 2.6. Delphi versi 6 ……… 7

Gambar 2.7. Delphi versi 7 ……… 8

Gambar 2.8. Delphi versi 8 ……… 9

Gambar 2.9. Delphi 2005 .……….. 10

Gambar 2.10. Delphi 2006 ………. 11

Gambar 2.11. CodeGear Delphi 2007 …..……….. 13

Gambar 2.12. Embarcadero Delphi 2009 ..……… 14

Gambar 2.13. Embarcadero Delphi 2010 ……….. 15

Gambar 2.14. Embarcadero Delphi 2011 (Fulcrum) ………. 16

Gambar 3.1. Flowchart menu awal …..……….. 19

Gambar 3.2. Flowchart daftar menu ………..……… 20

Gambar 3.3. Flowchart bagian input makanan …..……… 21

Gambar 3.4. Flowchart bagian customer …..…….……….... 22


(7)

vii Universitas Kristen Maranatha

Gambar 3.6. Flowchart bagian pembelian ……….. 24

Gambar 3.7. Flowchart bagian laporan pembelian barang ……..….. 25

Gambar 3.8. Flowchart bagian penjualan resto ………….………… 26

Gambar 3.9. Flowchart bagian laporan penjualan barang …………. 27

Gambar 3.10. Database IBConsole ……..……….. 28

Gambar 3.11. Register Database ……… 29

Gambar 3.12. Local server Database ………..……... 30

Gambar 3.13. Create Database .………. …………..…… 31

Gambar 3.14. Database IBConsole - Database makanan ….……… 32

Gambar 3.15. Script SQL ……….. 32

Gambar 3.16. Database IBConsole - pembuatan Form ………. 33

Gambar 3.17. Delphi 7 …….…………..……… 33

Gambar 4.1. Form barang .……….……… 36

Gambar 4.2. Form customer .……… ……… 37

Gambar 4.3. Form supplier ……… 38

Gambar 4.4. Form jual …...……… 39

Gambar 4.5. Form jual item ……… 40

Gambar 4.6. Form beli …...……… 41

Gambar 4.7. Form beli item ….………..……… 42

Gambar 4.8. Bagian menu .……….……… 43


(8)

viii Universitas Kristen Maranatha

Gambar 4.10. Bagian laporan .……….……….. 44

Gambar 4.11. Daftar menu ..….……….……….. 45

Gambar 4.12. Daftar menu (pesan) ..……….……….. 45

Gambar 4.13. Transaksi penjualan ..…….……….………….. 46

Gambar 4.14. Login ….……….……….. 47

Gambar 4.15. Input makanan ..….……….. 47

Gambar 4.16. Tombol simpan - input makanan ..……….. 49

Gambar 4.17. Tombol cari - input makanan ……….. 49

Gambar 4.18. Tombol hapus - input makanan …….……….. 50

Gambar 4.19. Hasil cetak - input makanan ..……….. 50

Gambar 4.20. Daftar customer …….……….. 51

Gambar 4.21. Tombol simpan - daftar customer ………...…………. 52

Gambar 4.22. Tombol cari (kode customer) - daftar customer ….….. 53

Gambar 4.23. Tombol cari (nama customer) - daftar customer …….. 54

Gambar 4.24. Tombol hapus - daftar customer .………..………….. 55

Gambar 4.25. Hasil cetak - daftar customer ……...….……….. 55

Gambar 4.26. Daftar supplier ..……….. 56

Gambar 4.27. Tombol simpan - daftar supplier .…..……….. 57

Gambar 4.28. Tombol cari (kode supplier) - daftar supplier ..……... 58

Gambar 4.29. Tombol cari (nama supplier) - daftar supplier …….... 58


(9)

ix Universitas Kristen Maranatha Gambar 4.31. Hasil cetak - daftar supplier ….……….….. 59 Gambar 4.32. Transaksi pembelian barang .……….………….. 60 Gambar 4.33. Tombol tambah - Transaksi pembelian barang …..…. 61 Gambar 4.34. Tombol simpan - Transaksi pembelian barang ….….. 61 Gambar 4.35. Hasil cetak - Transaksi pembelian barang ….………. 62 Gambar 4.36. Transaksi penjualan …..………….……….. 62 Gambar 4.37. Hasil cetak - Transaksi penjualan ………... 63 Gambar 4.38. Laporan pembelian barang ………..………. 63 Gambar 4.39. Laporan pembelian barang menggunakan tanggal .…. 64 Gambar 4.40. Laporan pembelian barang menggunakan nama supplier 65 Gambar 4.41. Laporan pembelian barang menggunakan nomor bon .. 66 Gambar 4.42. Laporan penjualan resto ...……….…….. 66 Gambar 4.43. Laporan penjualan resto menggunakan tanggal …..… 67 Gambar 4.44. Laporan penjualan resto menggunakan nomor bon .... 68


(10)

A-1

Universitas Kristen Maranatha

Lampiran I

LISTING PROGRAM

Pembuatan Database:

1. Pembuatan tabel Barang

CREATE TABLE "BARANG" (

"KODEBRG" CHAR(8) NOT NULL, "NAMABRG" CHAR(30),

"HRGBELI" NUMERIC(9, 2), "HRGJUAL" NUMERIC(9, 2), "STOK" NUMERIC(9, 2), "KATEGORI" CHAR(10),

CONSTRAINT "PKKODEBRG" PRIMARY KEY ("KODEBRG") );

2. Pembuatan tabel Beli CREATE TABLE "BELI" (

"BONBELI" CHAR(6) NOT NULL, "TGL" DATE,

"KODESUPP" CHAR(6),

CONSTRAINT "PKBONBELI" PRIMARY KEY ("BONBELI") );

ALTER TABLE "BELI" ADD CONSTRAINT "FKKODESUPP" FOREIGN KEY ("KODESUPP") REFERENCES SUPPLIER ("KODESUPP");

3. Pembuatan tabel Beli Item CREATE TABLE "BELIITEM" (

"BONBELI" CHAR(6) NOT NULL,

"KODEBRG" CHAR(8) NOT NULL, "QTY" NUMERIC(9, 2),

"HRGBELI" NUMERIC(9, 2),

CONSTRAINT "PKBELIBRG" PRIMARY KEY ("BONBELI", "KODEBRG")


(11)

A-2 Universitas Kristen Maranatha );

4. Pembuatan tabel Jual CREATE TABLE "JUAL" (

"BONJUAL" CHAR(6) NOT NULL, "TGL" DATE,

"KODECUST" CHAR(6), "MEJA" CHAR(4),

"STATUS" CHAR(1),

CONSTRAINT "PKBONJUAL" PRIMARY KEY ("BONJUAL") );

ALTER TABLE "JUAL" ADD CONSTRAINT "FKKODECUST" FOREIGN KEY ("KODECUST") REFERENCES CUSTOMER ("KODECUST");

5. Pembuatan tabel Jual Item

CREATE TABLE "JUALITEM" (

"BONJUAL" CHAR(6) NOT NULL,

"KODEBRG" CHAR(8) NOT NULL, "QTY" NUMERIC(9, 2),

"HRGJUAL" NUMERIC(9, 2),

CONSTRAINT "PKBONBRG" PRIMARY KEY ("BONJUAL", "KODEBRG")

);

6. Pembuatan tabel Customer

CREATE TABLE "CUSTOMER" (

"KODECUST" CHAR(8) NOT NULL, "NAMACUST" CHAR(30),

"ALAMATCUST" CHAR(100), "TLP" CHAR(15),

"HP" CHAR(15),

CONSTRAINT "PKKODECUST" PRIMARY KEY ("KODECUST") );

7. Pembuatan tabel Supplier

CREATE TABLE "SUPPLIER" (


(12)

A-3 Universitas Kristen Maranatha "KODESUPP" CHAR(8) NOT NULL,

"NAMASUPP" CHAR(30), "ALAMATSUPP" CHAR(100), "TLP" CHAR(5),

"HP" CHAR(15),

CONSTRAINT "PKKODESUPP" PRIMARY KEY ("KODESUPP") );

Pembuatan Program:

a. Pembuatan program form Menu Awal unit UMenuAwal;

interface uses

Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, Menus, StdCtrls, XPMan;

type

TFrmMenuAwal = class(TForm) MainMenu1: TMainMenu; Menu1: TMenuItem; DaftarMenu1: TMenuItem; InputMakanan1: TMenuItem; Customer1: TMenuItem; Supplier1: TMenuItem; ransaksi1: TMenuItem; Pembelian1: TMenuItem; PenjualanResto1: TMenuItem; Laporan1: TMenuItem;

PembelianBarang1: TMenuItem; PenjualanResto2: TMenuItem; Keluar1: TMenuItem;

Label1: TLabel;

XPManifest1: TXPManifest;


(13)

A-4 Universitas Kristen Maranatha procedure InputMakanan1Click(Sender: TObject);

procedure Keluar1Click(Sender: TObject); procedure Supplier1Click(Sender: TObject); procedure Pembelian1Click(Sender: TObject); procedure Customer1Click(Sender: TObject);

procedure PembelianBarang1Click(Sender: TObject); procedure PenjualanResto1Click(Sender: TObject); procedure PenjualanResto2Click(Sender: TObject); private

{ Private declarations } public

{ Public declarations } end;

var

FrmMenuAwal: TFrmMenuAwal; implementation

Uses UModule, UDaftar, UInput, UCustomer, USupp, UBeliBarang, ULogin1, ULogin2,

ULogin4, ULogin3, ULogin5, ULogin6, ULogin7; {$R *.dfm}

procedure TFrmMenuAwal.DaftarMenu1Click(Sender: TObject); begin

FrmDaftarMenu.Show; end;

procedure TFrmMenuAwal.InputMakanan1Click(Sender: TObject); begin

Form7.Show; end;

procedure TFrmMenuAwal.Keluar1Click(Sender: TObject); begin

Application.terminate; end;


(14)

A-5 Universitas Kristen Maranatha procedure TFrmMenuAwal.Supplier1Click(Sender: TObject);

begin

Form2.Show; end;

procedure TFrmMenuAwal.Pembelian1Click(Sender: TObject); begin

Form3.Show; end;

procedure TFrmMenuAwal.Customer1Click(Sender: TObject); begin

Form1.Show; end;

procedure TFrmMenuAwal.PembelianBarang1Click(Sender: TObject); begin

Form4.show; end;

procedure TFrmMenuAwal.PenjualanResto1Click(Sender: TObject); begin

Form5.show; end;

procedure TFrmMenuAwal.PenjualanResto2Click(Sender: TObject); begin

Form6.show; end;

end.

b. Pembuatan program form Modul unit UModule;


(15)

A-6 Universitas Kristen Maranatha uses

SysUtils, Classes, DB, IBCustomDataSet, IBQuery, IBDatabase; type

TdmMakanan = class(TDataModule) TrMakanan: TIBTransaction; qsdata: TDataSource;

qsProses: TDataSource; DbMakanan: TIBDatabase; QData: TIBQuery;

QProses: TIBQuery; private

{ Private declarations } public

{ Public declarations } end;

var

dmMakanan: TdmMakanan; implementation

{$R *.dfm} end.

c. Pembuatan program form Daftar Menu unit UDaftar;

interface uses

Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, StdCtrls;

type

TFrmDaftarMenu = class(TForm) Label1: TLabel;


(16)

A-7 Universitas Kristen Maranatha Label2: TLabel;

Label3: TLabel; Label4: TLabel; Label5: TLabel; Label6: TLabel; EdMeja: TEdit; EdTS: TEdit; EdSS: TEdit; EdTBS: TEdit; EdS: TEdit; EdNT: TEdit; EdNG: TEdit; EdMG: TEdit; EdAG: TEdit; EdAB: TEdit; EdNP: TEdit; EdCC: TEdit; EdIFM: TEdit; EdKC: TEdit; EdCo: TEdit; EdSp: TEdit; EdF: TEdit; EdJS: TEdit; EdJA: TEdit; EdJM: TEdit; EdJSr: TEdit; EdETM: TEdit; EdETT: TEdit; BtSimpan: TButton; BtKeluar: TButton; Label7: TLabel; Label8: TLabel; Label9: TLabel; Label10: TLabel; Label11: TLabel; Label12: TLabel; Label13: TLabel;


(17)

A-8 Universitas Kristen Maranatha Label14: TLabel;

Label15: TLabel; Label16: TLabel; Label17: TLabel; Label18: TLabel; Label19: TLabel; Label20: TLabel; Label21: TLabel; Label22: TLabel; Label23: TLabel; Label24: TLabel; Label25: TLabel; Label26: TLabel; Label27: TLabel; Label28: TLabel; Button1: TButton;

procedure BtKeluarClick(Sender: TObject); procedure BtSimpanClick(Sender: TObject); procedure hitungbon();

procedure FormShow(Sender: TObject); procedure Button1Click(Sender: TObject);

// procedure EdMejaChange(Sender: TObject); // procedure FormShow(Sender: TObject); private

{ Private declarations } public

{ Public declarations } end;

var

FrmDaftarMenu: TFrmDaftarMenu; D, B , C : String;

implementation

Uses UModule, UJual; {$R *.dfm}


(18)

A-9 Universitas Kristen Maranatha procedure TFrmDaftarMenu.hitungbon;

var a: string;//,b begin

//Tampilkan BonJual (No Bon Jual) With dmMakanan.qData Do Begin

Close; Sql.Clear;

Sql.Add('Select BONJUAL, Meja, Status From JUAL'); Open;

//Jika Ternyata tidak ada (kosong/null) maka If (Fields[0].IsNull) {or (Fields[2].IsNull)} Then Begin

a := '00001'; End

Else

//Jika ada nilainya maka, tentukan nobon paling akhir Begin

With dmMakanan.qData Do Begin

Close; Sql.Clear;

Sql.Add('Select Max(BonJual) From JUAL'); Open;

//Ini adalah format agar diawali dengan 0000

a := FormatFloat('00000',StrToFloat(Fields[0].Value+1)); End;

End; End;

//Simpan nobon tersebut ke dalam tabel jual ke field Bonjual With dmMakanan.qProses Do

Begin Close; Sql.Clear;


(19)

A-10 Universitas Kristen Maranatha Sql.Add('Insert Into JUAL(BONJUAL,Tgl) Values(:bj, :tg)');

Prepare;

ParamByname('bj').AsString := a; ParamByName('tg').AsDate := now; ExecSql;

end;

dmMakanan.TrMakanan.Commit; end;

procedure TFrmDaftarMenu.BtKeluarClick(Sender: TObject); begin

Close; end;

procedure TFrmDaftarMenu.BtSimpanClick(Sender: TObject); var Stok : double ;

begin

dmMakanan.DbMakanan.Close; dmMakanan.TrMakanan.Active; hitungbon;

if EdTS.Text <> '0' Then Begin

With dmMakanan.qData Do Begin

Close; Sql.Clear;

Sql.Add('Select KodeBrg, HrgJual from Barang'); Sql.Add('where KodeBrg=:kb');

Prepare;

ParamByName('kb').AsString :='ME0001'; Open;

dmMakanan.qProses.Close; dmMakanan.QProses.SQL.Clear;


(20)

A-11 Universitas Kristen Maranatha dmMakanan.QProses.Sql.Add('Insert into JualItem(BonJual, KodeBrg, Qty, HrgJual) '+

'Values(:bj, :kb, :qy, :hg)'); dmMakanan.qProses.Prepare;

dmMakanan.qProses.ParamByName('bj').ASString := B;

dmMakanan.qProses.ParamByName('kb').AsString := Fields[0].ASString; dmMakanan.qProses.ParamByName('qy').AsFloat :=

StrToFloat(EdTS.Text);

dmMakanan.qProses.ParamByName('hg').AsFloat := Fields[1].ASFloat; dmMakanan.qProses.ExecSql;

End; End;

if EdSS.Text <> '0' Then Begin

With dmMakanan.qData Do Begin

Close; Sql.Clear;

Sql.Add('Select KodeBrg, HrgJual from Barang'); Sql.Add('where KodeBrg=:kb');

Prepare;

ParamByName('kb').AsString :='ME0002'; Open;

dmMakanan.qProses.Close; dmMakanan.QProses.SQL.Clear;

dmMakanan.QProses.Sql.Add('Insert into JualItem(BonJual, KodeBrg, Qty, HrgJual) '+

'Values(:bj, :kb, :qy, :hg)'); dmMakanan.qProses.Prepare;

dmMakanan.qProses.ParamByName('bj').ASString := B;

dmMakanan.qProses.ParamByName('kb').AsString := Fields[0].ASString; dmMakanan.qProses.ParamByName('qy').AsFloat :=

StrToFloat(EdSS.Text);

dmMakanan.qProses.ParamByName('hg').AsFloat := Fields[1].ASFloat; dmMakanan.qProses.ExecSql;

End; End ;


(21)

A-12 Universitas Kristen Maranatha if EdTBS.Text <> '0' Then

Begin

With dmMakanan.qData Do Begin

Close; Sql.Clear;

Sql.Add('Select KodeBrg, HrgJual from Barang'); Sql.Add('where KodeBrg=:kb');

Prepare;

ParamByName('kb').AsString :='ME0003'; Open;

dmMakanan.qProses.Close; dmMakanan.QProses.SQL.Clear;

dmMakanan.QProses.Sql.Add('Insert into JualItem(BonJual, KodeBrg, Qty, HrgJual) '+

'Values(:bj, :kb, :qy, :hg)'); dmMakanan.qProses.Prepare;

dmMakanan.qProses.ParamByName('bj').ASString := B;

dmMakanan.qProses.ParamByName('kb').AsString := Fields[0].ASString; dmMakanan.qProses.ParamByName('qy').AsFloat :=

StrToFloat(EdTBS.Text);

dmMakanan.qProses.ParamByName('hg').AsFloat := Fields[1].ASFloat; dmMakanan.qProses.ExecSql;

End ; End ;

if EdS.Text <> '0' Then Begin

With dmMakanan.qData Do Begin

Close; Sql.Clear;

Sql.Add('Select KodeBrg, HrgJual from Barang'); Sql.Add('where KodeBrg=:kb');

Prepare;

ParamByName('kb').AsString :='ME0004'; Open;


(22)

A-13 Universitas Kristen Maranatha dmMakanan.QProses.SQL.Clear;

dmMakanan.QProses.Sql.Add('Insert into JualItem(BonJual, KodeBrg, Qty, HrgJual) '+

'Values(:bj, :kb, :qy, :hg)'); dmMakanan.qProses.Prepare;

dmMakanan.qProses.ParamByName('bj').ASString := B;

dmMakanan.qProses.ParamByName('kb').AsString := Fields[0].ASString; dmMakanan.qProses.ParamByName('qy').AsFloat := StrToFloat(EdS.Text); dmMakanan.qProses.ParamByName('hg').AsFloat := Fields[1].ASFloat; dmMakanan.qProses.ExecSql;

End ; End ;

if EdNT.Text <> '0' Then Begin

With dmMakanan.qData Do Begin

Close; Sql.Clear;

Sql.Add('Select KodeBrg, HrgJual from Barang'); Sql.Add('where KodeBrg=:kb');

Prepare;

ParamByName('kb').AsString :='MI0001'; Open;

dmMakanan.qProses.Close; dmMakanan.QProses.SQL.Clear;

dmMakanan.QProses.Sql.Add('Insert into JualItem(BonJual, KodeBrg, Qty, HrgJual) '+

'Values(:bj, :kb, :qy, :hg)'); dmMakanan.qProses.Prepare;

dmMakanan.qProses.ParamByName('bj').ASString := B;

dmMakanan.qProses.ParamByName('kb').AsString := Fields[0].ASString; dmMakanan.qProses.ParamByName('qy').AsFloat :=

StrToFloat(EdNT.Text);

dmMakanan.qProses.ParamByName('hg').AsFloat := Fields[1].ASFloat; dmMakanan.qProses.ExecSql;

End; End;


(23)

A-14 Universitas Kristen Maranatha if EdNG.Text <> '0' Then

Begin

With dmMakanan.qData Do Begin

Close; Sql.Clear;

Sql.Add('Select KodeBrg, HrgJual from Barang'); Sql.Add('where KodeBrg=:kb');

Prepare;

ParamByName('kb').AsString :='MI0002'; Open;

dmMakanan.qProses.Close; dmMakanan.QProses.SQL.Clear;

dmMakanan.QProses.Sql.Add('Insert into JualItem(BonJual, KodeBrg, Qty, HrgJual) '+

'Values(:bj, :kb, :qy, :hg)'); dmMakanan.qProses.Prepare;

dmMakanan.qProses.ParamByName('bj').ASString := B;

dmMakanan.qProses.ParamByName('kb').AsString := Fields[0].ASString; dmMakanan.qProses.ParamByName('qy').AsFloat :=

StrToFloat(EdNG.Text);

dmMakanan.qProses.ParamByName('hg').AsFloat := Fields[1].ASFloat; dmMakanan.qProses.ExecSql;

End ; End ;

if EdMG.Text <> '0' Then Begin

With dmMakanan.qData Do Begin

Close; Sql.Clear;

Sql.Add('Select KodeBrg, HrgJual from Barang'); Sql.Add('where KodeBrg=:kb');

Prepare;

ParamByName('kb').AsString :='MI0003'; Open;


(24)

A-15 Universitas Kristen Maranatha dmMakanan.QProses.SQL.Clear;

dmMakanan.QProses.Sql.Add('Insert into JualItem(BonJual, KodeBrg, Qty, HrgJual) '+

'Values(:bj, :kb, :qy, :hg)'); dmMakanan.qProses.Prepare;

dmMakanan.qProses.ParamByName('bj').ASString := B;

dmMakanan.qProses.ParamByName('kb').AsString := Fields[0].ASString; dmMakanan.qProses.ParamByName('qy').AsFloat :=

StrToFloat(EdMG.Text);

dmMakanan.qProses.ParamByName('hg').AsFloat := Fields[1].ASFloat; dmMakanan.qProses.ExecSql;

End ; End ;

if EdAG.Text <> '0' Then Begin

With dmMakanan.qData Do Begin

Close; Sql.Clear;

Sql.Add('Select KodeBrg, HrgJual from Barang'); Sql.Add('where KodeBrg=:kb');

Prepare;

ParamByName('kb').AsString :='MI0004'; Open;

dmMakanan.qProses.Close; dmMakanan.QProses.SQL.Clear;

dmMakanan.QProses.Sql.Add('Insert into JualItem(BonJual, KodeBrg, Qty, HrgJual) '+

'Values(:bj, :kb, :qy, :hg)'); dmMakanan.qProses.Prepare;

dmMakanan.qProses.ParamByName('bj').ASString := B;

dmMakanan.qProses.ParamByName('kb').AsString := Fields[0].ASString; dmMakanan.qProses.ParamByName('qy').AsFloat :=

StrToFloat(EdAG.Text);

dmMakanan.qProses.ParamByName('hg').AsFloat := Fields[1].ASFloat; dmMakanan.qProses.ExecSql;


(25)

A-16 Universitas Kristen Maranatha End ;

if EdAB.Text <> '0' Then Begin

With dmMakanan.qData Do Begin

Close; Sql.Clear;

Sql.Add('Select KodeBrg, HrgJual from Barang'); Sql.Add('where KodeBrg=:kb');

Prepare;

ParamByName('kb').AsString :='MI0005'; Open;

dmMakanan.qProses.Close; dmMakanan.QProses.SQL.Clear;

dmMakanan.QProses.Sql.Add('Insert into JualItem(BonJual, KodeBrg, Qty, HrgJual) '+

'Values(:bj, :kb, :qy, :hg)'); dmMakanan.qProses.Prepare;

dmMakanan.qProses.ParamByName('bj').ASString := B;

dmMakanan.qProses.ParamByName('kb').AsString := Fields[0].ASString; dmMakanan.qProses.ParamByName('qy').AsFloat :=

StrToFloat(EdAB.Text);

dmMakanan.qProses.ParamByName('hg').AsFloat := Fields[1].ASFloat; dmMakanan.qProses.ExecSql;

End; End;

if EdNP.Text <> '0' Then Begin

With dmMakanan.qData Do Begin

Close; Sql.Clear;

Sql.Add('Select KodeBrg, HrgJual from Barang'); Sql.Add('where KodeBrg=:kb');

Prepare;

ParamByName('kb').AsString :='MI0006'; Open;


(26)

A-17 Universitas Kristen Maranatha dmMakanan.qProses.Close;

dmMakanan.QProses.SQL.Clear;

dmMakanan.QProses.Sql.Add('Insert into JualItem(BonJual, KodeBrg, Qty, HrgJual) '+

'Values(:bj, :kb, :qy, :hg)'); dmMakanan.qProses.Prepare;

dmMakanan.qProses.ParamByName('bj').ASString := B;

dmMakanan.qProses.ParamByName('kb').AsString := Fields[0].ASString; dmMakanan.qProses.ParamByName('qy').AsFloat :=

StrToFloat(EdNP.Text);

dmMakanan.qProses.ParamByName('hg').AsFloat := Fields[1].ASFloat; dmMakanan.qProses.ExecSql;

End ; End ;

if EdCC.Text <> '0' Then Begin

With dmMakanan.qData Do Begin

Close; Sql.Clear;

Sql.Add('Select KodeBrg, HrgJual from Barang'); Sql.Add('where KodeBrg=:kb');

Prepare;

ParamByName('kb').AsString :='MC0001'; Open;

dmMakanan.qProses.Close; dmMakanan.QProses.SQL.Clear;

dmMakanan.QProses.Sql.Add('Insert into JualItem(BonJual, KodeBrg, Qty, HrgJual) '+

'Values(:bj, :kb, :qy, :hg)'); dmMakanan.qProses.Prepare;

dmMakanan.qProses.ParamByName('bj').ASString := B;

dmMakanan.qProses.ParamByName('kb').AsString := Fields[0].ASString; dmMakanan.qProses.ParamByName('qy').AsFloat :=

StrToFloat(EdCC.Text);

dmMakanan.qProses.ParamByName('hg').AsFloat := Fields[1].ASFloat; dmMakanan.qProses.ExecSql;


(27)

A-18 Universitas Kristen Maranatha End ;

End;

if EdIFM.Text <> '0' Then Begin

With dmMakanan.qData Do Begin

Close; Sql.Clear;

Sql.Add('Select KodeBrg, HrgJual from Barang'); Sql.Add('where KodeBrg=:kb');

Prepare;

ParamByName('kb').AsString :='MC0002'; Open;

dmMakanan.qProses.Close; dmMakanan.QProses.SQL.Clear;

dmMakanan.QProses.Sql.Add('Insert into JualItem(BonJual, KodeBrg, Qty, HrgJual) '+

'Values(:bj, :kb, :qy, :hg)'); dmMakanan.qProses.Prepare;

dmMakanan.qProses.ParamByName('bj').ASString := B;

dmMakanan.qProses.ParamByName('kb').AsString := Fields[0].ASString; dmMakanan.qProses.ParamByName('qy').AsFloat :=

StrToFloat(EdIFM.Text);

dmMakanan.qProses.ParamByName('hg').AsFloat := Fields[1].ASFloat; dmMakanan.qProses.ExecSql;

End; End;

if EdKC.Text <> '0' Then Begin

With dmMakanan.qData Do Begin

Close; Sql.Clear;

Sql.Add('Select KodeBrg, HrgJual from Barang'); Sql.Add('where KodeBrg=:kb');

Prepare;


(28)

A-19 Universitas Kristen Maranatha Open;

dmMakanan.qProses.Close; dmMakanan.QProses.SQL.Clear;

dmMakanan.QProses.Sql.Add('Insert into JualItem(BonJual, KodeBrg, Qty, HrgJual) '+

'Values(:bj, :kb, :qy, :hg)'); dmMakanan.qProses.Prepare;

dmMakanan.qProses.ParamByName('bj').ASString := B;

dmMakanan.qProses.ParamByName('kb').AsString := Fields[0].ASString; dmMakanan.qProses.ParamByName('qy').AsFloat :=

StrToFloat(EdKC.Text);

dmMakanan.qProses.ParamByName('hg').AsFloat := Fields[1].ASFloat; dmMakanan.qProses.ExecSql;

End; End ;

if EdCo.Text <> '0' Then Begin

With dmMakanan.qData Do Begin

Close; Sql.Clear;

Sql.Add('Select KodeBrg, HrgJual from Barang'); Sql.Add('where KodeBrg=:kb');

Prepare;

ParamByName('kb').AsString :='Mn0001'; Open;

dmMakanan.qProses.Close; dmMakanan.QProses.SQL.Clear;

dmMakanan.QProses.Sql.Add('Insert into JualItem(BonJual, KodeBrg, Qty, HrgJual) '+

'Values(:bj, :kb, :qy, :hg)'); dmMakanan.qProses.Prepare;

dmMakanan.qProses.ParamByName('bj').ASString := B;

dmMakanan.qProses.ParamByName('kb').AsString := Fields[0].ASString; dmMakanan.qProses.ParamByName('qy').AsFloat :=

StrToFloat(EdCo.Text);


(29)

A-20 Universitas Kristen Maranatha dmMakanan.qProses.ExecSql;

End; End;

if EdSp.Text <> '0' Then Begin

With dmMakanan.qData Do Begin

Close; Sql.Clear;

Sql.Add('Select KodeBrg, HrgJual from Barang'); Sql.Add('where KodeBrg=:kb');

Prepare;

ParamByName('kb').AsString :='Mn0002'; Open;

dmMakanan.qProses.Close; dmMakanan.QProses.SQL.Clear;

dmMakanan.QProses.Sql.Add('Insert into JualItem(BonJual, KodeBrg, Qty, HrgJual) '+

'Values(:bj, :kb, :qy, :hg)'); dmMakanan.qProses.Prepare;

dmMakanan.qProses.ParamByName('bj').ASString := B;

dmMakanan.qProses.ParamByName('kb').AsString := Fields[0].ASString; dmMakanan.qProses.ParamByName('qy').AsFloat :=

StrToFloat(EdSp.Text);

dmMakanan.qProses.ParamByName('hg').AsFloat := Fields[1].ASFloat; dmMakanan.qProses.ExecSql;

End; End;

if EdF.Text <> '0' Then Begin

With dmMakanan.qData Do Begin

Close; Sql.Clear;

Sql.Add('Select KodeBrg, HrgJual from Barang'); Sql.Add('where KodeBrg=:kb');


(30)

A-21 Universitas Kristen Maranatha ParamByName('kb').AsString :='Mn0003';

Open;

dmMakanan.qProses.Close; dmMakanan.QProses.SQL.Clear;

dmMakanan.QProses.Sql.Add('Insert into JualItem(BonJual, KodeBrg, Qty, HrgJual) '+

'Values(:bj, :kb, :qy, :hg)'); dmMakanan.qProses.Prepare;

dmMakanan.qProses.ParamByName('bj').ASString := B;

dmMakanan.qProses.ParamByName('kb').AsString := Fields[0].ASString; dmMakanan.qProses.ParamByName('qy').AsFloat := StrToFloat(EdF.Text); dmMakanan.qProses.ParamByName('hg').AsFloat := Fields[1].ASFloat; dmMakanan.qProses.ExecSql;

End; End ;

if EdJS.Text <> '0' Then Begin

With dmMakanan.qData Do Begin

Close; Sql.Clear;

Sql.Add('Select KodeBrg, HrgJual from Barang'); Sql.Add('where KodeBrg=:kb');

Prepare;

ParamByName('kb').AsString :='Mn0004'; Open;

dmMakanan.qProses.Close; dmMakanan.QProses.SQL.Clear;

dmMakanan.QProses.Sql.Add('Insert into JualItem(BonJual, KodeBrg, Qty, HrgJual) '+

'Values(:bj, :kb, :qy, :hg)'); dmMakanan.qProses.Prepare;

dmMakanan.qProses.ParamByName('bj').ASString := B;

dmMakanan.qProses.ParamByName('kb').AsString := Fields[0].ASString; dmMakanan.qProses.ParamByName('qy').AsFloat :=

StrToFloat(EdJS.Text);


(31)

A-22 Universitas Kristen Maranatha dmMakanan.qProses.ExecSql;

End; End ;

if EdJA.Text <> '0' Then Begin

With dmMakanan.qData Do Begin

Close; Sql.Clear;

Sql.Add('Select KodeBrg, HrgJual from Barang'); Sql.Add('where KodeBrg=:kb');

Prepare;

ParamByName('kb').AsString :='Mn0005'; Open;

dmMakanan.qProses.Close; dmMakanan.QProses.SQL.Clear;

dmMakanan.QProses.Sql.Add('Insert into JualItem(BonJual, KodeBrg, Qty, HrgJual) '+

'Values(:bj, :kb, :qy, :hg)'); dmMakanan.qProses.Prepare;

dmMakanan.qProses.ParamByName('bj').ASString := B;

dmMakanan.qProses.ParamByName('kb').AsString := Fields[0].ASString; dmMakanan.qProses.ParamByName('qy').AsFloat :=

StrToFloat(EdJA.Text);

dmMakanan.qProses.ParamByName('hg').AsFloat := Fields[1].ASFloat; dmMakanan.qProses.ExecSql;

End; End ;

if EdJM.Text <> '0' Then Begin

With dmMakanan.qData Do Begin

Close; Sql.Clear;

Sql.Add('Select KodeBrg, HrgJual from Barang'); Sql.Add('where KodeBrg=:kb');


(32)

A-23 Universitas Kristen Maranatha ParamByName('kb').AsString :='Mn0006';

Open;

dmMakanan.qProses.Close; dmMakanan.QProses.SQL.Clear;

dmMakanan.QProses.Sql.Add('Insert into JualItem(BonJual, KodeBrg, Qty, HrgJual) '+

'Values(:bj, :kb, :qy, :hg)'); dmMakanan.qProses.Prepare;

dmMakanan.qProses.ParamByName('bj').ASString := B;

dmMakanan.qProses.ParamByName('kb').AsString := Fields[0].ASString; dmMakanan.qProses.ParamByName('qy').AsFloat :=

StrToFloat(EdJM.Text);

dmMakanan.qProses.ParamByName('hg').AsFloat := Fields[1].ASFloat; dmMakanan.qProses.ExecSql;

End; End;

if EdJSr.Text <> '0' Then Begin

With dmMakanan.qData Do Begin

Close; Sql.Clear;

Sql.Add('Select KodeBrg, HrgJual from Barang'); Sql.Add('where KodeBrg=:kb');

Prepare;

ParamByName('kb').AsString :='Mn0007'; Open;

dmMakanan.qProses.Close; dmMakanan.QProses.SQL.Clear;

dmMakanan.QProses.Sql.Add('Insert into JualItem(BonJual, KodeBrg, Qty, HrgJual) '+

'Values(:bj, :kb, :qy, :hg)'); dmMakanan.qProses.Prepare;

dmMakanan.qProses.ParamByName('bj').ASString := B;

dmMakanan.qProses.ParamByName('kb').AsString := Fields[0].ASString; dmMakanan.qProses.ParamByName('qy').AsFloat :=


(33)

A-24 Universitas Kristen Maranatha dmMakanan.qProses.ParamByName('hg').AsFloat := Fields[1].ASFloat; dmMakanan.qProses.ExecSql;

End; End;

if EdETM.Text <> '0' Then Begin

With dmMakanan.qData Do Begin

Close; Sql.Clear;

Sql.Add('Select KodeBrg, HrgJual from Barang'); Sql.Add('where KodeBrg=:kb');

Prepare;

ParamByName('kb').AsString :='Mn0008'; Open;

dmMakanan.qProses.Close; dmMakanan.QProses.SQL.Clear;

dmMakanan.QProses.Sql.Add('Insert into JualItem(BonJual, KodeBrg, Qty, HrgJual) '+

'Values(:bj, :kb, :qy, :hg)'); dmMakanan.qProses.Prepare;

dmMakanan.qProses.ParamByName('bj').ASString := B;

dmMakanan.qProses.ParamByName('kb').AsString := Fields[0].ASString; dmMakanan.qProses.ParamByName('qy').AsFloat :=

StrToFloat(EdETM.Text);

dmMakanan.qProses.ParamByName('hg').AsFloat := Fields[1].ASFloat; dmMakanan.qProses.ExecSql;

End; End;

if EdETT.Text <> '0' Then Begin

With dmMakanan.qData Do Begin

Close; Sql.Clear;

Sql.Add('Select KodeBrg, HrgJual from Barang'); Sql.Add('where KodeBrg=:kb');


(34)

A-25 Universitas Kristen Maranatha Prepare;

ParamByName('kb').AsString :='Mn0009'; Open;

dmMakanan.qProses.Close; dmMakanan.QProses.SQL.Clear;

dmMakanan.QProses.Sql.Add('Insert into JualItem(BonJual, KodeBrg, Qty, HrgJual) '+

'Values(:bj, :kb, :qy, :hg)'); dmMakanan.qProses.Prepare;

dmMakanan.qProses.ParamByName('bj').ASString := B;

dmMakanan.qProses.ParamByName('kb').AsString := Fields[0].ASString; dmMakanan.qProses.ParamByName('qy').AsFloat :=

StrToFloat(EdETT.Text);

dmMakanan.qProses.ParamByName('hg').AsFloat := Fields[1].ASFloat; dmMakanan.qProses.ExecSql;

End; End;

dmMakanan.TrMakanan.Commit; button1.click;

FrmJual.show; End;

procedure TFrmDaftarMenu.FormShow(Sender: TObject); begin

with dmMakanan.QProses Do Begin

Close; sql.Clear;

Sql.Add('Select Max(BonJual) From Jual'); Open;

B := Fields[0].AsString; end;


(35)

A-26 Universitas Kristen Maranatha procedure TFrmDaftarMenu.Button1Click(Sender: TObject);

var stok: double; begin

dmMakanan.DbMakanan.Close; dmMakanan.TrMakanan.Active; if EdTS.text <> '0' Then

//Untuk mengurangi jumlah stok barang begin

With dmMakanan.qData Do Begin

Close; Sql.Clear;

Sql.Add('Select Stok from Barang'); Sql.Add('Where KodeBrg =:kb'); Prepare;

Parambyname('kb').AsString := 'ME0001'; Open;

Stok := Fields[0].AsFloat;

//update data stok barang dengan cara membaca nilai Stok dari //query diatasnya lalu kurangi dengan qty penjualan

//stok yang di update harus sesuai dengan kode barang nya. dmMakanan.qproses.Close;

dmMakanan.qproses.SQL.Clear;

dmMakanan.qproses.SQL.Add('Update Barang Set Stok=:st'); dmMakanan.qproses.SQL.Add('Where KodeBrg =:kb'); dmMakanan.qproses.Prepare;

dmMakanan.qproses.ParamByname('kb').AsString := 'ME0001'; dmMakanan.qproses.ParamByName('st').AsFloat := Stok-StrToFloat(EdTs.text);

dmMakanan.qproses.ExecSql; end;


(36)

A-27 Universitas Kristen Maranatha if EdSS.text <> '0' Then

//Untuk mengurangi jumlah stok barang begin

With dmMakanan.qData Do Begin

Close; Sql.Clear;

Sql.Add('Select Stok from Barang'); Sql.Add('Where KodeBrg =:kb'); Prepare;

Parambyname('kb').AsString := 'ME0002'; Open;

Stok := Fields[0].AsFloat;

//update data stok barang dengan cara membaca nilai Stok dari //query diatasnya lalu kurangi dengan qty penjualan

//stok yang di update harus sesuai dengan kode barang nya. dmMakanan.qproses.Close;

dmMakanan.qproses.SQL.Clear;

dmMakanan.qproses.SQL.Add('Update Barang Set Stok=:st'); dmMakanan.qproses.SQL.Add('Where KodeBrg =:kb'); dmMakanan.qproses.Prepare;

dmMakanan.qproses.ParamByname('kb').AsString := 'ME0002'; dmMakanan.qproses.ParamByName('st').AsFloat := Stok-StrToFloat(Edss.text);

dmMakanan.qproses.ExecSql; end;

end;

if EdTBS.text <> '0' Then

//Untuk mengurangi jumlah stok barang begin

With dmMakanan.qData Do Begin

Close; Sql.Clear;


(37)

A-28 Universitas Kristen Maranatha Sql.Add('Select Stok from Barang');

Sql.Add('Where KodeBrg =:kb'); Prepare;

Parambyname('kb').AsString := 'ME0003'; Open;

Stok := Fields[0].AsFloat;

//update data stok barang dengan cara membaca nilai Stok dari //query diatasnya lalu kurangi dengan qty penjualan

//stok yang di update harus sesuai dengan kode barang nya. dmMakanan.qproses.Close;

dmMakanan.qproses.SQL.Clear;

dmMakanan.qproses.SQL.Add('Update Barang Set Stok=:st'); dmMakanan.qproses.SQL.Add('Where KodeBrg =:kb'); dmMakanan.qproses.Prepare;

dmMakanan.qproses.ParamByname('kb').AsString := 'ME0003'; dmMakanan.qproses.ParamByName('st').AsFloat := Stok-StrToFloat(Edtbs.text);

dmMakanan.qproses.ExecSql; end;

end;

if EdS.text <> '0' Then

//Untuk mengurangi jumlah stok barang begin

With dmMakanan.qData Do Begin

Close; Sql.Clear;

Sql.Add('Select Stok from Barang'); Sql.Add('Where KodeBrg =:kb'); Prepare;

Parambyname('kb').AsString := 'ME0004'; Open;

Stok := Fields[0].AsFloat;


(38)

A-29 Universitas Kristen Maranatha //query diatasnya lalu kurangi dengan qty penjualan

//stok yang di update harus sesuai dengan kode barang nya. dmMakanan.qproses.Close;

dmMakanan.qproses.SQL.Clear;

dmMakanan.qproses.SQL.Add('Update Barang Set Stok=:st'); dmMakanan.qproses.SQL.Add('Where KodeBrg =:kb'); dmMakanan.qproses.Prepare;

dmMakanan.qproses.ParamByname('kb').AsString := 'ME0004'; dmMakanan.qproses.ParamByName('st').AsFloat := Stok-StrToFloat(Eds.text);

dmMakanan.qproses.ExecSql; end;

end;

if EdNT.text <> '0' Then

//Untuk mengurangi jumlah stok barang begin

With dmMakanan.qData Do Begin

Close; Sql.Clear;

Sql.Add('Select Stok from Barang'); Sql.Add('Where KodeBrg =:kb'); Prepare;

Parambyname('kb').AsString := 'MI0001'; Open;

Stok := Fields[0].AsFloat;

//update data stok barang dengan cara membaca nilai Stok dari //query diatasnya lalu kurangi dengan qty penjualan

//stok yang di update harus sesuai dengan kode barang nya. dmMakanan.qproses.Close;

dmMakanan.qproses.SQL.Clear;

dmMakanan.qproses.SQL.Add('Update Barang Set Stok=:st'); dmMakanan.qproses.SQL.Add('Where KodeBrg =:kb'); dmMakanan.qproses.Prepare;


(39)

A-30 Universitas Kristen Maranatha dmMakanan.qproses.ParamByName('st').AsFloat :=

Stok-StrToFloat(EdNT.text);

dmMakanan.qproses.ExecSql; end;

end;

if EdNG.text <> '0' Then

//Untuk mengurangi jumlah stok barang begin

With dmMakanan.qData Do Begin

Close; Sql.Clear;

Sql.Add('Select Stok from Barang'); Sql.Add('Where KodeBrg =:kb'); Prepare;

Parambyname('kb').AsString := 'MI0002'; Open;

Stok := Fields[0].AsFloat;

//update data stok barang dengan cara membaca nilai Stok dari //query diatasnya lalu kurangi dengan qty penjualan

//stok yang di update harus sesuai dengan kode barang nya. dmMakanan.qproses.Close;

dmMakanan.qproses.SQL.Clear;

dmMakanan.qproses.SQL.Add('Update Barang Set Stok=:st'); dmMakanan.qproses.SQL.Add('Where KodeBrg =:kb'); dmMakanan.qproses.Prepare;

dmMakanan.qproses.ParamByname('kb').AsString := 'MI0002'; dmMakanan.qproses.ParamByName('st').AsFloat := Stok-StrToFloat(EdNG.text);

dmMakanan.qproses.ExecSql; end;

end;

if EdMG.text <> '0' Then

//Untuk mengurangi jumlah stok barang begin


(40)

A-31 Universitas Kristen Maranatha With dmMakanan.qData Do

Begin Close; Sql.Clear;

Sql.Add('Select Stok from Barang'); Sql.Add('Where KodeBrg =:kb'); Prepare;

Parambyname('kb').AsString := 'MI0003'; Open;

Stok := Fields[0].AsFloat;

//update data stok barang dengan cara membaca nilai Stok dari //query diatasnya lalu kurangi dengan qty penjualan

//stok yang di update harus sesuai dengan kode barang nya. dmMakanan.qproses.Close;

dmMakanan.qproses.SQL.Clear;

dmMakanan.qproses.SQL.Add('Update Barang Set Stok=:st'); dmMakanan.qproses.SQL.Add('Where KodeBrg =:kb'); dmMakanan.qproses.Prepare;

dmMakanan.qproses.ParamByname('kb').AsString := 'MI0003'; dmMakanan.qproses.ParamByName('st').AsFloat := Stok-StrToFloat(EdMG.text);

dmMakanan.qproses.ExecSql; end;

end;

if EdAG.text <> '0' Then

//Untuk mengurangi jumlah stok barang begin

With dmMakanan.qData Do Begin

Close; Sql.Clear;

Sql.Add('Select Stok from Barang'); Sql.Add('Where KodeBrg =:kb'); Prepare;


(41)

A-32 Universitas Kristen Maranatha Parambyname('kb').AsString := 'MI0004';

Open;

Stok := Fields[0].AsFloat;

//update data stok barang dengan cara membaca nilai Stok dari //query diatasnya lalu kurangi dengan qty penjualan

//stok yang di update harus sesuai dengan kode barang nya. dmMakanan.qproses.Close;

dmMakanan.qproses.SQL.Clear;

dmMakanan.qproses.SQL.Add('Update Barang Set Stok=:st'); dmMakanan.qproses.SQL.Add('Where KodeBrg =:kb'); dmMakanan.qproses.Prepare;

dmMakanan.qproses.ParamByname('kb').AsString := 'MI0004'; dmMakanan.qproses.ParamByName('st').AsFloat := Stok-StrToFloat(EdAG.text);

dmMakanan.qproses.ExecSql; end;

end;

if EdAB.text <> '0' Then

//Untuk mengurangi jumlah stok barang begin

With dmMakanan.qData Do Begin

Close; Sql.Clear;

Sql.Add('Select Stok from Barang'); Sql.Add('Where KodeBrg =:kb'); Prepare;

Parambyname('kb').AsString := 'MI0005'; Open;

Stok := Fields[0].AsFloat;

//update data stok barang dengan cara membaca nilai Stok dari //query diatasnya lalu kurangi dengan qty penjualan

//stok yang di update harus sesuai dengan kode barang nya. dmMakanan.qproses.Close;


(42)

A-33 Universitas Kristen Maranatha dmMakanan.qproses.SQL.Clear;

dmMakanan.qproses.SQL.Add('Update Barang Set Stok=:st'); dmMakanan.qproses.SQL.Add('Where KodeBrg =:kb'); dmMakanan.qproses.Prepare;

dmMakanan.qproses.ParamByname('kb').AsString := 'MI0005'; dmMakanan.qproses.ParamByName('st').AsFloat := Stok-StrToFloat(EdAB.text);

dmMakanan.qproses.ExecSql; end;

end;

if EdNP.text <> '0' Then

//Untuk mengurangi jumlah stok barang begin

With dmMakanan.qData Do Begin

Close; Sql.Clear;

Sql.Add('Select Stok from Barang'); Sql.Add('Where KodeBrg =:kb'); Prepare;

Parambyname('kb').AsString := 'MI0006'; Open;

Stok := Fields[0].AsFloat;

//update data stok barang dengan cara membaca nilai Stok dari //query diatasnya lalu kurangi dengan qty penjualan

//stok yang di update harus sesuai dengan kode barang nya. dmMakanan.qproses.Close;

dmMakanan.qproses.SQL.Clear;

dmMakanan.qproses.SQL.Add('Update Barang Set Stok=:st'); dmMakanan.qproses.SQL.Add('Where KodeBrg =:kb'); dmMakanan.qproses.Prepare;

dmMakanan.qproses.ParamByname('kb').AsString := 'MI0006'; dmMakanan.qproses.ParamByName('st').AsFloat := Stok-StrToFloat(EdNP.text);


(43)

A-34 Universitas Kristen Maranatha end;

end;

if EdCC.text <> '0' Then

//Untuk mengurangi jumlah stok barang begin

With dmMakanan.qData Do Begin

Close; Sql.Clear;

Sql.Add('Select Stok from Barang'); Sql.Add('Where KodeBrg =:kb'); Prepare;

Parambyname('kb').AsString := 'MC0001'; Open;

Stok := Fields[0].AsFloat;

//update data stok barang dengan cara membaca nilai Stok dari //query diatasnya lalu kurangi dengan qty penjualan

//stok yang di update harus sesuai dengan kode barang nya. dmMakanan.qproses.Close;

dmMakanan.qproses.SQL.Clear;

dmMakanan.qproses.SQL.Add('Update Barang Set Stok=:st'); dmMakanan.qproses.SQL.Add('Where KodeBrg =:kb'); dmMakanan.qproses.Prepare;

dmMakanan.qproses.ParamByname('kb').AsString := 'MC0001'; dmMakanan.qproses.ParamByName('st').AsFloat := Stok-StrToFloat(EdCC.text);

dmMakanan.qproses.ExecSql; end;

end;

if EdIFM.text <> '0' Then

//Untuk mengurangi jumlah stok barang begin

With dmMakanan.qData Do Begin


(44)

A-35 Universitas Kristen Maranatha Close;

Sql.Clear;

Sql.Add('Select Stok from Barang'); Sql.Add('Where KodeBrg =:kb'); Prepare;

Parambyname('kb').AsString := 'MC0002'; Open;

Stok := Fields[0].AsFloat;

//update data stok barang dengan cara membaca nilai Stok dari //query diatasnya lalu kurangi dengan qty penjualan

//stok yang di update harus sesuai dengan kode barang nya. dmMakanan.qproses.Close;

dmMakanan.qproses.SQL.Clear;

dmMakanan.qproses.SQL.Add('Update Barang Set Stok=:st'); dmMakanan.qproses.SQL.Add('Where KodeBrg =:kb'); dmMakanan.qproses.Prepare;

dmMakanan.qproses.ParamByname('kb').AsString := 'MC0002'; dmMakanan.qproses.ParamByName('st').AsFloat := Stok-StrToFloat(EdIFM.text);

dmMakanan.qproses.ExecSql; end;

end;

if EdKC.text <> '0' Then

//Untuk mengurangi jumlah stok barang begin

With dmMakanan.qData Do Begin

Close; Sql.Clear;

Sql.Add('Select Stok from Barang'); Sql.Add('Where KodeBrg =:kb'); Prepare;

Parambyname('kb').AsString := 'MC0003'; Open;


(45)

A-36 Universitas Kristen Maranatha //update data stok barang dengan cara membaca nilai Stok dari

//query diatasnya lalu kurangi dengan qty penjualan

//stok yang di update harus sesuai dengan kode barang nya. dmMakanan.qproses.Close;

dmMakanan.qproses.SQL.Clear;

dmMakanan.qproses.SQL.Add('Update Barang Set Stok=:st'); dmMakanan.qproses.SQL.Add('Where KodeBrg =:kb'); dmMakanan.qproses.Prepare;

dmMakanan.qproses.ParamByname('kb').AsString := 'MC0003'; dmMakanan.qproses.ParamByName('st').AsFloat := Stok-StrToFloat(EdKC.text);

dmMakanan.qproses.ExecSql; end;

end;

if EdCo.text <> '0' Then

//Untuk mengurangi jumlah stok barang begin

With dmMakanan.qData Do Begin

Close; Sql.Clear;

Sql.Add('Select Stok from Barang'); Sql.Add('Where KodeBrg =:kb'); Prepare;

Parambyname('kb').AsString := 'Mn0001'; Open;

Stok := Fields[0].AsFloat;

//update data stok barang dengan cara membaca nilai Stok dari //query diatasnya lalu kurangi dengan qty penjualan

//stok yang di update harus sesuai dengan kode barang nya. dmMakanan.qproses.Close;

dmMakanan.qproses.SQL.Clear;

dmMakanan.qproses.SQL.Add('Update Barang Set Stok=:st'); dmMakanan.qproses.SQL.Add('Where KodeBrg =:kb');


(46)

A-37 Universitas Kristen Maranatha dmMakanan.qproses.Prepare;

dmMakanan.qproses.ParamByname('kb').AsString := 'Mn0001'; dmMakanan.qproses.ParamByName('st').AsFloat := Stok-StrToFloat(EdCo.text);

dmMakanan.qproses.ExecSql; end;

end;

if EdSp.text <> '0' Then

//Untuk mengurangi jumlah stok barang begin

With dmMakanan.qData Do Begin

Close; Sql.Clear;

Sql.Add('Select Stok from Barang'); Sql.Add('Where KodeBrg =:kb'); Prepare;

Parambyname('kb').AsString := 'Mn0002'; Open;

Stok := Fields[0].AsFloat;

//update data stok barang dengan cara membaca nilai Stok dari //query diatasnya lalu kurangi dengan qty penjualan

//stok yang di update harus sesuai dengan kode barang nya. dmMakanan.qproses.Close;

dmMakanan.qproses.SQL.Clear;

dmMakanan.qproses.SQL.Add('Update Barang Set Stok=:st'); dmMakanan.qproses.SQL.Add('Where KodeBrg =:kb'); dmMakanan.qproses.Prepare;

dmMakanan.qproses.ParamByname('kb').AsString := 'Mn0002'; dmMakanan.qproses.ParamByName('st').AsFloat := Stok-StrToFloat(EdSp.text);

dmMakanan.qproses.ExecSql; end;

end;


(47)

A-38 Universitas Kristen Maranatha //Untuk mengurangi jumlah stok barang

begin

With dmMakanan.qData Do Begin

Close; Sql.Clear;

Sql.Add('Select Stok from Barang'); Sql.Add('Where KodeBrg =:kb'); Prepare;

Parambyname('kb').AsString := 'Mn0003'; Open;

Stok := Fields[0].AsFloat;

//update data stok barang dengan cara membaca nilai Stok dari //query diatasnya lalu kurangi dengan qty penjualan

//stok yang di update harus sesuai dengan kode barang nya. dmMakanan.qproses.Close;

dmMakanan.qproses.SQL.Clear;

dmMakanan.qproses.SQL.Add('Update Barang Set Stok=:st'); dmMakanan.qproses.SQL.Add('Where KodeBrg =:kb'); dmMakanan.qproses.Prepare;

dmMakanan.qproses.ParamByname('kb').AsString := 'Mn0003'; dmMakanan.qproses.ParamByName('st').AsFloat := Stok-StrToFloat(EdF.text);

dmMakanan.qproses.ExecSql; end;

end;

if EdJS.text <> '0' Then

//Untuk mengurangi jumlah stok barang begin

With dmMakanan.qData Do Begin

Close; Sql.Clear;


(48)

A-39 Universitas Kristen Maranatha Sql.Add('Where KodeBrg =:kb');

Prepare;

Parambyname('kb').AsString := 'Mn0004'; Open;

Stok := Fields[0].AsFloat;

//update data stok barang dengan cara membaca nilai Stok dari //query diatasnya lalu kurangi dengan qty penjualan

//stok yang di update harus sesuai dengan kode barang nya. dmMakanan.qproses.Close;

dmMakanan.qproses.SQL.Clear;

dmMakanan.qproses.SQL.Add('Update Barang Set Stok=:st'); dmMakanan.qproses.SQL.Add('Where KodeBrg =:kb'); dmMakanan.qproses.Prepare;

dmMakanan.qproses.ParamByname('kb').AsString := 'Mn0004'; dmMakanan.qproses.ParamByName('st').AsFloat := Stok-StrToFloat(EdJS.text);

dmMakanan.qproses.ExecSql; end;

end;

if EdJA.text <> '0' Then

//Untuk mengurangi jumlah stok barang begin

With dmMakanan.qData Do Begin

Close; Sql.Clear;

Sql.Add('Select Stok from Barang'); Sql.Add('Where KodeBrg =:kb'); Prepare;

Parambyname('kb').AsString := 'Mn0005'; Open;

Stok := Fields[0].AsFloat;

//update data stok barang dengan cara membaca nilai Stok dari //query diatasnya lalu kurangi dengan qty penjualan


(49)

A-40 Universitas Kristen Maranatha //stok yang di update harus sesuai dengan kode barang nya.

dmMakanan.qproses.Close; dmMakanan.qproses.SQL.Clear;

dmMakanan.qproses.SQL.Add('Update Barang Set Stok=:st'); dmMakanan.qproses.SQL.Add('Where KodeBrg =:kb'); dmMakanan.qproses.Prepare;

dmMakanan.qproses.ParamByname('kb').AsString := 'Mn0005'; dmMakanan.qproses.ParamByName('st').AsFloat := Stok-StrToFloat(EdJA.text);

dmMakanan.qproses.ExecSql; end;

end;

if EdJM.text <> '0' Then

//Untuk mengurangi jumlah stok barang begin

With dmMakanan.qData Do Begin

Close; Sql.Clear;

Sql.Add('Select Stok from Barang'); Sql.Add('Where KodeBrg =:kb'); Prepare;

Parambyname('kb').AsString := 'Mn0006'; Open;

Stok := Fields[0].AsFloat;

//update data stok barang dengan cara membaca nilai Stok dari //query diatasnya lalu kurangi dengan qty penjualan

//stok yang di update harus sesuai dengan kode barang nya. dmMakanan.qproses.Close;

dmMakanan.qproses.SQL.Clear;

dmMakanan.qproses.SQL.Add('Update Barang Set Stok=:st'); dmMakanan.qproses.SQL.Add('Where KodeBrg =:kb'); dmMakanan.qproses.Prepare;


(50)

A-41 Universitas Kristen Maranatha dmMakanan.qproses.ParamByName('st').AsFloat :=

Stok-StrToFloat(EdJM.text);

dmMakanan.qproses.ExecSql; end;

end;

if EdJSr.text <> '0' Then

//Untuk mengurangi jumlah stok barang begin

With dmMakanan.qData Do Begin

Close; Sql.Clear;

Sql.Add('Select Stok from Barang'); Sql.Add('Where KodeBrg =:kb'); Prepare;

Parambyname('kb').AsString := 'Mn0007'; Open;

Stok := Fields[0].AsFloat;

//update data stok barang dengan cara membaca nilai Stok dari //query diatasnya lalu kurangi dengan qty penjualan

//stok yang di update harus sesuai dengan kode barang nya. dmMakanan.qproses.Close;

dmMakanan.qproses.SQL.Clear;

dmMakanan.qproses.SQL.Add('Update Barang Set Stok=:st'); dmMakanan.qproses.SQL.Add('Where KodeBrg =:kb'); dmMakanan.qproses.Prepare;

dmMakanan.qproses.ParamByname('kb').AsString := 'Mn0007'; dmMakanan.qproses.ParamByName('st').AsFloat := Stok-StrToFloat(EdJSr.text);

dmMakanan.qproses.ExecSql; end;

end;

if EdETM.text <> '0' Then

//Untuk mengurangi jumlah stok barang begin


(51)

A-42 Universitas Kristen Maranatha With dmMakanan.qData Do

Begin Close; Sql.Clear;

Sql.Add('Select Stok from Barang'); Sql.Add('Where KodeBrg =:kb'); Prepare;

Parambyname('kb').AsString := 'Mn0008'; Open;

Stok := Fields[0].AsFloat;

//update data stok barang dengan cara membaca nilai Stok dari //query diatasnya lalu kurangi dengan qty penjualan

//stok yang di update harus sesuai dengan kode barang nya. dmMakanan.qproses.Close;

dmMakanan.qproses.SQL.Clear;

dmMakanan.qproses.SQL.Add('Update Barang Set Stok=:st'); dmMakanan.qproses.SQL.Add('Where KodeBrg =:kb'); dmMakanan.qproses.Prepare;

dmMakanan.qproses.ParamByname('kb').AsString := 'Mn0008'; dmMakanan.qproses.ParamByName('st').AsFloat := Stok-StrToFloat(EdETM.text);

dmMakanan.qproses.ExecSql; end;

end;

if EdETT.text <> '0' Then

//Untuk mengurangi jumlah stok barang begin

With dmMakanan.qData Do Begin

Close; Sql.Clear;

Sql.Add('Select Stok from Barang'); Sql.Add('Where KodeBrg =:kb'); Prepare;


(52)

A-43 Universitas Kristen Maranatha Parambyname('kb').AsString := 'Mn0009';

Open;

Stok := Fields[0].AsFloat;

//update data stok barang dengan cara membaca nilai Stok dari //query diatasnya lalu kurangi dengan qty penjualan

//stok yang di update harus sesuai dengan kode barang nya. dmMakanan.qproses.Close;

dmMakanan.qproses.SQL.Clear;

dmMakanan.qproses.SQL.Add('Update Barang Set Stok=:st'); dmMakanan.qproses.SQL.Add('Where KodeBrg =:kb'); dmMakanan.qproses.Prepare;

dmMakanan.qproses.ParamByname('kb').AsString := 'Mn0009'; dmMakanan.qproses.ParamByName('st').AsFloat := Stok-StrToFloat(EdETT.text);

dmMakanan.qproses.ExecSql; end;

end;

dmMakanan.TrMakanan.Commit; end;

End.

d. Pembuatan program form Login Customer unit ULogin1;

interface uses

Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, StdCtrls;

type

TForm1 = class(TForm) Label1: TLabel; Edit1: TEdit; Label2: TLabel; Edit2: TEdit;


(53)

A-44 Universitas Kristen Maranatha Button1: TButton;

Button2: TButton;

procedure Button1Click(Sender: TObject); procedure Button2Click(Sender: TObject); procedure FormShow(Sender: TObject); private

{ Private declarations } public

{ Public declarations } end;

var

Form1: TForm1; implementation uses UCustomer; {$R *.dfm}

procedure TForm1.Button1Click(Sender: TObject); begin

if (Edit1.Text <> 'Admin') or (Edit2.Text <> '1234') then begin

MessageDlg('User Name atau Password salah', MTWarning, [MBOK], 0); Exit;

end; Close;

FrmCustomer.show; end;

procedure TForm1.Button2Click(Sender: TObject); begin

Close; end;


(54)

A-45 Universitas Kristen Maranatha begin

Edit1.Clear; Edit2.Clear; end;

end.

e. Pembuatan program form Login Supplier unit ULogin2;

interface uses

Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, StdCtrls;

type

TForm2 = class(TForm) Label1: TLabel; Edit1: TEdit; Label2: TLabel; Edit2: TEdit; Button1: TButton; Button2: TButton;

procedure Button1Click(Sender: TObject); procedure Button2Click(Sender: TObject); procedure FormShow(Sender: TObject); private

{ Private declarations } public

{ Public declarations } end;

var

Form2: TForm2; implementation Uses USupp;


(55)

A-46 Universitas Kristen Maranatha {$R *.dfm}

procedure TForm2.Button1Click(Sender: TObject); begin

if (Edit1.Text <> 'Admin') or (Edit2.Text <> '1234') then begin

MessageDlg('User Name atau Password salah', MTWarning, [MBOK], 0); Exit;

end; Close;

FrmSupplier.show; end;

procedure TForm2.Button2Click(Sender: TObject); begin

Close; end;

procedure TForm2.FormShow(Sender: TObject); begin

Edit1.Clear; Edit2.Clear; end;

end.

f. Pembuatan program form Login Input Makanan unit ULogin7;

interface uses

Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, StdCtrls;

type

TForm7 = class(TForm) Label1: TLabel;


(56)

A-47 Universitas Kristen Maranatha Label2: TLabel;

Edit1: TEdit; Edit2: TEdit; Button1: TButton; Button2: TButton;

procedure Button1Click(Sender: TObject); procedure Button2Click(Sender: TObject); procedure FormShow(Sender: TObject); private

{ Private declarations } public

{ Public declarations } end;

var

Form7: TForm7; implementation uses UInput; {$R *.dfm}

procedure TForm7.Button1Click(Sender: TObject); begin

if (Edit1.Text <> 'Admin') or (Edit2.Text <> '1234') then begin

MessageDlg('User Name atau Password salah', MTWarning, [MBOK], 0); Exit;

end; Close;

FrmInputMakanan.show; end;

procedure TForm7.Button2Click(Sender: TObject); begin


(57)

A-48 Universitas Kristen Maranatha end;

procedure TForm7.FormShow(Sender: TObject); begin

Edit1.Clear; Edit2.Clear; end;

end.

g. Pembuatan program form Login Pembelian Barang unit ULogin3;

interface uses

Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, StdCtrls;

type

TForm3 = class(TForm) Label1: TLabel; Edit1: TEdit; Label2: TLabel; Edit2: TEdit; Button1: TButton; Button2: TButton;

procedure Button1Click(Sender: TObject); procedure Button2Click(Sender: TObject); procedure FormShow(Sender: TObject); private

{ Private declarations } public

{ Public declarations } end;

var


(58)

A-49 Universitas Kristen Maranatha implementation

uses UBeliBarang; {$R *.dfm}

procedure TForm3.Button1Click(Sender: TObject); begin

if (Edit1.Text <> 'Admin') or (Edit2.Text <> '1234') then begin

MessageDlg('User Name atau Password salah', MTWarning, [MBOK], 0); Exit;

end; Close;

FrmBeliBarang.show; end;

procedure TForm3.Button2Click(Sender: TObject); begin

Close; end;

procedure TForm3.FormShow(Sender: TObject); begin

Edit1.Clear; Edit2.Clear; end;

end.

h. Pembuatan program form Login Laporan Penjualan Resto unit ULogin5;

interface uses


(59)

A-50 Universitas Kristen Maranatha Dialogs, StdCtrls;

type

TForm6 = class(TForm) Label1: TLabel; Label2: TLabel; Edit1: TEdit; Edit2: TEdit; Button1: TButton; Button2: TButton;

procedure FormShow(Sender: TObject); procedure Button1Click(Sender: TObject); procedure Button2Click(Sender: TObject); private

{ Private declarations } public

{ Public declarations } end;

var

Form6: TForm6; implementation uses ULaporanJual; {$R *.dfm}

procedure TForm6.FormShow(Sender: TObject); begin

Edit1.Clear; Edit2.clear; end;

procedure TForm6.Button1Click(Sender: TObject); begin


(60)

A-51 Universitas Kristen Maranatha begin

MessageDlg('User Name atau Password salah', MTWarning, [MBOK], 0); Exit;

end; Close;

FrmLaPORANPenjualanResto.show; end;

procedure TForm6.Button2Click(Sender: TObject); begin

Close; end; end.

i. Pembuatan program form Login Laporan Pembelian Barang unit ULogin4;

interface uses

Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, StdCtrls;

type

TForm4 = class(TForm) Label1: TLabel; Label2: TLabel; Edit1: TEdit; Edit2: TEdit; Button1: TButton; Button2: TButton;

procedure Button1Click(Sender: TObject); procedure Button2Click(Sender: TObject); procedure FormShow(Sender: TObject); private

{ Private declarations } public


(61)

A-52 Universitas Kristen Maranatha { Public declarations }

end; var

Form4: TForm4; implementation

uses UBeliBarang, ULaporanBeli; {$R *.dfm}

procedure TForm4.Button1Click(Sender: TObject); begin

if (Edit1.Text <> 'Admin') or (Edit2.Text <> '1234') then begin

MessageDlg('User Name atau Password salah', MTWarning, [MBOK], 0); Exit;

end; Close;

FrmLaporanBeliBarang.show; end;

procedure TForm4.Button2Click(Sender: TObject); begin

Close; end;

procedure TForm4.FormShow(Sender: TObject); begin

Edit1.Clear; Edit2.clear; end;

end.

j. Pembuatan program form Login Penjualan Resto unit ULogin6;


(62)

A-53 Universitas Kristen Maranatha interface

uses

Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, StdCtrls;

type

TForm5 = class(TForm) Label1: TLabel; Label2: TLabel; Edit1: TEdit; Edit2: TEdit; Button1: TButton; Button2: TButton;

procedure Button1Click(Sender: TObject); procedure Button2Click(Sender: TObject); procedure FormShow(Sender: TObject); private

{ Private declarations } public

{ Public declarations } end;

var

Form5: TForm5; implementation uses UJual; {$R *.dfm}

procedure TForm5.Button1Click(Sender: TObject); begin

if (Edit1.Text <> 'Admin') or (Edit2.Text <> '1234') then begin


(63)

A-54 Universitas Kristen Maranatha MessageDlg('User Name atau Password salah', MTWarning, [MBOK], 0); Exit;

end; Close;

FrmJual.show; end;

procedure TForm5.Button2Click(Sender: TObject); begin

Close; end;

procedure TForm5.FormShow(Sender: TObject); begin

Edit1.Clear; Edit2.Clear; end;

end.

k. Pembuatan program form Input Makanan unit UInput;

interface uses

Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, Grids, DBGrids, RpCon, RpConDS, RpDefine, RpRave, DB, IBCustomDataSet, IBQuery, StdCtrls;

type

TFrmInputMakanan = class(TForm) Label1: TLabel;

EdKodeBrg: TEdit; Label2: TLabel; EdNamaBrg: TEdit; Label3: TLabel; EdHrgBeli: TEdit;


(64)

A-55 Universitas Kristen Maranatha Label4: TLabel;

EdHrgJual: TEdit; Label5: TLabel; EdKategori: TEdit; BtSimpan: TButton; BtCari: TButton; BtKeluar: TButton; BtHapus: TButton; QBarang: TIBQuery; RvInput: TRvProject;

RvfInput: TRvDataSetConnection; DBGrid1: TDBGrid;

Label6: TLabel; EdStok: TEdit; BtCetak: TButton;

QBarangKODEBRG: TIBStringField; QBarangNAMABRG: TIBStringField; QBarangHRGBELI: TIBBCDField; QBarangHRGJUAL: TIBBCDField; QBarangSTOK: TIBBCDField;

QBarangKATEGORI: TIBStringField; Label7: TLabel;

procedure BtSimpanClick(Sender: TObject); procedure BtCariClick(Sender: TObject); procedure BtKeluarClick(Sender: TObject); procedure BtHapusClick(Sender: TObject); procedure BtCetakClick(Sender: TObject); private

{ Private declarations } public

{ Public declarations } end;

var

FrmInputMakanan: TFrmInputMakanan; implementation


(65)

A-56 Universitas Kristen Maranatha Uses UModule;

{$R *.dfm}

procedure TFrmInputMakanan.BtSimpanClick(Sender: TObject); begin

With dmMakanan.QData Do Begin

Close; Sql.Clear;

Sql.Add('Insert Into BARANG(KODEBRG, NAMABRG, HRGBELI, HRGJUAL, STOK, KATEGORI) '+

'Values(:kb, :nb, :hb, :hj, :st, :kt)'); Prepare;

ParamByName('kb').AsString := EdKodeBrg.Text; ParamByname('nb').AsString := EdNamaBrg.Text; ParamByName('hb').AsString := EdHrgBeli.Text; ParamByName('hj').AsString := EdHrgJual.Text; ParamByName('st').AsString := EdStok.Text; ParamByName('kt').AsString := EdKategori.Text; ExecSql;

End;

dmMakanan.TrMakanan.Commit; EdKodeBrg.Clear;

EdNamaBrg.Clear; EdHrgBeli.Clear; EdHrgJual.Clear; EdStok.Clear; EdKategori.Clear;

With dmMakanan.QProses Do Begin

Close; Sql.Clear;

Sql.Add('Select KODEBRG, NAMABRG, HRGBELI, HRGJUAL, STOK, KATEGORI From BARANG');


(66)

A-57 Universitas Kristen Maranatha Open;

End; end;

procedure TFrmInputMakanan.BtCariClick(Sender: TObject); begin

With dmMakanan.QProses Do Begin

Close; Sql.Clear;

Sql.Add('Select KODEBRG, NAMABRG, HRGBELI, HRGJUAL, STOK, KATEGORI From BARANG');

Sql.Add('Where KODEBRG Like :kb'); Prepare;

ParamByName('kb').AsString := '%'+EdKodeBrg.Text+'%'; Open;

End; end;

procedure TFrmInputMakanan.BtKeluarClick(Sender: TObject); begin

Close; end;

procedure TFrmInputMakanan.BtHapusClick(Sender: TObject); begin

With dmMakanan.QData Do Begin

Close; Sql.Clear;

Sql.Add('Delete From BARANG'); Sql.Add('Where KODEBRG =:kb'); Prepare;

ParamByName('kb').AsString := Trim(DBGrid1.Fields[0].AsString); ExecSql;


(67)

A-58 Universitas Kristen Maranatha dmMakanan.TrMakanan.Commit;

With dmMakanan.QProses Do Begin

Close; Sql.Clear;

Sql.Add('Select KODEBRG, NAMABRG, HRGBELI, HRGJUAL, STOK, KATEGORI From BARANG');

Open; End; end;

procedure TFrmInputMakanan.BtCetakClick(Sender: TObject); begin

with QBarang Do Begin

Close; Prepare;

ParamByName('kb').AsString := Trim(EdKodeBrg.Text); Open;

End;

RvInput.Execute; end;

end.

l. Pembuatan program form Customer unit UCustomer;

interface uses

Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, StdCtrls, RpRave, RpDefine, RpCon, RpConDS, DB,

IBCustomDataSet,

IBQuery, Grids, DBGrids; type


(68)

A-59 Universitas Kristen Maranatha TFrmCustomer = class(TForm)

Label1: TLabel; Label2: TLabel; Label3: TLabel; Label4: TLabel; Label5: TLabel; Label6: TLabel; EdKodeCust: TEdit; EdNamaCust: TEdit; EdAlmCust: TEdit; EdTlp: TEdit; EdHP: TEdit;

DBGrid1: TDBGrid; BtSimpan: TButton; BtHapus: TButton; BtCari: TButton; BtCetak: TButton; BtKeluar: TButton; QCustomer: TIBQuery;

RvCust: TRvDataSetConnection; RvProject1: TRvProject;

QCustomerALAMATCUST: TIBStringField; QCustomerHP: TIBStringField;

QCustomerKODECUST: TIBStringField; QCustomerNAMACUST: TIBStringField; QCustomerTLP: TIBStringField;

procedure BtSimpanClick(Sender: TObject); procedure BtCariClick(Sender: TObject); procedure BtKeluarClick(Sender: TObject); procedure BtHapusClick(Sender: TObject); procedure BtCetakClick(Sender: TObject);

procedure EdNamaCustChange(Sender: TObject); private

{ Private declarations } public

{ Public declarations } end;


(69)

A-60 Universitas Kristen Maranatha var

FrmCustomer: TFrmCustomer; implementation

uses UModule; {$R *.dfm}

procedure TFrmCustomer.BtSimpanClick(Sender: TObject); begin

With dmMakanan.QData Do Begin

Close; Sql.Clear;

Sql.Add('Insert Into

CUSTOMER(KODECUST,NAMACUST,ALAMATCUST,TLP,HP) '+ 'Values(:kc, :nc, :ac, :tp, :hp)');

Prepare;

ParamByName('kc').AsString := EdKodeCust.Text; ParamByname('nc').AsString := EdNamaCust.Text; ParamByName('ac').AsString := EdAlmCust.Text; ParamByName('tp').AsString := EdTlp.Text; ParamByName('hp').AsString := EdHP.Text; ExecSql;

End;

dmMakanan.TrMakanan.Commit; EdKodeCust.Clear;

EdNamaCust.Clear; EdAlmCust.Clear; EdTlp.Text:='0'; EdHP.Text:='0';


(70)

A-61 Universitas Kristen Maranatha Begin

Close; Sql.Clear;

Sql.Add('Select KODECUST,NAMACUST,ALAMATCUST,TLP,HP From CUSTOMER');

Open; End; end;

procedure TFrmCustomer.BtCariClick(Sender: TObject); begin

With dmMakanan.QProses Do Begin

Close; Sql.Clear;

Sql.Add('Select KODECUST,NAMACUST,ALAMATCUST,TLP,HP From CUSTOMER');

Sql.Add('Where KODECUST Like :kc'); Prepare;

ParamByName('kc').AsString := '%'+EdKodeCust.Text+'%'; Open;

End; end;

procedure TFrmCustomer.BtKeluarClick(Sender: TObject); begin

Close; end;

procedure TFrmCustomer.BtHapusClick(Sender: TObject); begin

With dmMakanan.QData Do Begin

Close; Sql.Clear;

Sql.Add('Delete From CUSTOMER'); Sql.Add('Where KODECUST =:kc');


(71)

A-62 Universitas Kristen Maranatha Prepare;

ParamByName('kc').AsString := Trim(DBGrid1.Fields[0].AsString); ExecSql;

End;

dmMakanan.TrMakanan.Commit; With dmMakanan.QProses Do Begin

Close; Sql.Clear;

Sql.Add('Select KODECUST,NAMACUST,ALAMATCUST,TLP,HP From CUSTOMER');

Open; End; end;

procedure TFrmCustomer.BtCetakClick(Sender: TObject); begin

rvProject1.Execute; end;

procedure TFrmCustomer.EdNamaCustChange(Sender: TObject); begin

With dmMakanan.qProses Do Begin

Close; Sql.Clear;

Sql.Add('Select * From Customer'); Sql.Add('Where NAMACUST Like :nc'); Prepare;

ParamByName('nc').AsString := '%'+EdNamaCust.Text+'%'; Open;

End; end;


(72)

A-63 Universitas Kristen Maranatha end.

m. Pembuatan program form Supplier unit USupp;

interface uses

Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, Grids, DBGrids, StdCtrls, RpRave, RpDefine, RpCon, RpConDS, DB,

IBCustomDataSet, IBQuery; type

TFrmSupplier = class(TForm) Label1: TLabel;

Label2: TLabel; Label3: TLabel; Label4: TLabel; Label5: TLabel; Label6: TLabel; EdKodeSupp: TEdit; EdNamaSupp: TEdit; EdAlmSupp: TEdit; EdTlp: TEdit; EdHP: TEdit;

DBGrid1: TDBGrid; BtSimpan: TButton; BtCari: TButton; BtHapus: TButton; BtCetak: TButton; BtKeluar: TButton; QSupplier: TIBQuery;

RvfSupp: TRvDataSetConnection; RvSupp: TRvProject;

QSupplierKODESUPP: TIBStringField; QSupplierNAMASUPP: TIBStringField; QSupplierALAMATSUPP: TIBStringField;


(73)

A-64 Universitas Kristen Maranatha QSupplierTLP: TIBStringField;

QSupplierHP: TIBStringField;

procedure BtSimpanClick(Sender: TObject); procedure BtKeluarClick(Sender: TObject); procedure BtCariClick(Sender: TObject); procedure BtHapusClick(Sender: TObject); procedure BtCetakClick(Sender: TObject);

procedure EdNamaSuppChange(Sender: TObject); private

{ Private declarations } public

{ Public declarations } end;

var

FrmSupplier: TFrmSupplier; implementation

Uses UModule; {$R *.dfm}

procedure TFrmSupplier.BtSimpanClick(Sender: TObject); begin

With dmMakanan.QData Do Begin

Close; Sql.Clear;

Sql.Add('Insert Into

SUPPLIER(KODESUPP,NAMASUPP,ALAMATSUPP,TLP,HP) '+ 'Values(:ks, :ns, :as, :tp, :hp)');

Prepare;

ParamByName('ks').AsString := EdKodeSupp.Text; ParamByname('ns').AsString := EdNamaSupp.Text; ParamByName('as').AsString := EdAlmSupp.Text; ParamByName('tp').AsString := EdTlp.Text; ParamByName('hp').AsString := EdHP.Text; ExecSql;


(74)

A-65 Universitas Kristen Maranatha End;

dmMakanan.TrMakanan.Commit; EdKodeSupp.Clear;

EdNamaSupp.Clear; EdAlmSupp.Clear; EdTlp.Text:='0'; EdHp.Text:='0';

With dmMakanan.QProses Do Begin

Close; Sql.Clear;

Sql.Add('Select KODESUPP,NAMASUPP,ALAMATSUPP,TLP,HP From SUPPLIER');

Open; End; end;

procedure TFrmSupplier.BtKeluarClick(Sender: TObject); begin

Close; end;

procedure TFrmSupplier.BtCariClick(Sender: TObject); begin

With dmMakanan.QProses Do Begin

Close; Sql.Clear;

Sql.Add('Select KODESUPP,NAMASUPP,ALAMATSUPP,TLP,HP From SUPPLIER');

Sql.Add('Where KODESUPP Like :kp'); Prepare;

ParamByName('kp').AsString := '%'+EdKodeSupp.Text+'%'; Open;


(75)

A-66 Universitas Kristen Maranatha End;

end;

procedure TFrmSupplier.BtHapusClick(Sender: TObject); begin

With dmMakanan.QData Do Begin

Close; Sql.Clear;

Sql.Add('Delete From SUPPLIER'); Sql.Add('Where KODESUPP =:kp'); Prepare;

ParamByName('kp').AsString := Trim(DBGrid1.Fields[0].AsString); ExecSql;

End;

dmMakanan.TrMakanan.Commit; With dmMakanan.QProses Do Begin

Close; Sql.Clear;

Sql.Add('Select KODESUPP,NAMASUPP,ALAMATSUPP,TLP,HP From SUPPLIER');

Open; End; end;

procedure TFrmSupplier.BtCetakClick(Sender: TObject); begin

RvSupp.Execute; end;

procedure TFrmSupplier.EdNamaSuppChange(Sender: TObject); begin

With dmMakanan.qProses Do Begin


(1)

var

FrmLaporanPenjualanResto: TFrmLaporanPenjualanResto; implementation

Uses UModule; {$R *.dfm}

procedure TFrmLaporanPenjualanResto.BtKeluarClick(Sender: TObject); begin

Close; end;

procedure TFrmLaporanPenjualanResto.BtCetakClick(Sender: TObject); var Path : String;

begin

//Menentukan directory

Path := 'D:\my document\TA (Tugas Akhir)_Skripsi\program Skripsi\laporan\';

// ShowMessage('Laporan Penjualan'); With QLaporJual Do

Begin Close; Prepare;

ParambyName('tglA').AsDate := dtpTglA.Date; ParambyName('tglB').AsDate := dtpTglB.Date;

ParamByName('bj').AsString := Trim('%'+EdBon.Text+'%'); Open;

End;

RvPenjualan.ProjectFile := Path+ 'LJualResto.rav'; RvPenjualan.execute;

end; end.


(2)

BAB I

PENDAHULUAN

1.1. Latar Belakang Masalah

Pada awalnya, jika ingin memesan makanan atau minuman pada cafe

biasanya, pelayan akan mendatangi tempat pelanggan lalu menawarkan menu untuk memesan makanan atau minuman dari cafe itu. Dari dulu, jika ingin memesan makanan di cafe akan menggunakan daftar menu yang mana daftar menu ini akan diantarkan oleh pelayan ke meja konsumen. Pada saat itu juga akan diberi catatan pemesanan makanan yang mana catatan ini akan diberikan kepada koki dan barulah makanan ini akan diantar ke meja pelanggan.

Tetapi, sekarang dengan menggunakan teknologi yang ada, pemesanan makanan atau minuman dapat dilakukan pemesanan makanan atau minuman dapat dilakukan dengan mengurangi jumlah karyawan untuk permasalahan pada bagian mencatat daftar menu.

1.2. Identifikasi Masalah

Bagaimana membuat software pemesanan makanan pada cafe?

1.3. Tujuan

Pembuatan software pemesanan makanan pada cafe.

1.4. Pembatasan Masalah

Pembuatan software pemesanan makanan pada cafe itu luas permasalahannya. Maka dari itu, permasalahannya yang akan dibahas hanya pemesanan makanan sampai


(3)

pada pembayaran makanan pada cafe. Lalu, software yang dibuat juga belum menggunakan fasilitas network.

1.5. Cara Kerja

Cara kerjanya adalah pada saat costumer datang ke cafe ini, costumer akan memesan dengan cara pelayan meng-klik daftar menu digital yang ada pada layar LCD komputer yang ada pada tempat tertentu.

1.6. Sistematika Penulisan

a. Bab I Latar belakang masalah

Membicarakan tentang permasalahan yang ada. b. Bab II Landasan Teori

Membicarakan tentang arti, perkembangan Delphi, dan keuntungan dari Delphi.

c. Bab III Perancangan dan Analisis Program

Membicarakan tentang cara – cara merancang dan menganalisis program.

d. Bab IV Hasil Program

Membicarakan tentang program yang dibuat termasuk dengan

database.

e. Bab V Kesimpulan dan Saran

Membicarakan tentang kesimpulan dan saran dari perancangan pemesanan perangkat lunak di cafe.


(4)

BAB V

Kesimpulan dan Saran

5.1. Kesimpulan

Kesimpulan dari tugas akhir ini terdiri dari:

• Perancangan pemesanan makanan dengan menggunakan perangkat lunak telah berhasil direalisasikan.

• Dengan menggunakan program ini, pengunjung dapat memesan dengan melihat daftar menu pada layar komputer yang ada pada tempat tertentu. 5.2. Saran

Pemesanan makanan di cafe dengan menggunakan perangkat lunak telah selesai, adapun bila ada penambahan – penambahan, seperti :

1. Penambahan dengan menggunakan wireless, agar dapat dipakai lebih dari satu monitor.


(5)

Daftar Pustaka

J. Alam, M. Agus, Membuat Program Aplikasi Mengunakan Delphi 6 & Delphi 7, edisi pertama, PT. Elex Media Komputindo, Jakarta, 2003.

Malik, Jaja Jamaludin, Kumpulan Latihan Pemograman Delphi, Andi Yogyakarta, Yogyakarta, 2005.

juni 2010

2010

2010

terakhir dibuka 24 juni 2010

terakhir dibuka 26 juni 2010


(6)

terakhir dibuka 26 juni 2010

terakhir dibuka 28 juni 2010

terakhir dibuka 28 juni 2010