A-1 Universitas Kristen Maranatha

Relevanta dokument
PROJEKT STAFFAN STALLEDRÄNG

Inledning till DLL för USB Experiment-Interfacekortet K8055

Dugga Datastrukturer (DAT036)

TDDC30. Kursledning Kursledare: Jonas Lindgren. Labassistent: Jonas Lindgren Labassistent: Niklas Holma Labassistent: Erik Nilsson

Lektion 1 - Programmeringsteknik F1, ht 2003

Programmering A C# VT Ett kompendie över Programmering A (50p) i c# Stefan Fredriksson

Programmera i teknik - kreativa projekt med Arduino

BridgeView. Klasser i BridgeView. Klassen Grafiska Gränssnittet. Klassen TSPELET

TDDC30. Objektorienterad programmering i Java, datastrukturer och algoritmer. Föreläsning 1 Jonas Lindgren, Institutionen för Datavetenskap, LiU

1. Unpack content of zip-file to temporary folder and double click Setup

PROJEKT LJUD. KOPIERINGSUNDERLAG Martin Blom Skavnes, Staffan Melin och Natur & Kultur Programmera i teknik ISBN

Support Manual HoistLocatel Electronic Locks

OOP Objekt-orienterad programmering

Generiska konstruktioner. Kursbokens kapitel 13

Träff 1 - Introduktion

SI-pass 4. Johan Brook och Jesper Persson. 25 september Diskutera och svara på om påståendena nedan är äkta sanningar eller listiga lögner.

Lösningsförslag till omtentamen för TDA540 Objektorienterad Programmering

Outline. For. I istället för att följa det normala ordningen, man ändra den. I i Java får man inte göra hopp hur som helst

22/02/16. Arduino Introduktion till Arduino. Arduino. Microcontroller - Embedded systems. Historia Organisation - Ekosystem

GRUNDER I VHDL. Innehåll. Komponentmodell Kodmodell Entity Architecture Identifierare och objekt Operationer för jämförelse

Föreläsning Datastrukturer (DAT036)

1.1 Skapa ett Inline-Script som skapar filen För att skapa ett inline script drar man InLine till där man vill ha själva scriptet.

Lösningar till tentamen i EDAF25

Skillnader mellan Python och Java

Pascal. reserverade ord fördefinierade funktioner och procedurer egendefinierade funktioner, procedurer och objekt

Övning Arbeta med klasser

F12 - Collections. ID1004 Objektorienterad programmering Fredrik Kilander

Programmering på Arduino/Genuino

Klassdeklaration. Metoddeklaration. Parameteröverföring

OMTENTAMEN I PROGRAMSPRÅK -- DVG C kl. 08:15-13: 15

Quick Start. English Svenska. Moca

Funktionell programmering DD1361

Tentamen FYTA11 Javaprogrammering

Tentamen Datastrukturer (DAT036)

Transportnivån. Kommunikation mellan processer. Kommunikation mellan processer. Sockets och TCP. UDP (User Datagram Protocol) Checksumman

Lösningsförslag till tentamen Datastrukturer, DAT037,

F6 Objektorienterad design. ID1004 Objektorienterad programmering Fredrik Kilander

Föreläsning 12: Exempel och problemlösning

1. PLSQL 2 2. Select into

Den som bara har en hammare tror att alla problem är spikar

Rekursion. Koffman & Wolfgang kapitel 5

Föreläsning Datastrukturer (DAT037)

Allen-Bradley Parts. Installation Instructions. Introduction. Before You Begin

Table of Contents. Credits

TDDI82 - Projekt. Christoffer Holm. Institutionen för datavetenskap (IDA)

Du skall naturligtvis visa körexempel med output där det behövs i din rapport!

Problem som kan uppkomma vid registrering av ansökan

BRÖDGRUPPENS HEMSIDA

DSV A Procedurell programmering 5 poäng Tentamen

Tentamen Programmeringsteknik II och NV2 (alla varianter) Skriv bara på framsidan av varje papper.

OOP Objekt-orienterad programmering

Kompilering och exekvering. Föreläsning 1 Objektorienterad programmering DD1332. En kompilerbar och körbar java-kod. Kompilering och exekvering

Objektorienterad programmering. Fält som funktionsresultat. Mer om fält: att uppdatera ett parameterfält. Kontrast: Parametrar av primitiv typ

Pascal... Pascal. Pascal... Pascal...

IndraDrive Open-loop. Styrning av asynkronmotor över Profibus. Version 1

