Sabtu, 28 Juli 2018

BAB 19

BAB XIX. FILTER


unit UnitBab19;
interface
uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, StdCtrls, Grids, DBGrids, DB, DBTables;
type
  TForm1 = class(TForm)
    TBTRANSB: TTable;
    Dstransb: TDataSource;
    Dbgtransb: TDBGrid;
    Label1: TLabel;
    Label2: TLabel;
    EDNOFAKL: TEdit;
    EDNOFAKH: TEdit;
    CTAMPIL: TButton;
    CSELESAI: TButton;
    procedure CSELESAIClick(Sender: TObject);
    procedure CTAMPILClick(Sender: TObject);
    procedure EDNOFAKLChange(Sender: TObject);
    procedure EDNOFAKHChange(Sender: TObject);
  private
    { Private declarations }
  public
    { Public declarations }
  end;
var
  Form1: TForm1;
implementation
{$R *.dfm}
procedure TForm1.CSELESAIClick(Sender: TObject);
begin
application.terminate;
end;
procedure TForm1.CTAMPILClick(Sender: TObject);
begin
TBTRANSB.INDEXNAME:='SNOTA';
TBTRANSB.SETRANGE([EDNOFAKL.text], [EDNOFAKH.Text]);
end;
procedure TForm1.EDNOFAKLChange(Sender: TObject);
begin
BTAMPIL.DEFAULT:=TRUE;
end;
procedure TForm1.EDNOFAKHChange(Sender: TObject);
begin
BTAMPIL.DEFAULT:=TRUE;
end;
end.
HASIL PROGRAM:

Jumat, 27 Juli 2018

BAB 18

BAB XVIII. MENGINPUT DATA TABEL HUBUNGAN DUA ATAU LEBIH TABEL


Unit prak18;
interface
uses
Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,
Db, DBTables, Grids, DBGrids, StdCtrls, jpeg, ExtCtrls;
type
TForm1 = class(TForm)
Label2 : Tlabel;
Label3 : Tlabel;
Label4 : Tlabel;
Label5  : Tlabel;
EDNONOTA : TEdit;
EDKDSUP : TEdit;
EDTGLNOTA : TEdit;
EDNMSUP : TEdit;
DBGSTRANSB : TDGrid;
GroupBox1: TGroupBox;
GroupBox2 : TGroupBox;
Label6 : TLabel;
EDTOTAL : TEdit;
DBGSUPPLIER : TDBGrid;
DBGBARANG : TDBGrid;
CSimpan : TButton;
CBatal : TButton;
CSelesai : TButton;
ENMSUP : TEdit;
Label7 : TLabel;
Label8 : Tlabel;
ENMBRG : TEdit;
TBBARANG : TTable;
DSBARANG : TDataSource;
TBSUPPLIER : TTable;
DSSUPPLIER : TDataSource;
TBNOTA : TTable;
DSNOTA : TDataSource;
TBTRANSB : TTable;
DSTRANSB : TDataSource;
Label1 : TLabel;
Label9 : TLabel;
Image1 : TImage;
procedure FormCreate (sender : Tobject);
procedure EDNONOTAKeyPress (sender : TObject ; var
Key: Char);
procedure EDTGLNOTAKeyPress (Sender : TObject; var key : char);
procedure EDKDSUPKeyPress(sender:Tobject; var key : char);
procedure EDTGLNOTAExit(sender:Tobject);
procedure DBGSTRANSBKeyPress(sender:Tobject; var key : Char);
procedure CSIMPANClick(sender:Tobject);
procedure CBATALClick(sender : Tobejct);
procedure CSELESAIClick (sender : Tobject);
procedure EDKDSUPChange(sender:Tobject);
procedure ENMBRGKeyPress(sender : Tobject; var Key : char);
procedure ENMBRGChange (sender : Tobject);
procedure ENMSUPKeyPress (sender: Tobject ; var key : Char);
procedure ENMSUPChange (sender:Tobject);
procedure EDNMSUPKeyPress(sender : Tobject ; var key : char);
private
{ Private declarations }
public
{public declarations }
end;
var
Form1 : TForm1;
MTOTAL : SINGLE;
implementation
{$R*.DFM}
procedure TForm1.FormCreate(sender : Tobject);
var I : Integer;
begin
EDTOTAL.ENABLED := TRUE;
EDNMSUP.ENABLED := TRUE;
MTOTAL := 0;
EDTOTAL.text := Format ('%20.0m',[MTOTAL]);
EDNONOTA.text:=' ';
EDKDSUP.text :=' ';
EDNMSUP.text:=' ';
EDTGLNOTA.text:=DATATOSTR (NOW);
TBSTRANSB.First;
while not Tbstransb.eof do
begin
Tbstransb.delete;
end;
for I := 1 to 20 do
begin
Tbstransb.append;
Tbstransb['KDBRG']:=' ';
end;
TBstransb.first;
beep;
end;
procedure TForm1.DBGSTRANSBKeyPress (sender : Tobeject; Var Key : Char);
var
ADA:BOOLEAN;
JMLLAMA : SINGLE;
JMLBARU : SINGLE;
begin
IF NOT (key=CHR(13)) then exit;
if DBGSTRANSB.selectedindex>1 then
begin
end;
if DBGSTRANSB.selectedindex=0 then
begin
TBBARANG.indexname:='BARANG';
try
ADA:TBBARANG.FINDKEY ([Uppercase(Tbstransb['NMBRG'])]);
expect
DBGSTRANSb.selectedindex:=1;
exit
end;
if ada then
begin
tbstransb.edit;
tbstransb['kdbrg']:=tbbarang['kdbrg'];
tbstransb['nmbrg']:=tbbarang['nmbrg'];
beep;
dbgstransb.selectedindex:=2;
end
else
dbgstransb.selectedindex:=1;
exit;
end;
if dbgstransb.selectedindex=1 then
begin
tbbarang.indexname:=' ';
try
ADA:=Tbarang.findkey([uppercase(tbstransb['KDBRG'])]);
expect
dbgstransb.selectedindex:=1;
exit
if ADA then
begin
tbstransb.edit;
tbstransb['KDBRG']:=TBbarang['KDBRG'];
tbstransb['NMBRG']:=TBbarang['NMBRG'];
beep;
end
else
begin
dbgstransb.selectedindex:=1;
exit
end;
dbgstransb.selectedindex:=2;
exit
end;
if dbgstransb.selectedindex=2 then
begin
jmlama:=Tbstransb.fields[4].asfloat;
tbstransb['jumlah']:=tbstransb['hrgbeli']*tbstransb ['qtybeli'];
jmlbaru:=tbstransb.field[4].asfloat;
mtotal:=mtotal+(jmlbaru-jmllama);
edtotal.text:=format('%20.2m',[mtotal]);
dbgstransb.selectedindex=3 ;
exit
end;
if dbgstransb.selectindex= 3 then
begin
jmllama:=tbstransb.field[4].asfloat;
tbtransb['jumlah']:=tbstransb['hrgbeli']*tbstransb['qtybeli'];