F5 Selektion och iteration. ID1004 Objektorienterad programmering Fredrik Kilander

Abstrakt datatyp. -Algoritmer och Datastrukturer- För utveckling av verksamhet, produkter och livskvalitet.

Introduktion till Datalogi DD1339. Föreläsning 5 13 okt 2014

VHDL Basics. Component model Code model Entity Architecture Identifiers and objects Operations for relations. Bengt Oelmann -- copyright

Växtviskaren EITF11 Digitala projekt VT15, I12

Tentamen ID1004 Objektorienterad programmering May 29, 2012

Schenker Privpak AB Telefon VAT Nr. SE Schenker ABs ansvarsbestämmelser, identiska med Box 905 Faxnr Säte: Borås

Klasshierarkier - repetition

Datastrukturer. föreläsning 3. Stacks 1

1 Programmering i Java. Program element - Introduktion. Exempel. Exempel. Kapitel 3:

The Phenomenal Doorbell Bilaga 2. Källkod

PARALLELL OCH SEKVENTIELL DATABEHANDLING. Innehåll

Plain A262. För T16 (T5) lysrör. Innehåll. Monteringsanvisning. A. Instruktion för rampmontering

Kungliga Tekniska Högskolan Ämneskod 2D4134 Nada Tentamensdag maj - 19 Tentamen i Objektorientering och Java Skrivtid 5 h

TENTAMEN I PROGRAMSPRÅK -- DVG C kl. 08:15-13:15

F4. programmeringsteknik och Matlab

Webbregistrering pa kurs och termin

E02 "The Review" Föreläsning 2, HT2013 Grunderna, repetition. Johan Leitet. Kurs: 1dv403 Webbteknik I

DAT043 Objektorienterad Programmering

TDDC74 Lab 04 Muterbara strukturer, omgivningar

electiaprotect GSM SEQURITY SYSTEM Vesta EZ Home Application SMART SECURITY SYSTEMS! SVENSKA ios Android

Funktioner. Programmering. Egendefinierade funktioner i Java. En Java-funktions anatomi. hh.se/db2004. Statiska metoder. Funktioner. resultatvärde.

kind spelling Scanning

Att programmera arduinon

Lösningsförslag till tentamen i EDAF25 Objektorienterad modellering och design Helsingborg

Exam Concurrent and Real-Time Programming

TDIU01 - Programmering i C++, grundkurs

Föreläsning 7 Datastrukturer (DAT037)

Lösningsförslag till tentamen i EDA011, lördagen den 16 december 2006

För att kunna byta till online licens (man kan alltid byta tillbaka) så behöver man ha några saker redo innan man börjar denna guide.

Webbreg öppen: 26/ /

Current selection does not contain a unique column. Grid edit, checkbox, Edit, Copy and Delete features are not available.

Tentamen. Programmeringsmetodik, KV: Java och OOP. 20 januari 2005

ITK:P1 Föreläsning 1. Programmering. Programmeringsspråket Java. Stark typning Explicit typning Strukturerat Hög säkerhet

DAT043 Objektorienterad programmering för D, DIT011 Objektorienterad programvaruutveckling för GU

tentaplugg.nu av studenter för studenter

Föreläsning Datastrukturer (DAT036)

Lunds Tekniska Högskola Elektro- och informationsteknik Digitala projekt (EITF11)

OOP Omtenta

Grafik i DrRacket AV TOMMY KARLSSON

Målet för D1 är att studenterna ska kunna följande: Använda några av de vanligaste PROC:arna. Sammanställa och presentera data i tabeller och grafiskt

TDA550 Objektorienterad programvaruutveckling IT, forts. kurs Övning vecka 2

Innehåll MySQL Intro. Allmänt om Lagrade Procedurer Enkel utformning Skapa en lagrad procedur Använda parameter som indata

Labb i Datorsystemteknik och programvaruteknik Programmering av kalkylator i Visual Basic

Vad kännetecknar en god klass. Vad kännetecknar en god klass. F12 Nested & Inner Classes

Transkript:

LAMPIRAN

A-1