jmlbaru:=tbstransb.field[4].asfloat;
mtotal:=mtotal+(jmlbaru-jmllama);
edtotal.text:=format('%20.2m',[mtotal]);
dbgstransb.selectedindex:=0;
tbstransb.next;
end;
end;
procedure TForm1.EDNONOTAKeyPress(sender : Tobject; var key : Char);
begin
if key=chr(13) then
EDTGLNOTA.setfocus;
end;
procedure TForm1.EDTGLNOTAKeyPress(sender:Tobject; var key : Char);
begin
if key=chr(13) then
EDKDSUP.setfocus;
end;
procedure TForm1.EDKSDUPKeyPress(sender : Tobject; var key : char);
begin
if key=chr(13) then
dbgstransb.setfocus;
end;
procedure TForm1.EDTGLNotaExit(sender:Tobject);
var
Cektgl:=strtodate(edtglnota.text);
expect
showmessage('format tanggal : DD-MM-YYYY)');
edtglnota.setfocus;
end;
end;
procedure TForm1.CSIMPANClick(sender : Tobject);
var ada : Boolean;
begin
tbstransb.first;
tbbarang.indexname:=' ';
while not tbstranb.eof do
begin
ada:=tbbarag.findkey ([tbstransb['kdbrg']]);
if ada then
try
begin
tbstrans.append;
tbstransb['nonota']:=ednonota.text;
tbstransb['kdbrg']:=tbstransb['kdbrg'];
tbstransb['qtybeli']:=tbstransb{'qtybeli'];
tbstransb['hrgbeli']:=tbstransb['hrgbeli'];
end;
except
showmessage(ednonota.text+','+edtglnota.text+','+tbstransb['kdbrg']+chr(13)+'sudah ada dalam file');
end;
tbstransb.next;
end;
tbstransb.append;
tbstransb['nonota']:=ednonot.text;;
end;
procedure TForm1.CbatalClick(sender:tobject);
begin
formcreate(sender);
end;
procedure TFrom1.CselesaiClick(sender:Tobject);
begin
application.terminate;
end;
end.

BAB 17

BAB XVII. MENCETAK DAN MELIHAT LAYAR DATA TABEL


unit UnitBab17;
interface
uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, StdCtrls;
type
  TForm1 = class(TForm)
    Label1: TLabel;
    GroupBox1: TGroupBox;
    CLAYAR: TButton;
    CPRINTER: TButton;
    CSELESAI: TButton;
    procedure CSELESAIClick(Sender: TObject);
    procedure CLAYARClick(Sender:TObject);
    procedure CPRINTERClick(Sender:TObject);
  private
    { Private declarations }
  public
    { Public declarations }
  end;
var
  Form1: TForm1;
implementation
{$R *.dfm}
procedure TForm1.CSELESAIClick(Sender: TObject);
begin
application.Terminate;
end;
procedure TForm1.CLAYARClick(Sender:TObejct);
begin
QRBARANG.PREVIEW;
end;
procedure TForm1.CPRINTERClick(Sender:TObejct);
begin
QRBARANG.PRINT;
end;
end.

HASIL PROGRAM:

Rabu, 25 Juli 2018

BAB 16

BAB XVI. MELIHAT DATA TABEL


unit UnitBab16;
interface
uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, DB, DBTables, Grids, DBGrids, StdCtrls, ExtCtrls;
type
  TForm1 = class(TForm)
    Label1: TLabel;
    CSELESAI: TButton;
    Gridbarang: TDBGrid;
    DataSource1: TDataSource;
    Tbbarang: TTable;
    Label2: TLabel;
    Label3: TLabel;
    EDNMBRG: TEdit;
    procedure CSELESAIClick(Sender: TObject);
    procedure EDNMBRGChange(Sender: TObject);
    procedure FormCreate(Sender: TObject);
  private
    { Private declarations }
  public
    { Public declarations }
  end;
var
  Form1: TForm1;
implementation
{$R *.dfm}
procedure TForm1.CSELESAIClick(Sender: TObject);
begin
application.Terminate;
end;
procedure TForm1.EDNMBRGChange(Sender: TObject);
begin
with tbbarang do
BEGIN
INDEXNAME:='NAMABRG';
FINDNEAREST([EDNMBRG.Text]);
end;
end;
end.

HASIL PROGRAM:

Selasa, 24 Juli 2018

BAB 15

BAB XV. MENGHAPUS DATA TABEL

unit UnitBab15;
interface
uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, StdCtrls, DB, DBTables;
type
  TForm1 = class(TForm)
    Label1: TLabel;
    Label2: TLabel;
    Label3: TLabel;
    Label4: TLabel;
    Label5: TLabel;
    Label6: TLabel;
    Label7: TLabel;
    Label8: TLabel;
    Label9: TLabel;
    EDKDBRG: TEdit;
    EDNMBRG: TEdit;
    EDJENIS: TEdit;
    CMBKEMASAN: TComboBox;
    EDUKURAN: TEdit;
    CMBWARNA: TComboBox;
    EDQTY: TEdit;
    EDREORDER: TEdit;
    CHAPUS: TButton;
    CBATAL: TButton;
    CSELESAI: TButton;
    Tbbarang: TTable;
    DataSource1: TDataSource;
    procedure EDKDBRGChange(Sender: TObject);
    procedure CSELESAIClick(Sender: TObject);
    procedure CBATALClick(Sender: TObject);
    procedure CMBKEMASANChange(Sender: TObject);
    procedure CMBWARNAChange(Sender: TObject);
    procedure CHAPUSClick(Sender: TObject);
    procedure FormCreate(Sender: TObject);
  private
    { Private declarations }
  public
    { Public declarations }
  end;
var
  Form1: TForm1;
implementation
{$R *.dfm}
procedure TForm1.EDKDBRGChange(Sender: TObject);
var
ADA:BOOLEAN;
MREORDER,MQTY:SINGLE;
begin
if length(EDKDBRG.Text)<20 then
EXIT;
ADA:=TBBARANG.FINDKEY([EDKDBRG.Text]);
if ADA then
begin
BEEP;
EDKDBRG.focused;
EDKDBRG.selectall;
EDNMBRG.Text:=TBBARANG['NMBRG'];
EDJENIS.text:=TBBARANG['JENIS'];
CMBKEMASAN.Text:=TBBARANG['KEMASAN'];
EDUKURAN.Text:=TBBARANG['UKURAN'];
CMBWARNA.Text:=TBBARANG['WARNA'];
MQTY:=TBBARANG['QTY'];
MREORDER:=TBBARANG['REORDER'];
EDQTY.Text:=FORMAT('%4.0n',[MQTY]);
EDREORDER.text:=FORMAT('%4.0n',[MREORDER]);
EDNMBRG.focused;
EDKDBRG.selectall;
END
else
showmessage('DATA BARANG TAK ADA');
EXIT
END;
procedure TForm1.CSELESAIClick(Sender: TObject);
begin
application.terminate;
end;
procedure TForm1.CBATALClick(Sender: TObject);
begin
EDKDBRG.setfocus;
end;
procedure TForm1.CMBKEMASANChange(Sender: TObject);
begin
if uppercase(CMBKEMASAN.text)='D' then
CMBKEMASAN.text:='DUZ'
else if uppercase (CMBKEMASAN.text)='K' then
CMBKEMASAN.text:='KALENG'
else if uppercase (CMBKEMASAN.text)='P' then
CMBKEMASAN.Text:='PLASTIK'
else if uppercase (CMBKEMASAN.text)='B' then
CMBKEMASAN.text:='BOTOL'
else
begin
CMBKEMASAN.selectall;
CMBKEMASAN.setfocus;
end;
end;
procedure TForm1.CMBWARNAChange(Sender: TObject);
begin
 if uppercase(CMBWARNA.Text)='H' then
CMBWARNA.text:='HIJAU'
else if uppercase (CMBWARNA.Text)='M' then
CMBWARNA.text:='MERAH'
else if uppercase(CMBWARNA.Text)='K' then
CMBWARNA.Text:='KUNING'
else if uppercase(CMBWARNA.Text)='B' then
CMBWARNA.text:='BIRU'
else if uppercase(CMBWARNA.Text)='C' then
CMBWARNA.Text:='COKLAT'
else
begin
CMBWARNA.selectall;
CMBWARNA.setfocus;
END;
end;
procedure TForm1.CHAPUSClick(Sender: TObject);
begin
TBBARANG.Delete;
CBATALCLICK(SENDER);
end;
end.

HASIL PROGRAM:

BAB 14

BAB XIV. MENGEDIT DATA TABEL


unit UnitBab14;
interface
uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, StdCtrls, DB, DBTables;
type
  TForm1 = class(TForm)
    Label1: TLabel;
    Label2: TLabel;
    Label3: TLabel;
    Label4: TLabel;
    Label5: TLabel;
    Label6: TLabel;
    Label7: TLabel;
    Label8: TLabel;
    Label9: TLabel;
    EDKDBRG: TEdit;
    EDNMBRG: TEdit;
    EDJENIS: TEdit;
    CMBKEMASAN: TComboBox;
    EDUKURAN: TEdit;
    CMBWARNA: TComboBox;
    EDQTY: TEdit;
    EDREORDER: TEdit;
    CSIMPAN: TButton;
    CBATAL: TButton;
    CSELESAI: TButton;
    Tbbarang: TTable;
    DataSource1: TDataSource;
    procedure CSIMPANClick(Sender: TObject);
    procedure CBATALClick(Sender: TObject);
    procedure CSELESAIClick(Sender: TObject);
    procedure CMBKEMASANChange(Sender: TObject);
    procedure CMBWARNAChange(Sender: TObject);
    procedure EDKDBRGChange(Sender: TObject);
    procedure FormCreate(Sender: TObject);
  private
    { Private declarations }
  public
    { Public declarations }
  end;
var
  Form1: TForm1;
implementation
{$R *.dfm}
procedure TForm1.CSIMPANClick(Sender: TObject);
Var
MREORDER,MOQTY,KODE:INTEGER;
begin
val(EDQTY.Text,MOQTY,KODE);
val(EDREORDER.Text,MREORDER,KODE);
TBBARANG.EDIT;
TBBARANG['KDBRG']:=EDKDBRG.text;
TBBARANG['NMBRG']:=EDNMBRG.text;
TBBARANG['JENIS']:=EDJENIS.text;
TBBARANG['KEMASAN']:=CMBKEMASAN.text;
TBBARANG['UKURAN']:=EDUKURAN.text;
TBBARANG['WARNA']:=CMBWARNA.text;
TBBARANG['QTY']:=MOQTY;
TBBARANG['REORDER']:=MREORDER;
CBATALCLICK(SENDER);
end;
procedure TForm1.CBATALClick(Sender: TObject);
begin
EDKDBRG.setfocus;
end;
procedure TForm1.CSELESAIClick(Sender: TObject);
begin
application.terminate;
end;
procedure TForm1.CMBKEMASANChange(Sender: TObject);
begin
if uppercase(CMBKEMASAN.text)='D' then
CMBKEMASAN.text:='DUZ'
else if uppercase (CMBKEMASAN.text)='K' then
CMBKEMASAN.text:='KALENG'
else if uppercase (CMBKEMASAN.text)='P' then
CMBKEMASAN.Text:='PLASTIK'
else if uppercase (CMBKEMASAN.text)='B' then
CMBKEMASAN.text:='BOTOL'
else
begin
CMBKEMASAN.selectall;
CMBKEMASAN.setfocus;
end;
end;
procedure TForm1.CMBWARNAChange(Sender: TObject);
begin
 if uppercase(CMBWARNA.Text)='H' then
CMBWARNA.text:='HIJAU'
else if uppercase (CMBWARNA.Text)='M' then
CMBWARNA.text:='MERAH'
else if uppercase(CMBWARNA.Text)='K' then
CMBWARNA.Text:='KUNING'
else if uppercase(CMBWARNA.Text)='B' then
CMBWARNA.text:='BIRU'
else if uppercase(CMBWARNA.Text)='C' then
CMBWARNA.Text:='COKLAT'
else
begin
CMBWARNA.selectall;
CMBWARNA.setfocus;
END;
end;
procedure TForm1.EDKDBRGChange(Sender: TObject);
var
ADA:BOOLEAN;
MREORDER,MQTY:SINGLE;
begin
if length(EDKDBRG.Text)<20 then
EXIT;
ADA:=TBBARANG.FINDKEY([EDKDBRG.Text]);
if ADA then
begin
BEEP;
EDKDBRG.focused;
EDKDBRG.selectall;
EDNMBRG.Text:=TBBARANG['NMBRG'];
EDJENIS.text:=TBBARANG['JENIS'];
CMBKEMASAN.Text:=TBBARANG['KEMASAN'];
EDUKURAN.Text:=TBBARANG['UKURAN'];
CMBWARNA.Text:=TBBARANG['WARNA'];
MQTY:=TBBARANG['QTY'];
MREORDER:=TBBARANG['REORDER'];
EDQTY.Text:=FORMAT('%4.0n',[MQTY]);
EDREORDER.text:=FORMAT('%4.0n',[MREORDER]);
EDNMBRG.focused;
EDKDBRG.selectall;
END
else
showmessage('DATA BARANG TAK ADA');
EXIT
END;
end.

HASIL PROGRAM:


Minggu, 22 Juli 2018

BAB 13

BAB XIII. MENGINPUT DATA TABEL