Listing Program pada Arduino kit #include <SoftwareSerial.h> #define rxpin 2 #define txpin 3 SoftwareSerial rfid = SoftwareSerial(rxPin,txPin); char tag = 0; int val = 0; int motor1 = 4; int motor2 = 5; int enable = 6; int motor3 = 7; int saklar1= 8; int saklar2= 9; int saklar3= 10; int saklar4= 11; int saklar5= 12; int saklar6= 13; int solenoid1 = 14; int solenoid2 = 15; int solenoid3 = 16; int push1 = 17; int push2 = 18; int push3 = 19; int DC1 = 0; int sole1 = 0; int DC2 = 0; int sole2 = 0; int DC3 = 0; int sole3 = 0; void setup() { Serial.(9600); rfid.(9600); pinmode (push1, INPUT); pinmode (push2, INPUT); pinmode (push3, INPUT); pinmode (saklar1, INPUT); pinmode (saklar2, INPUT); pinmode (saklar3, INPUT); A-2

pinmode (saklar4, INPUT); pinmode (saklar5, INPUT); pinmode (saklar6, INPUT); pinmode (enable,output); pinmode (motor1,output); pinmode (motor2,output); pinmode (motor3, OUTPUT); pinmode (solenoid1, OUTPUT); pinmode (solenoid2, OUTPUT); pinmode (solenoid3, OUTPUT); void loop () { tag =rfid.read(); if(tag!=-1){ Serial.print(tag); val =Serial.read(); if (val!=-1){ if (val=='a'){ digitalwrite(solenoid1,high); delay(50); sole1=1; if (val=='b'){ digitalwrite(solenoid2,high); delay(50); sole2=1; if (val=='c'){ digitalwrite(solenoid3,high); delay(50); sole3=1; TutupSlot1(); A-3

TutupSlot2(); TutupSlot3(); void TutupSlot1(){ if(sole1==1){ digitalwrite(motor1,high); DC1=1; if ((digitalread(saklar1)==1)&&(dc1==1)){ DC1=0; if ((digitalread(push1) == 0) &&(DC1 == 0)){ digitalwrite(motor1,low); if ((digitalread(saklar2)==1)&& ((digitalread(saklar1)) == 0)){ DC1=1; if ((digitalread(saklar2) == 1)&& (DC1 == 1)){ digitalwrite (solenoid1,low); delay(50); sole1=0; DC1=0; void TutupSlot2(){ if(sole2==1){ digitalwrite(motor2,high); DC2=1; if ((digitalread(saklar3)==1)&&(dc2==1)){ DC2=0; if ((digitalread(push2) == 0) &&(DC2 == 0)){ digitalwrite(motor2,low); A-4

if ((digitalread(saklar4) ==1)&&((digitalRead(saklar3)) == 0)){ DC2 = 1; if ((digitalread(saklar4) == 1)&& (DC2 == 1)){ digitalwrite (solenoid2,low); delay(50); sole2=0; DC2=0; void TutupSlot3(){ if(sole3==1){ digitalwrite(motor3,high); DC3=1; if ((digitalread(saklar5)==1)&&(dc3==1)){ DC3=0; if ((digitalread(push3)== 0) &&(DC3==0)){ digitalwrite(motor3,low); if ((digitalread(saklar6) ==1 )&&(digitalread(saklar3)) == 0){ DC3=1; if ((digitalread(saklar6) == 1)&& (DC3 == 1)){ digitalwrite (solenoid3,low); delay(50); sole3=0; DC3=0; A-5

Listing Program Pada Delphi Program Menu Utama unit U_MenuUtama; interface uses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, XPMan, ExtCtrls, ToolWin, ComCtrls, Buttons, Menus, jpeg; type TfrmMenu = class(tform) SpeedButton1: TSpeedButton; Bevel1: TBevel; StatusBar1: TStatusBar; CoolBar1: TCoolBar; spbtnpelanggan: TSpeedButton; spbtnpembelian: TSpeedButton; SpeedButton2: TSpeedButton; Timer1: TTimer; SpeedButton3: TSpeedButton; SpeedButton4: TSpeedButton; Image1: TImage; procedure Timer1Timer(Sender: TObject); procedure spbtnpelangganclick(sender: TObject); procedure spbtnpembelianclick(sender: TObject); procedure SpeedButton2Click(Sender: TObject); procedure SpeedButton3Click(Sender: TObject); procedure SpeedButton4Click(Sender: TObject); private { Private declarations public { Public declarations End; var frmmenu: TfrmMenu; implementation uses U_DaftarPelanggan, U_InputPelanggan, U_Module, U_HapusPelanggan,U_SlotParkir, U_DataLog; {$R *.dfm procedure TfrmMenu.Timer1Timer(Sender: TObject); StatusBar1.Panels[1].Text := FormatDateTime('dd mmmm yyyy',now); StatusBar1.Panels[2].Text := FormatDateTime('hh:mm:ss', now); procedure TfrmMenu.spbtnPelangganClick(Sender: TObject); frmpelanggan.show; procedure TfrmMenu.spbtnPembelianClick(Sender: TObject); A-6

frmdpelanggan.show; procedure TfrmMenu.SpeedButton2Click(Sender: TObject); application.terminate; procedure TfrmMenu.SpeedButton3Click(Sender: TObject); frmdaftarparkir.show; procedure TfrmMenu.SpeedButton4Click(Sender: TObject); frmdatalog.show; end. Program Menu Registrasi unit U_InputPelanggan; interface uses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, Grids, DBGrids, StdCtrls, Buttons, ComCtrls, ExtCtrls; type TfrmPelanggan = class(tform) Label1: TLabel; Label2: TLabel; Label3: TLabel; Label4: TLabel; Label6: TLabel; edkodeplg: TEdit; ednamaplg: TEdit; edalamatplg: TEdit; edrfid: TEdit; edhp: TEdit; BitBtn1: TBitBtn; BitBtn4: TBitBtn; StatusBar1: TStatusBar; procedure BitBtn4Click(Sender: TObject); procedure BitBtn1Click(Sender: TObject); private { Private declarations public { Public declarations A-7

var frmpelanggan: TfrmPelanggan; implementation uses U_MenuUtama, U_Module, U_DaftarPelanggan,U_SlotParkir; {$R *.dfm procedure TfrmPelanggan.BitBtn4Click(Sender: TObject); frmmenu.show; frmpelanggan.hide; procedure TfrmPelanggan.BitBtn1Click(Sender: TObject); With dm.qdata Do Begin Sql.Add('Insert Into member(norfid, KodePlg,NamaPlg,AlamatPlg,HP) '+ 'Values(:nr, :kp, :np, :al,:hp)'); Prepare; ParamByName('nr').AsString := EdRfid.Text; ParamByName('kp').AsString := EdKodePlg.Text; ParamByname('np').AsString := EdNamaPlg.Text; ParamByname('al').AsString := EdAlamatPlg.Text; ParamByname('hp').AsString := EdHP.Text; ExecSql; End; MessageDlg('Apakah data telah diisi dengan lengkap?',mtwarning,[mbok],0); dm.trslot.commit; EdRfid.Clear; EdKodePlg.Clear; EdNamaPlg.Clear; EdAlamatPlg.Clear; EdHP.Clear; EdKodePlg.SetFocus; With dm.qproses Do Begin Sql.Add('Select * From member'); Open; frmdpelanggan.show; frmpelanggan.hide; End; A-8

end. Program Menu Daftar Slot Parkir unit U_SlotParkir; interface uses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, StdCtrls, CPort, CPortCtl, ExtCtrls, Buttons, ComCtrls, Grids, DBGrids; type TfrmDaftarParkir = class(tform) ComPort1: TComPort; Edit1: TEdit; Label6: TLabel; edslot: TEdit; btnkeluar: TBitBtn; btntambah: TBitBtn; Label15: TLabel; StatusBar1: TStatusBar; Timer2: TTimer; Edit2: TEdit; Edit3: TEdit; BitBtn1: TBitBtn; Edit4: TEdit; Timer3: TTimer; Label7: TLabel; Label8: TLabel; Label16: TLabel; Label1: TLabel; BitBtn2: TBitBtn; Label10: TLabel; Label11: TLabel; Button2: TButton; edcom: TEdit; ComLed1: TComLed; edrfid: TEdit; Edit11: TEdit; Edit12: TEdit; Edit13: TEdit; Edit14: TEdit; Edit10: TEdit; Edit15: TEdit; Label12: TLabel; ednama: TEdit; Label2: TLabel; Label3: TLabel; A-9

BitBtn3: TBitBtn; DBGrid1: TDBGrid; procedure ComPort1RxChar(Sender: TObject; Count: Integer); procedure btntambahclick(sender: TObject); procedure btnkeluarclick(sender: TObject); procedure Timer2Timer(Sender: TObject); procedure FormCreate(Sender: TObject); procedure BitBtn1Click(Sender: TObject); procedure Timer3Timer(Sender: TObject); procedure BitBtn2Click(Sender: TObject); procedure FormActivate(Sender: TObject); procedure Button2Click(Sender: TObject); procedure BitBtn3Click(Sender: TObject); private { Private declarations public { Public declarations var frmdaftarparkir: TfrmDaftarParkir; awal,akhir : tdatetime; state: Integer; Str:String; add:boolean; login:boolean; logout:boolean; implementation uses U_Module, U_MenuUtama; {$R *.dfm procedure TfrmDaftarParkir.ComPort1RxChar(Sender: TObject; Count: Integer); comport1.readstr(str,count); edrfid.text:=edrfid.text+str; if (copy(edrfid.text,1,1)='') and (copy(edrfid.text,16,1)='') then str:=copy(edrfid.text,2,length(edrfid.text)-4); edrfid.text:=str; edit1.text := edrfid.text; edrfid.clear; with dm.qdata do close; sql.clear; sql.add('select namaplg from member'); A-10

sql.add('where norfid =:id'); prepare; parambyname('id').asstring :=edit1.text; open; ednama.text := fields[0].asstring; if(ednama.text='') then showmessage('kartu TIDAK TERDAFTAR'); end else if (str = edit12.text) then comport1.writestr('a'); if (str = edit13.text) then comport1.writestr('b'); if (str = edit10.text) then comport1.writestr('c'); End; procedure TfrmDaftarParkir.btnKeluarClick(Sender: TObject); close; procedure TfrmDaftarParkir.Timer2Timer(Sender: TObject); akhir := time; edit3.text := timetostr(akhir); edit4.text := datetostr(date); procedure TfrmDaftarParkir.FormCreate(Sender: TObject); timer2.interval := 1000; with dm.qproses Do close; sql.clear; sql.add('select * From slotparkir'); open; procedure TfrmDaftarParkir.BitBtn1Click(Sender: TObject); timer2.enabled := false; A-11

timer2.enabled := true; edit3.text := timetostr(time); timer3.enabled := false; timer3.enabled := true; edit2.text := timetostr(time); edit1.clear; edslot.clear; ednama.clear; edrfid.clear; procedure TfrmDaftarParkir.Timer3Timer(Sender: TObject); akhir := time; edit2.text := timetostr(akhir); procedure TfrmDaftarParkir.btnTambahClick(Sender: TObject); With dm.qdata Do Begin Sql.Add('Insert Into parkirlog(norfid, slot, tanggal, Login) '+ 'Values(:no, :sl, :tg, :li)'); Prepare; ParamByName('no').AsString := trim(edit1.text); ParamByName('tg').AsString := trim(edit4.text); ParamByName('li').AsString := trim(edit3.text); ParamByName('sl').AsString := trim(edslot.text); ExecSql; timer2.enabled := false; awal := time; edit3.text := timetostr(time); End; dm.trslot.commit; With dm.qproses Do Begin Sql.Add('Select * From slotparkir'); Open; procedure TfrmDaftarParkir.BitBtn2Click(Sender: TObject); A-12

with dm.qdata do close; sql.clear; sql.add('select slot,tanggal,login from parkirlog'); sql.add('where norfid =:id'); prepare; parambyname('id').asstring := edit1.text; open; edslot.text :=fields[0].asstring; edit4.text :=fields[1].asstring; edit3.text := fields[2].asstring; with dm.qdata do close; sql.clear; sql.add('update slotparkir set norfid =:dn where slot =:st'); prepare; parambyname('st').asstring := trim(edslot.text); parambyname('dn').asstring := trim(''); execsql; dm.trslot.commit; with dm.qdata do sql.clear; sql.add('delete from parkirlog'); sql.add('where norfid =:id'); prepare; parambyname('id').asstring := edit1.text; execsql; dm.trslot.commit; with dm.qdata do Sql.Add('Insert Into log(norfid, slot, tanggal, Login,logout) '+ 'Values(:no, :sl, :tg, :li,:lo)'); Prepare; ParamByName('no').AsString := trim(edit1.text); ParamByName('sl').AsString := trim(edslot.text); ParamByName('tg').AsString := trim(edit4.text); ParamByName('li').AsString := trim(edit3.text); ParamByName('lo').AsString := trim(edit2.text); ExecSql; timer3.enabled := false; A-13

awal := time; edit2.text := timetostr(time); End; dm.trslot.commit; With dm.qproses Do Begin Sql.Add('Select * From slotparkir'); Open; procedure TfrmDaftarParkir.FormActivate(Sender: TObject); showmessage('harap Lakukan Setting Comport'); statusbar1.panels[1].text:='disconnected'; edcom.setfocus; procedure TfrmDaftarParkir.Button2Click(Sender: TObject); comport1.port:=edcom.text; comport1.open; statusbar1.panels[1].text:='connected'; statusbar1.panels[0].text:='port in use ' + comport1.port; procedure TfrmDaftarParkir.BitBtn3Click(Sender: TObject); with dm.qdata do close; sql.clear; sql.add('update slotparkir set Norfid =:dn where slot =:st'); prepare; parambyname('st').asstring := trim(edslot.text); parambyname('dn').asstring := trim(edit1.text); execsql; dm.trslot.commit; With Dm.QData Do Begin Sql.Add('Select norfid From slotparkir'); A-14

sql.add('where slot =:st'); Prepare; parambyname('st').asstring := trim(edit11.text); Open; edit12.text := trim(fields[0].asstring); With Dm.QData Do Begin Sql.Add('Select norfid From slotparkir'); sql.add('where slot =:sl'); Prepare; parambyname('sl').asstring := trim(edit15.text); Open; edit13.text := trim(fields[0].asstring); With Dm.QData Do Begin Sql.Add('Select norfid From slotparkir'); sql.add('where slot =:sl'); Prepare; parambyname('sl').asstring := trim(edit14.text); Open; edit10.text := trim(fields[0].asstring); With dm.qproses Do Begin Sql.Add('Select * From slotparkir'); Open; end. Program Daftar Member unit U_DaftarPelanggan; interface uses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, StdCtrls, ExtCtrls, Grids, DBGrids, Buttons, ToolWin, ComCtrls, DB, IBCustomDataSet, IBQuery, RpCon, RpConDS, RpDefine, RpRave; A-15

type TfrmDPelanggan = class(tform) btnexit: TBitBtn; dbgmobil: TDBGrid; StatusBar1: TStatusBar; btnsimpan: TBitBtn; BitBtn2: TBitBtn; procedure btnsimpanclick(sender: TObject); procedure BitBtn2Click(Sender: TObject); procedure btnexitclick(sender: TObject); procedure FormActivate(Sender: TObject); private { Private declarations public { Public declarations var frmdpelanggan: TfrmDPelanggan; implementation uses U_InputPelanggan, U_MenuUtama, U_Module, U_HapusPelanggan,U_SlotParkir; {$R *.dfm procedure TfrmDPelanggan.btnSimpanClick(Sender: TObject); frmpelanggan.show; frmdpelanggan.hide; procedure TfrmDPelanggan.BitBtn2Click(Sender: TObject); frmhapuspelanggan.show; procedure TfrmDPelanggan.btnExitClick(Sender: TObject); close; procedure TfrmDPelanggan.FormActivate(Sender: TObject); with dm.qproses Do close; sql.clear; sql.add('select * From member order by kodeplg'); A-16

open; end. Program Daftar Log unit U_DataLog; interface uses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, StdCtrls, Buttons, Grids, DBGrids; type TfrmDataLog = class(tform) DBGrid1: TDBGrid; btnexit: TBitBtn; procedure FormActivate(Sender: TObject); procedure btnexitclick(sender: TObject); private { Private declarations public { Public declarations var frmdatalog: TfrmDataLog; implementation uses U_Module, U_MenuUtama; {$R *.dfm procedure TfrmDataLog.FormActivate(Sender: TObject); with dm.qproses Do close; sql.clear; sql.add('select * From log order by norfid'); open; procedure TfrmDataLog.btnExitClick(Sender: TObject); close; A-17

end. Program Hapus Member unit U_HapusPelanggan; interface uses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, StdCtrls, Buttons; type TfrmHapusPelanggan = class(tform) Label1: TLabel; edkodeplg: TEdit; btnok: TBitBtn; btncancel: TBitBtn; procedure btnokclick(sender: TObject); procedure btncancelclick(sender: TObject); private { Private declarations public { Public declarations var frmhapuspelanggan: TfrmHapusPelanggan; implementation uses U_Module, U_InputPelanggan, U_DaftarPelanggan; {$R *.dfm procedure TfrmHapusPelanggan.btnOkClick(Sender: TObject); With dm.qproses Do Begin Sql.Add('Delete From slotparkir'); Sql.Add('Where NoRfid =:nr'); Prepare; ParamByName('nr').AsString := EdKodePlg.Text; ExecSql; End; dm.trslot.commit; MessageDlg('Hapus data yang telah dipilih?',mtwarning,[mbok],0); frmdpelanggan.show; frmhapuspelanggan.hide; A-18

With dm.qproses Do Begin Sql.Add('Select * From slotparkir'); Open; procedure TfrmHapusPelanggan.btnCancelClick(Sender: TObject); frmdpelanggan.show; frmhapuspelanggan.hide; end A-19

A-20

A-21