unit UnitBab13;
interface
uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, StdCtrls, DB, ADODB, DBTables;
type
  TForm1 = class(TForm)
    Label1: TLabel;
    Label2: TLabel;
    Label3: TLabel;
    Label4: TLabel;
    Label5: TLabel;
    Label6: TLabel;
    Label7: TLabel;
    Label8: TLabel;
    Label9: TLabel;
    EDKDBRG: TEdit;
    EDNMBRG: TEdit;
    EDJENIS: TEdit;
    CMBKEMASAN: TComboBox;
    EDUKURAN: TEdit;
    CMBWARNA: TComboBox;
    EDQTY: TEdit;
    EDREORDER: TEdit;
    CSIMPAN: TButton;
    CBATAL: TButton;
    CSELESAI: TButton;
    Dsbarang: TDataSource;
    TBBARANG: TTable;
    ADOConnection1: TADOConnection;
    ADOQuery1: TADOQuery;
    procedure CSELESAIClick(Sender: TObject);
    procedure CBATALClick(Sender: TObject);
    procedure CSIMPANClick(Sender: TObject);
    procedure CMBKEMASANChange(Sender: TObject);
    procedure CMBWARNAChange(Sender: TObject);
    procedure EDKDBRGChange(Sender: TObject);
    procedure FormCreate(Sender: TObject);
  private
    { Private declarations }
  public
    { Public declarations }
  end;
var
  Form1: TForm1;
implementation
{$R *.dfm}
procedure TForm1.CSELESAIClick(Sender: TObject);
begin
application.terminate;
end;
procedure TForm1.CBATALClick(Sender: TObject);
begin
EDKDBRG.setfocus;
end;
procedure TForm1.CSIMPANClick(Sender: TObject);
Var
MREORDER,MOQTY,KODE:INTEGER;
begin
val(EDQTY.Text,MOQTY,KODE);
val(EDREORDER.Text,MREORDER,KODE);
TBBARANG.APPEND;
TBBARANG['KDBRG']:=EDKDBRG.text;
TBBARANG['NMBRG']:=EDNMBRG.text;
TBBARANG['JENIS']:=EDJENIS.text;
TBBARANG['KEMASAN']:=CMBKEMASAN.text;
TBBARANG['UKURAN']:=EDUKURAN.text;
TBBARANG['WARNA']:=CMBWARNA.text;
TBBARANG['QTY']:=MOQTY;
TBBARANG['REORDER']:=MREORDER;
CBATALCLICK(SENDER);
end;
procedure TForm1.CMBKEMASANChange(Sender: TObject);
begin
if uppercase(CMBKEMASAN.Text)='D' then
CMBKEMASAN.text:='DUZ'
else if uppercase(CMBKEMASAN.Text)='K' then
CMBKEMASAN.text:='KALENG'
else if uppercase (CMBKEMASAN.text)='P' then
CMBKEMASAN.Text:='PLASTIK'
else if uppercase (CMBKEMASAN.Text)='B' then
CMBKEMASAN.Text:='BOTOL'
else
begin
CMBKEMASAN.SelectAll;
CMBKEMASAN.setfocus;
END;
end;
procedure TForm1.CMBWARNAChange(Sender: TObject);
begin
if uppercase(CMBWARNA.Text)='H' then
CMBWARNA.text:='HIJAU'
else if uppercase (CMBWARNA.Text)='M' then
CMBWARNA.text:='MERAH'
else if uppercase(CMBWARNA.Text)='K' then
CMBWARNA.Text:='KUNING'
else if uppercase(CMBWARNA.Text)='B' then
CMBWARNA.text:='BIRU'
else if uppercase(CMBWARNA.Text)='C' then
CMBWARNA.Text:='COKLAT'
else
begin
CMBWARNA.selectall;
CMBWARNA.setfocus;
END;
end;
procedure TForm1.EDKDBRGChange(Sender: TObject);
var
ADA:BOOLEAN;
MREORDER,MQTY:SINGLE;
begin
if length(EDKDBRG.Text)<20 then
EXIT;
ADA:=TBBARANG.FINDKEY([EDKDBRG.Text]);
if ADA then
begin
BEEP;
EDKDBRG.focused;
EDKDBRG.selectall;
EDNMBRG.Text:=TBBARANG['NMBRG'];
EDJENIS.text:=TBBARANG['JENIS'];
CMBKEMASAN.Text:=TBBARANG['KEMASAN'];
EDUKURAN.Text:=TBBARANG['UKURAN'];
CMBWARNA.Text:=TBBARANG['WARNA'];
MQTY:=TBBARANG['QTY'];
MREORDER:=TBBARANG['REORDER'];
EDQTY.Text:=FORMAT('%4.0n',[MQTY]);
EDREORDER.text:=FORMAT('%4.0n',[MREORDER]);
exit
END;
EDNMBRG.Text:=' ';
EDJENIS.text:=' ';
CMBKEMASAN.text:=' ';
EDUKURAN.text:=' ';
CMBWARNA.Text:=' ';
EDQTY.Text:=' ';
EDREORDER.Text:=' ';
EDNMBRG.color:=CLWINDOW;
EDJENIS.color:=CLWINDOW;
CMBKEMASAN.color:=CLWINDOW;
EDUKURAN.color:=CLWINDOW;
CMBWARNA.Color:=CLWINDOW;
EDQTY.color:=CLWINDOW;
EDREORDER.COLOR:=CLWINDOW;
EDNMBRG.Enabled:=TRUE;
EDJENIS.Enabled:=TRUE;
CMBKEMASAN.Enabled:=TRUE;
EDUKURAN.Enabled:=TRUE;
CMBWARNA.Enabled:=TRUE;
EDQTY.Enabled:=TRUE;
EDREORDER.Enabled:=TRUE;
EDNMBRG.setfocus;
end;
end.

 HASIL PROGRAM:


BAB 11

BAB XI. OBYEK SCROLL BAR


unit UnitBab11;
interface
uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, StdCtrls;
type
  TForm1 = class(TForm)
    Label1: TLabel;
    Label3: TLabel;
    Label4: TLabel;
    Label5: TLabel;
    Label6: TLabel;
    Label2: TLabel;
    SBPL: TScrollBar;
    SBPD: TScrollBar;
    SBLL: TScrollBar;
    SBLD: TScrollBar;
    EDPL: TEdit;
    EDPD: TEdit;
    EDLL: TEdit;
    EDLD: TEdit;
    EDLUAS: TEdit;
    CSELESAI: TButton;
    procedure CSELESAIClick(Sender: TObject);
    procedure SBPLChange(Sender: TObject);
    procedure FormCreate(Sender: TObject);
  private
    { Private declarations }
  public
    { Public declarations }
  end;
var
  Form1: TForm1;
implementation
{$R *.dfm}
procedure TForm1.CSELESAIClick(Sender: TObject);
begin
APPLICATION.TERMINATE
end;
procedure TForm1.SBPLChange(Sender: TObject);
begin
EDPL.Text:=FORMAT('%18.0N',[SBPL.Position/100]);
EDPD.Text:=FORMAT('%18.0N',[SBPD.Position/100]);
EDLL.TEXT:=FORMAT('%18.0N',[SBLL.Position/100]);
EDLD.TEXT:=FORMAT('%18.0N',[SBLD.Position/100]);
EDLUAS.TEXT:=FORMAT('%18.0N',[SBPL.POSITION/100*SBLL.POSITION/100-
SBPD.Position/100*SBLD.Position/100]);
end;
end.

HASIL PROGRAM:

Sabtu, 21 Juli 2018

BAB 10

BAB X. OBYEK COMBO BOX


unit UnitBab10;
interface
uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, StdCtrls;
type
  TForm1 = class(TForm)
    Label1: TLabel;
    Label2: TLabel;
    Label3: TLabel;
    Label4: TLabel;
    Label5: TLabel;
    EDHRGKONV: TEdit;
    EDPANJANG: TEdit;
    EDLEBAR: TEdit;
    EDLUAS: TEdit;
    CMULAI: TButton;
    CSELESAI: TButton;
    CMBJNSUKR: TComboBox;
    procedure CMULAIClick(Sender: TObject);
    procedure EDPANJANGChange(Sender: TObject);
    procedure CSELESAIClick(Sender: TObject);
    procedure FormCreate(Sender: TObject);
  private
    { Private declarations }
  public
    { Public declarations }
  end;
var
  Form1: TForm1;
implementation
{$R *.dfm}
procedure TForm1.CMULAIClick(Sender: TObject);
begin
edpanjang.text:=' ';
edlebar.Text:=' ';
edluas.text:=' ';
end;
procedure TForm1.EDPANJANGChange(Sender: TObject);
var
lebar,panjang,luas,hrgkonv :single;
kode:integer;
begin
if cmbjnsukr.text='M' then hrgkonv:=100;
if cmbjnsukr.text='CM' then hrgkonv:=1;
edhrgkonv.text:=format('%8.0n',[hrgkonv]);
val(edpanjang.Text,panjang,kode);
val(edlebar.text,lebar,kode);
val(edhrgkonv.Text,hrgkonv,kode);
luas :=(panjang*hrgkonv)*(lebar*hrgkonv);
edluas.text:=format('%20.0n',[luas]);
end;
procedure TForm1.CSELESAIClick(Sender: TObject);
begin
application.terminate;
end;

HASIL PROGRAM:

Jumat, 20 Juli 2018

BAB 9

BAB IX. PROSES PENGULANGAN DENGAN REPEAT UNTIL


unit prak9;
interface
uses
 Windows, Messages, SysUtils, Classes, Graphics, Controls, Form, Dialogs,
  stdCtrls;

type
TForm1 : class(TForm)
   Label1 : Tlabel;
   Label2 : Tlabel;
   TPOSISI : TEdit;
   Label3 : Tlabel;
   Label4 : Tlabel;
   Label5 : Tlabel;
   Label6 : Tlabel;
   Ts : TEdit;
   Label7 : Tlabel;
   CMULAI : TButton;
   CSELESAI : TButton;
Procedure CMULAIClick(sender : Tobject);
Procedure FormCreate(sender : Tobject);
Procedure CSELESAIClick(sender : Tobject);
Procedure TPOSISIChange(sender : Tobject);

Private
 { Private declarations }
Public
 { Public declarations }
implementation
{$R*.DFM}

Procedure TForm1.CMULAIClick (sender : Tobject);
begin
Tposisi.text:=' ';
Ts.text:=' ';
Tposisi.setfocus;
end;

Procedure TForm1.FormCreate( sender : Tobject);
begin
Ts.enabled:=False;
Ts.color:=clbtnface;
end;

Procedure TForm1.CSELESAIClick ( sender:Tobject);
begin
 Application.terminate;
end;

Procedure TForm1.TPOSISIChange(sender : Tobject);
var
 Tsem,A,Ss,I,F,Sposisi:integer;
 Tss:string[30];
begin
 val(Tposisi.text,Sposisi,tsem);
if Sposisi<1
then
SS:=0
else
if Sposisi =1
then
SS:+1
else
begin
A:=2;
SS:=1;
F:=2;
I:=1;
repeat
F:=F*A;
Ss:+SS+(F-1);
I:=I+1;
until I=Sposisi
end;
str(Ss:30,Tss);
Ts.text:=Tss;
end;
end.
 Hasil Program:

Minggu, 15 April 2018

BAB 8

BAB VII.PROSES PENGULANGAN DENGAN FOR

unit Unit1;
interface
uses
 Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
 Dialogs, StdCtrls;
type
 TForm1 = class(TForm)
 Label1: TLabel;
 Label2: TLabel;
 Label3: TLabel;
 Label4: TLabel;
 Label5: TLabel;
 Label6: TLabel;
 Label7: TLabel;
 TPOSISI: TEdit;
 TS: TEdit;
 CMULAI: TButton;
 CSELESAI: TButton;
 procedure CMULAIClick(Sender: TObject);
 procedure FormCreate(Sender: TObject);
 procedure CSELESAIClick(Sender: TObject);
 procedure TPOSISIChange(Sender: TObject);
 private
 { Private declarations }
 public
 { Public declarations }
 end;
var
 Form1: TForm1;
implementation
{$R *.dfm}
procedure TForm1.CMULAIClick(Sender: TObject);
begin
 tposisi.text:=' ';
 ts.text:=' ';
 tposisi.SetFocus;
end;
procedure TForm1.FormCreate(Sender: TObject);
begin
 ts.enabled:=false;
 ts.color:=clbtnface;
end;
procedure TForm1.CSELESAIClick(Sender: TObject);
begin
 Application.Terminate;
end;
procedure TForm1.TPOSISIChange(Sender: TObject);
var
 tsem, a, ss, i, f, sposisi: integer;
 tss: string[30];
begin
 val(tposisi.text,sposisi,tsem);
 if sposisi<1
 then
 ss:=0
 else
 if sposisi=1
 then
 ss:=1
 else
 begin
 a:=2;
 ss:=1;
 f:=2;
 for i:=2 to sposisi
 do
 begin
 f:=f*a;
 ss:=ss+(f-1);
 end;
 end;
 str(ss:30,tss);
 ts.text:=tss;
end;
end.

Hasil Program:

BAB 5

BAB V. PROSES BEBERAPA IF DENGAN CHECK BOX & RADIO BUTTON


Unit prak5;
interface
uses
 Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,
Stdctrls,ExtCtrls;
type
 TForm1 = class(TForm)
   Label1 : Tlabel;
   Label2 : Tlabel;
   Label3 : Tlabel;
   Label4 : Tlabel;
   Label5 : Tlabel;
   Label6 : Tlabel;
   TLM : TEdit;
   THK : TEdit;
   TJUMLAH : TEdit;
   TKDIS : TEdit;
   RadioGroup1 : TRadioGroup;
   RDIS30 : TRadioButton;
   RDIS20 : TRadioButton;
   RDIS10 : TRadioButton;
   RDIS0 : TRadioButton;
   GroupBox1 : TGroupBox;
   CKETANG : TCheckBox;
   CKETUM : TCheckBox;
   CMULAI : TButton;
   CSELESAI : TButton;
Procedure CMULAIClick(sender : Tobject);
Procedure FormCreate (sender : Tobejct);
Procedure CSELESAIClick (sender : Tobject);
Procedure TLMChange (sender : Tobject);

Private
 { Private declarations }
Public
 { Public declarations }
end;

Var
 Form1 : TForm1;
implementation
{$R*.DFM}

Procedure TForm1.CMULAIClick( sender : TObject);
begin
TLM.text :=' ';
THK.text :=' ';
TJUMLAH.text :=' ';
TDIS.text :=' ';
TBAYAR.text :=' ';
TLM.setfocus;
end;

Procedure TForm1.FormCreate (sender : Tobject);
begin
 Tjumlah.enabled := Flase;
 Tjumlah.color := clbtnface;
 Tkdis.enabled := False;
 Tkdis.color := clbtnface;
 Tdis.enabled := False;
 Tdis.color := clbtnface;
 Tbayar.enabled := False;
 Tbayar.color := clbtnface;
 Rdis30.checked := true;
end;
Procedure TForm1.CSELESAIClick (sender : Tobject);
begin
Application.Terminate;
end;

Procedure TForm1.TLMChange (sender : Tobject);
begin
var
 Sjml, Sbyr, Sds, Skdis : string[30];
 Tsem:integer;
 Slm, Shk, Sjumlah, Sdis, Sbayar:single;
begin
 Val(Tlm.text,Slm,Tsem);
 Val(Thk.text,Shk,Tsem);
 Sjumlah:=Slm*Shk;
Str(Sjumlah:30:0,Sjml);
Tjumlah.text:=Sjml;
if Rdis30.checked
then
Sdis:=Sjumlah*0.3;
if Rdis20.checked
then
Sdis:=Sjumlah*0.2;
if Rdis10.checked
then
Sdis:=Sjumlah*0.1;
if Rdis0.checked
then
Sdis:=0;
if Rdis30.checked or Rdis20.checked or Rdis10.checked
then
Skdis :='DAPAT DISKON'
else
Skdis:='TAK DISKON';
if Cketang.checked or Cketkry.checked
then
begin
Sdis:=Sdis+Sjumlah*0.05;
Cketum.state:=cbunchecked;
end;
if Cketang.checked and Cketkry.checked
then
begin
Sdis := Sdis+Sjumlah*0.10;
Cketum.state:=cbunchecked;
end;
if Cketum.checked
then
begin
Cketkry.state:=cbunchecked;
Cketang.state:=cbunchecked;
end;
Tkdis.text:=Skdis;
Sbayar:=Sjumlah-Sdis;
Str(Sbayar:30:0,Sbyr);
Str(Sdis:30:0,Sds);
Tdis.text:=Sds;
Tbayar.text:=Sbyr;
end;
end.
Hasil Program

Sabtu, 14 April 2018

BAB 7

BABVIII. PROSES PENGULANGAN DENGAN WHILE

unit Unit1;
interface
uses
 Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
 Dialogs, StdCtrls;
type
 TForm1 = class(TForm)
 Label1: TLabel;
 Label2: TLabel;
 Label3: TLabel;
 Label4: TLabel;
 Label5: TLabel;
 Label6: TLabel;
 Label7: TLabel;
 TPOSISI: TEdit;
 TS: TEdit;
 CMULAI: TButton;
 CSELESAI: TButton;
 procedure CSELESAIClick(Sender: );
 procedure CMULAIClick(Sender: TObject);
 procedure FormCreate(Sender: TObject);
 procedure TPOSISIChange(Sender: TObject);
 private
 { Private declarations }
 public
 { Public declarations }
 end;
var
 Form1: TForm1;
implementation
{$R *.dfm}
procedure TForm1.CSELESAIClick(Sender: TObject);
begin
 Application.terminate;
end;
procedure TForm1.CMULAIClick(Sender: TObject);
begin
 tposisi.text:=' ';
 ts.text:=' ';
 tposisi.setfocus;
end;
procedure TForm1.FormCreate(Sender: TObject);
begin
 ts.enabled:=false;
 ts.color:=clbtnface;
end;
procedure TForm1.TPOSISIChange(Sender: TObject);
var
 tsem, a, ss, i, f, sposisi: integer;
 tss: string[30];
begin
 val(tposisi.text, sposisi,tsem);
 if sposisi<1
 then
 ss:=0
 else
 if sposisi=1
 then
 ss:=1
 else
 begin
 a:=2;
 ss:=1;
 f:=2;
 i:=2;
 while i<=sposisi
 do
 begin
 f:=f*a;
 ss:=ss+(f-1);
 i:=i+1;
 end;
 end;
 str(ss:30,tss);
 ts.text:=tss;
end;
end.
Hasil Program:


Jumat, 13 April 2018

BAB 6

BAB VI. PROSES PENCABANGAN CASE

Unit prak6;
interface
uses
 Windws, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,
 StdCtrls, ExtCtrls;
type
 TForm1 = class (TForm)
   Label1: Tlabe1;
   Label2 : Tlabel;
   Label3 : Tlabel
   Label4 : Tlabel;
   Label5 : Tlabel;
   Label6 : Tlabel;
   TLM : TEdit;
   THK : TEdit;
   TJUMLAH : TEdit;
   TKDIS : TEdit;
   TBAYAR : TEdit;
   TDIS : TEdit;
    RadioGroup1 : TRadioGroup;
    RDIS30 : TRadioButton;
    RDIS20 : TRadioButton;
    RDIS10 : TRadioButton;
    RDIS0 : TRadioButton;
    GroupBox1 : TGroupBox;
    CKETANG : TCheckBox;
    CKETUM : TCheckBox;
    CKETKRY : TCheckBox;
    CMULAI : TButton;
    CSELESAI : TButton;
    TPIL : TEdit;
Procedure CMULAIClick (sender : Tobject);
Procedure FormCreate( sender : Tobejct);
Procedure CSELESAIClick (sender : Tobject);
Procedure TLMChange (sender : Tobject);

Private
 { private declarations}
Public
 {public declarations}
end;

var
 Form1 : TForm1;
implementation
{$R*.DFM}

Procedure TForm1.CMULAIClick (sender : Tobject);
begin
TLM.text :=' ';
THK.text :=' ';
TJUMLAH.text :=' ';
TDIS.text :=' ';
TBAYAR.text :=' ';
TLM.setfocus;
end;

Procedure TForm1.FormCreate(sender : Tobject);
begin
 Tjumlah.enabled := False;
 Tjumlah.color := clbtnface;
 Tkdis.enabled := False;
 Tkdis.color := clbtnface;
 Tdis.enabled := False;
 Tdis.color := clbtnface;
 Tbayar.enabled := False;
 Tbayar.color := clbtnface;
 RDIS30.checked := true;
end;

Procedure TForm1.CSELESAIClick (sender : Tobject);
begin
 Application.Terminate;
end;

Procedure TForm1.TLMChange ( sender : Tobject);
var
 Sjml, Sbyr, Sds, Skdis:string[30];
 Tsem:integer;
Spil : byte;
Slm, Shk, Sjumlah, Sdis, Sbayar:single;
begin
 Val(Tlm.text,Slm,Tsem);
 Val(Thk.text,Shk,Tsem);
 Sjumlah:=Slm*Shk;
 Str(Sjumlah:30:0,Sjml);
 Tjumlah.text:=Sjml;
 Val(Tpil.text,Spil,Tsem);
case spil of
1: begin
 Rdis30.checked;
 Rdis30.checked:=true;
 Sdis:Sjumlah*0.3;
end;
2: begin
 Rdis20.checked;
 Rdis20.checked:= true;
 Sdis:= Sjumlah*0.2;
end;
3:begin
 Rdis10.checked;
 Rdis10.checked :=true;
 Sdis:=Sjumlah*0.1;
4: begin
 Rdis0.checked;
 Rdis0.checked:=true;
 Sdis:=0;
end;
end;
if Rdis30.checked or Rdis20.checked or Rdis10.checked
then
Skdis :='DAPAT DISKON'
else
Skdis :='TAK DISKON';

if Cketang.checked or Cketkry.checked
then
begin
Sdis:=Sdis+Sjumlah*0.05;
Cketum.state:=cbunchecked;
end;
if Cketang.checked and Cketkry.checked
then
begin
Sdis:= Sdis+Sjumlah*0.10;
Cketum.state :=cbunchecked;
end;
if Cketum.checked
then
begin
Cketkry.state :=cbunchecked;
Cketang.state:=cbunchecked;
end;
Tkdis.text:=Skdis;
Sbayar:=Sjumlah-Sdis;
Str(Sbayar:30:0,Sbyr);
Str(Sdis:30:0,Sds);
Tdis.text:=Sds;
Tbayar.text:= Sbyr;
end;
end.
Hasil Program:

Rabu, 11 April 2018

BAB 4

BAB IV. PROSES BEBERAPA IF DENGAN RADIO BUTTON


Unit prak4;
interface
uses
 Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,
StdCtrls,ExtCtrls;
type
TForm = Class(TForm)
Label1:Tlabel;
Label2:Tlabel;
Label3:Tlabel;
TLM:TEdit;
THK:TEdit;
TJUMLAH:TEdit;
CMULAI:TButton;
CSELESAI:TButton;
Label4:Tlabel;
Label6:Tlabel;
TDIS:TEdit;
TBAYAR:TEdit;
Label7:TEdit;
TKDIS:TEdit;
RadioGroup1:TRadioGroup;
RDIS30:TRadioButton;
RDIS20:TRadioButton;
RDIS10:TRadioButton;
RDIS0:TRadioButton;
Procedure CMULAIClick(sender:Tobject);
Procedure CSELESAIClick(sender:Tobject);
Procedure FormCreate(sender:Tobject);
Procedure TLMChange(sender:Tobject);

private
 { Private declarayions}
Public
 { Public declarations}
end;

Var
 Form1:TFrom1;
implementation
{$R*>DFM}
Procedure TForm1.CMULAIClick (sender:Tobject);
begin
 TLM.text:=' ';
 THK.text:=' ';
 TJUMLAH.text:=' ';
 TDIS.text:=' ';
 TBAYAR.text:=' ';
TLM.setfocus;
end;

Procedure TForm1.CSELESAIClick(sender : Tobject);
begin
 Application.Terminate;
end;
Procedure TForm1.FormCreate(sender : Tobject );
begin
Tjumlah.enabled := False;
Tjumlah.color := clbtnface;
Tkdis.enabled:= False;
Tkdis.color := clbtnface;
Tdis.enabled := False;
Tdis.color:=clbtnface;
Tbayar.enabled:=False;
Tbayar.color:= clbtnface;
end;
Procedure TForm1.TLMChange(sender:Tobject);
Var
 Sjml,Sbyr,Sds, Skdis: string[30];
Tsem:integer;
Slm,Shk,Sjumlah,Sdis,Sbayar:single;
begin
 Val(Tlm.text,Slm,Tsem);
 Val(Thk.text,Shk,Tsem);
 Sjumlah:=Slm*Shk;
Str(Sjumlah:30:0,Sjml);
Tjumlah.text:=Sjml;
if Rdis30.checked=true
then
Sdis:=Sjumlah*0.3
else
if Rdis20.checked=trie
then
Sdis:=Sjumlah*0.2
else
if Rdis10.checke=true
then
Sdis:=Sjumlah*0.1
else
Sdis:=0;

if(Rdis30.checked=true) or (Rdis20.checked=true) or (Rdis10.checked=true)
then
Skdis:='DAPAT DISKON';
Tkdis.text:=Skdis;
Sbayar:=Sjumlah-Sdis;
Sbayar:=Sjumlah-Sdis;
Str(Sbayar:30:0,Sbyr);
Str(Sdis:30:0,Sds);
Tbayar.text:=Sbyr;
end;
end.
Hasil program:

Selasa, 10 April 2018

BAB 3

BAB III. PROSES PENCABANGAN IF BEBERAPA PERNYATAAN
I. ALGORITMA
   Output ('Lama Menginap');
   Input (TLM)
   Output ('Harga Kamar/Hari);
   Input(THK)
   Tjumlah ← TLM*THK
   If TJUMLAH >= 100000 then
                        TKDIS ← 'DAPAT DISKON'
                        TDIS ← TJUMLAH*0.1
   else
                         TKDIS ← 'TAK DISKON'
                         TDIS ← 0
Endif
   TBAYAR ← TJUMLAH - TDIS
   Output(TDIS)
   Output(TJUMLAH)
   Output(TKDIS)
   Output(TBAYAR)


II. LISTING PROGRAM LENGKAP
Unit Prak3;
interface
uses
 Windows, Messages, SysUtils, Classes, Graphics, ControlS, Forms, Dialogs ,
StdCtrls;
type
 TForm1 = class(TForm)
    Label1 : Tlabel;
    Label2 : Tlabel;
    Label3 : Tlabel;
    TLM : TEdit;
    THK : TEdit;
    TJUMLAH : TEdit;
    THK : TEdit;
    CMULAI : TButton;
    CSELESAI : TButton;
    Label4 : Tlabel;
    Label5 : Tlabel;
    Label6 : Tlabel;
    TDIS : TEdit;
    TBAYAR : TEdit;
    Label7 : Tlabel;
    TKDIS : TEdit;
    procedure CMULAIClick (sender : Tobject);
    procedure CSELESAIClick (sender : Tobject);
    procedure FormCreate (sender : Tobject);
    procedure THKChange (sender : Tobject);
    procedure TLMChange (sender : object);
private
   { private declarations }
public
  { public declarations }
end;
var
 Form1 : TForm1;
implementation
{$R *. DFM }
procedure TForm1.CMULAIClick ( sender : Tobject);
begin
  TLM.text :=' ';
  THK.text :=' ';
  TJUMLAH.text :=' ';
  TDIS.text :=' ';
  TBAYAR.text :=' ';
  TLM.setfocus;
end;
procedure TForm1.CSELESAIClick (sender : Tobejct);
begin
   Application.Terminate;
end;
procedure TForm1.FormCreate (sender : Tobject);
begin
  Tjumlah.enabled := False;
  Tjumlah.color := clbtnface;
  Tkdis.enabled := False;
  Tkdis.color := clbtnface;
  Tdis.enabled := false;
  Tdis.color := clbtnface;
  Tbayar.enabled := false;
  Tbayar.color := clbtnface;
end;
procedure RForm1.THKChange (sender : Tobject);
var
 Sjml, Sbyr, Sds, Skdis : string[30];
 Tsem : integer;
 Slm, Shk, Sjumlah, Sdis, Sbayar : single;
begin
 Val(Tlm.text,Slm, Tsem);
 Val(Thk.text,Shk, Tsem);
 Sjumlah := Slm*Shk;
 Str(Sjumlah:30:0,Sjml);
 Tjumlah.text := Sjml;
 if Sjumlah >= 100000
   then
   begin
   Sdis := Sjumlah*0.1;
   Skdis := ' DAPAT DISKON';
   end
else
begin
  Sdis := 0;
  Skdis := 'TAK DISKON';
end;
Tkdis.text := Skdis;
Sbayar := Sjumlah-Sdis;
Str(Sbayar:30:0, Sbyr);
str(Sdis:30:0, Sds);
Tdis.text :=sds;
Tbyar.text := Sbyr;
end;
procedure TForm1.TLMChange (sender : Tobject);
Var
 Sjml, Sbyr, Sds, Skdis :string[30];
 Tsem : integer;
 Slm, Shk, Sjumlah, Sdis, Sbayar :single;
begin
 Val(Tlm.text, Slm, Tsem);
 Val(Thk.text,Shk,Tsem);
 Sjumlah := slm*shk;
 Str(sjumlah:30:0, Sjml);
 Tjumlah.text := Sjml;
 if Sjumlah >= 100000
 then
begin
  Sdis := Sjumlah*0.1;
  Skdis := ' DAPAT DISKON';
end
else
begin
Sdis := 0;
Skdis := "TAK DISKON';
end;
TKDIS.text := Skdis;
Sbayar := Sjumlah - Sdis;
str(sbayar:30:0,sbyr);
str(sdis:30:0, sds);
Tdis.text := sds;
Tbayar.text :=sbyr;
end;
end.

*HASIL PROGRAM*



Minggu, 08 April 2018

BAB 2

BAB II. PROSES PENCABANGAN IF SATU PERNYATAAN

I. ALGORITMA
   Output('Lama Menginap')
    Input(TLM)
   Output('Harga Kamar/Hari')
    Input(THK)
   Tjumlah ← TLM*THK
   If Tjumlah >=100000 then
                    TDIS ← Tjumlah * 0.1
   Else
          TDIS ← 0
Endif
          Tbayar ← Tjumlah - TDIS
          Output(TDIS)
          Output(Tjumlah)
          Output(TBAYAR)

II. LISTING PROGRAM LENGKAP
   Unit Prak2;
   Interface
   Uses
      Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs ,
           StdCtrls;
       Type
           TForm1 = class(TForm)
           Label1 : Tlabel;
           Label2 : Tlabel;
           Label3 : Tlabel;
           TLM : TEdit;
           THK : TEdit;
           TJUMLAH : TEdit;
           CMULAI : TButton;
           CSELESAI : TButton;
           Label4 : Tlabel;

           Label5 : Tlabel;
           Label6 : Tlabel;
          TDIS : TEdit;
          TBAYAR : TEdit;
          Procedure CMULAIClick (sender : Tobject);
          Procedure CSELESAIClick (sender : TObject);

          Procedure FormCreate (sender : TObject);
          Procedure THKChange (sender : TObject);
          Procedure TLMChange (sender : TObject);
Private
   { Private declarations }
Public
   { Public declarations }
end;

var
 Form1 : Form1;
implementation
{ $R *. DFM}

procedure TForm1.CMULAIClick (sender : Tobject);
begin
  TLM.Text :=' ';
  THK.Text :=' ';
  TJUMLAH.Text :=' ';
  TDIS.Text :=' ';
  TBAYAR.Text :=' ';
  TLM.setfocus;
end;
procedure TForm1.CSELESAIClick (sender : Tobject);
begin
    Application.Terminate;
end;
procedure TForm1.FormCreate (sender : Tobject);
begin
  Tjumlah.enabled := False;
  Tjumlah.color := clbtnface;
  Tdis.enabled := False;
  Tdis.color := clbtnface;
  Tbayar.enabled := False;
  Tbayar.color := clbtnface;
end;
procedure TForm1 . THKChange (sender : Tobject);

var
 Sjml, Sbyr, Sds : string[30];
 Tsem : integer;
 Slm, Shk, Sjumlah, Sdis, Sbayar : single;
begin
 Val(Tlm.text, Slm, Tsem);
 Val(Thk,text, Shk,Tsem);
 Sjumlah := Slm*Shk
 Str (Sjumlah : 30 : 0,Sjml);
 Tjumlah.text := Sjml;
 if Sjumlah >= 100000
     then
    Sdis := Sjumlah*0,1
 else
    Sdis :=0;
Sbayar := Sjumlah-Sdis;
Str(Sbayar:30:0, Sbyr);
Str(Sdis:30:0, Sbyr);
Tdis.text := Sds;
Tbayar.text := Sbyr;
end;
procedure TForm1.TLMChange(sender : Tobject);
var
   Sjml, Sbyr, Sds : string[30];
   Tsem : integer;
   Slm, Shk, Sjumlah, Sdis, Sbayar : single;
begin
  Val(Tlm.text, Slm, Tsem);
  Val(Thk.text, Shk, Tsem);
  Sjumlah := Slm*Shk;
  Str(Sjumlah:30:0, Sjml);
  Tjumlah.text := Sjml;
if sjumlah >= 100000
   then
     Sdis := Sjumlah*0.1
   else
     Sdis := 0;
Sbayar := Sjumlah - Sdis;
Str(Sbayar:30:0,Sbyr);
Str(Sdis:30:0, Sds);
Tdis.text :=Sds;

Tbayar.text := Sbyr;
end;
end.
*HASIL RUN*