IMPLEMENTASI PERANGKAT LUNAK
5.1 Batasan Implementasi
Sistem informasi ini di buat dengan batasan-batasan implementasi, antara lain mengenai bahasa pemrograman yang digunakan dan keamanan sistem.
5.1.1 Bahasa Pemrograman yang Digunakan
Sistem informasi papan rekiame mi di buat dengan menggunakan bahasa
pemrogaman Borland Delphi 7.0, dengan database MySQL karena merupakan pemrograman basis data yang mudah dimengerti dan dipahami serta mudah digunakan.
5.1.2 Keamanan Sistem
Suatu sistem informasi perlu adanya pengidentifikasian user ataupun password.
Ini disebabkan supaya tidak semua user dapat membukanya apalagi menggunakannya.
5.2 Implementasi Perangkat Lunak
5.2.1 Implements! Form Utama
Form ini merupakan tampilan awal waktu menjaiankan sistem. Terdapat 4 file
yaitu file login, setup data, input data dan laporan. Sebelum masuk ke sistem teriebih dahulu harus mengeklik file login untuk menghubungkan sistem dengan basis data yang
ada. Gambar form utama dapat dilihat dibawah ini.66
1Ji Sistem Informasi Pajak Rel<1«m«
.rVLogln & S°ti >p Cdtd "iInp jtPsn <j» l&xan
Gambar 5.2.1 Form Utama
SUiQI
5.2.2 Implementasi Form login
Ini merupakan form login sebelum masuk ke sistem. User name dan password
harus diisi sesuai yang sudah ditentukan. Apabila user dan password salah maka tidak
bisa masuk ke dalam sistem. Salah atau benar password yang diberikan dengan mengeklik tombol ('onnect.Server jlocalhost
Connect Cancel
Gambar 5.2.2 Form login
5.2.3 Implementasi Form Zonasi/Lokasi
Form ini untuk menginputkan skor pada suatu lokasi. Form mi terdapat 3 tombol
yaitu tombol simpan berfungsi untuk menyimpan data, tombol baru, untuk membuat data yang baru,tombol hapus untuk menghapus data yang telah ada. Kemudian untuk mengeditnya muose klik kiri dua kali, letakkan kursor pada data yang akan di edit.
Adapun gambar form zona/lokasi dapat dilihat dibawah.
j J SetUp Skor Zonasi/Lokasi
•• ;iLJ[e d e n d
e l s e
begi:
i" i
i f
i '• Kode Zona/Lokasi Nama 2ona/Lokast Skor
if !
be, |;
W 1nm_: || j . , , It I
it!
kd ; jfl
KD Zona
c i \
jt !
f |i Jurnlah Data ; 0
e n c
bee
J.""
£3 Simpan i V^ &* X Hapus
Nama Zona Skor
V Print Preview
Gambar 5.2.3 Form Zonasi/Lokasi
•ri-~w_ ed^kd i h ed^nm
i
•|r- •*• ed_skor
Si Print !j
4 procedure Tf_setup zonasi .b_simpan01ick (Sender: TOblect) ; c begin
e n c
end;
end else if
begin ''
f uta if modul.MyQueryl.RecordCount-0 then
ed_nir be3in
d. modul.global_query('insert into
H. zonasi (nm zonasi,skor)values('"'+ed nm.TexL+''','*'+ed_skor
G n u ?
.Text+? M)',D;
if (ed nm.Texto") and (ed_skor .TexLo' ') then
begin
modul.global query)'select * from zonasi where kd_zonasi='''+ed kd.Text^ *''
or'+'lower(nm zonasi)=',f+lowercase(ed nm.Text)+'''',0
5.2.4 Implementasi Form Sudut Pandang
Form ini untuk menginputkan skor pada sudut pandang. Form ini terdapat 3 tombol yaitu tombol simpan berfungsi untuk menyimpan data, tombol baru, untuk membuat data yang baru,tombo! hapus untuk menghapus data yang teiah ada. Kemudian untuk mengeditnya muose klik kiri dua kali, letakkan kursor pada data yang akan di edit.
Adapun gambar form sudut pandang dapat dilihat dibawah.
; ff SetUp Skor Sudut Pandang
(• ore Cudut Pandang
if
l| • Nama Sudut Pandang .
Skor
» £imp an V" &aru X Hapus
KD Sudut Pandang Mama Sudut Pandang
4. V
- •'
7" Skor J
ed kd
\\— *\ ed_nm
I *J' ed skor
3urnlah Data : 0 P?" Print Preview • jjgi Pnrst \"
Gambar 5.2.4 Form Sudut Pandang
procedure Tf_setup skor_sudut_pandang. b simpanClick(Sender
TObject);
beg: ii
if (ed_nm.Texto' '} and (ed skor.Texto' •) then
begin
modul.global_query('select * from sudut_ pandang where kd_sudut_pandang=' *'+ed_ kd.Tex.t41 ' '
or'4'lower (nm__sudut_pandang)-' ''4iowercase (ed_nm.Text) t-' '''
, 0) ;
if modul.MyQueryl.RecordCount-0 then begin
modul.global_query('insert into
sudut_pandang(nm_sudut_pandang,skor)values('''4ed_nm.Text4•
l,,I,,+ed skor.Text+'")',l);
f_utama.pesan(1) ; clear_items;
ed_nm.Set Fo o us;
end
else if modul.MyQueryl.RecordCountoO then begin
f utama.update_dlg;
if f utama.sts_update then begin
modul.global_query('update sudut_pandang set
nm_sudut_pandang=' ''4ed_nm.Text t'''fskor-' ''-ted_skor.Text+'
1' where'4
' kd_sudut_pandanq-'''4ed_kd.Text4'''', 1);
f _utama.pesan(3};
clear_iterns;
ed_mn.SetFocus;
end
else if not(f_utama.sts_update) then
begin
f utama.pesan(5);
clear_items;
ed nm.SetFocus;
end;
end;
end
else if (ed_nm.Text='') or (ed_skor.Text=f') then
begin
f utama.pesan(0);
ed_nm.SetFocus;
end;
end;
5.2.5 Implementasi Form Skor Luas Rekiame
Form ini untuk menginputkan skor pada luas rekiame. Fonn ini terdapat 3 tombol
yaitu tombol simpan berfungsi untuk menyimpan data, tombol baru, untuk membuat data yang baru,tombol hapus untuk menghapus data yang telah ada. Kemudian untuk
mengeditnya muose klik kiri dua kali, letakkan kursor pada data yang akan di edit.Adapun gambar form luas rekiame dapat dilihat dibawah.
j p SetUp Skor Luas Rekiame il " "
;| ; Kode Luas Rekiame
i! | Nama Luas Rekiame
\\ . Skor
t^ Simpan] S Baru j ^,Uapu.s |
las.
Cjj
!•
. . . , .
il «1 edj<d
• - ; - ~ .- •;- • -* ed_nm
..I. w ed skor
KD Luas Rekiame J Nama Luas Rekiame j Skor
Vv lH
}umlah Data : 0 p" Print Preview r^! Print I;
Gambar 5.2.5 Form luas rekiame
procedure Tf setup_skor_iuas_rekiame.b_simpanClick(Sender:
TObject);
begi n
if (ed_nm. Texto'' ) and (ed skor .Texto'' ) then begin
modul.global_query('select * from luas_reklame where kd luas reklame='''ted_kd.Text+''' or,x
]ower(nm iuas_reklame) = '''4lowercase(ed_nm.Texc)4''' ', 0) ;
if modul.MyQueryl.RecordCount=0 then begin
modul. global _query ('insert, into
luas_reklame(nm_luas_rekiame,skor}values(' ''4ed nm.Text4'' '
,'''4ed_skor.Text4 *'') ',1) ;
f_utama.pesan(1);clear_jterns;
ed_nm.SetFocus;
end
else if modul .MyQueryl. RecordCounLoO then begin
f _utama.update_dlg;
if f utama.sts update then begin
modul.global_query('update luas_reklame set
nm__luas rekiame- ''' 4ed__nm.Text4 ''' , skor
1*' t-ed_skor .Text4' '' where' +
' kd luas_rek.lame=' ''4ed_kd .Text+ '''',1) ;
f_utama.pesan(3) ;clear_items;
ed_nm.SetFocus;
end
else if not(f_utama.sts_update) then begin
f_utama.pesan(5);
clear_items;
ed_nm.SetFocus;
end;
end;
end
else .if (ed nm.Text-1') or (ed skor .Text-'') then begin
f_utama.pesan(0);
ed nm.SetFocus;
mpan ] V' Baru
Nama Fungsi Jala end;
5.2.6 Implementasi Form Skor Fungsi Jalan
Form mi untuk menginputkan skor pada fungsi jalan. Pada form ini user harus
menginputkan kode fungsi jalan, nama fungsi jalan dan skor untuk menentukan besarnya skor yang diberikan pada fungsi jalan. Form im terdapat 3 tombol yaitu tombol simpan berfungsi untuk menyimpan data, tombol baru untuk membuat data yang baru dengan cara sistem akan menghapus data yang ada pada label kemudian user menginputkan data
yang baru, tombol hapus untuk menghapus data yang telah ada. Kemudian untuk :::::'::::::. -'- mengeditnya muose klik kin dua kali, letakkan kursor pada data yang akan di edit.
Gambar 526 Foi AdaPun gamDar iorm tunSsi Jalan daPat di!inat d>bawah-
ip skor tunqs
1 *) and (ed_s
aery('select
'+ed kd.Text +
3i jalan)-' * '•
ipan S fiaru
Nama Jns Rel
1" ui ama . pe s an { u ) ; ed_nm.SetFocus;
end;
end;
5.2.7 Implementasi Form Jenis Rekiame
Form im digunakan untuk menginputkan kode jenis rekiame dan name jenis rekiame yang telah ditentukan. Pada form ini user harus menginputkan kode jenis rekiame dan nama jenis rekiame teriebih dahulu. Setelah ueT menginputkan kode jenis rekiame dan nama jenis rekiame, user harus mengeklik tombol simpan untuk menyimpan data. Form ini terdapat 3 tomboi yaitu tombol simpan berfungsi untuk menyimpan data ...:::::.. |* setelah user menginputkan data atau tombol ini juga berfungsi untuk mengedit data, Gambar 5.2.7 Foi tomboi baru untuk membuat data yang baru dengan cara sistem akan menghapus data setup jenis yang ada pada label kemudian user menginputkan data yang baru. Tombol hapus untuk
menghapus data yang telah ada. Adapun gambar jenis rekiame dapat dilihat dibawah.
k lame. Texto'
;uery ( 'select 4ed_kd_jns_re rekiame)='''4
.eryl. RecordCo
modul.global_quory('insert into jns_reklame(nm_j ns_ rekiame)values('''+ed_nm_jns_reklame.Tex
t4' ") ',!);
f_utama.pesan(1);
clear_ items;
end
else if (modul.MyQueryl.RecordCountX)) then begi n
f utama.update dig;
if (f_utama.sts_update) then begin
modul.global_query('update jns_reklame set nm_jns reklame='''4ed_nm_jns_reklame.Text4'''
where'4'kd_jns_reklame='''4ed_kd_jns_rekiame.Text4'''',1);
f_utama.pesan(3);
clear_items;
end
else if not (f_utama. sts__update) then begi n
f_utama.pesan(5) ; clear_items;
end;
end;
end
else if (ed_nm_jns_reklame.Text='') then begin
f__utaroa.pesan (7);
ed_rim_jns_ rekiame.SetFocus;
end;
end;
5.2.8 Implementasi Form Harga Dasar Strategis
Form ini untuk menginputkan harga dasar strategis berdasarkan lokasi. Form ini terdapat 3 tombol yaitu tombol simpan berfungsi untuk menyimpan data, tombol baru, untuk membuat data yang baru,tombo! hapus untuk menghapus data yang telah ada.
Kemudian untuk mengeditnya muose klik kiri dua kali, letakkan kursor pada data yang akan di edit. Adapun gambar form harga dasar strategis dapat dilihat dibawah.
| J>5etUp Harga DasarStrategis "j—-E2E3'
, ••' ed kd biaya"
«• Kode Hrg Dasar Strategis —" - - • • **• •=•
ji : Nama Zonasi/Lokasi
[| i Harga Dasar
cb zonasi
• • T )
•H &mpanj Xj^Lj *LH2LUS j
lj KD Hrg Dasar Strategic J .ft!arr!0 ^Qp^'.^^P^851 1 Harpa Dasar
*" £|t,kdjns_/ekiame
—*T~ EdTbiaya
it ] It i
I _ i
| Jum'ah Data ; D ' ' ' 'y Print Preview : P, D,:„t j|
Gambar 5.2.8 Form Harga Dasar Strategis
procedureTf_setup_harga_dasar strategis.b_simpanClick(Sende
r: TObject);
begin
if (ed_kd_biaya.Texto' ') and
(ed kd jns rekiame .Texto '' ) and (ed biaya.Texto'') then
begin
modul.global_query('select * from harga_dasar_strategis where kd_harga_dasar_strategis= '''-*-ed kd _biaya .Text+ '''
or'+' kd_zonasi='''+cd_kd_jns_reklame. Text +' ' '',0) ; if (modul.MyQueryl.RecordCountoO) then
begin
modul.global_query('insert into
harga_dasar_sfrategis(kd_zonasi,harqa_dasar)values('i''''+e d_kd jns _reklame.Text+''','''+ed_biaya.Text+''')',!);
f_utama.pesan(1);
clear_items;
cb_zonasi.SetFocus;
end
else if (modul .MyQueryl. RecordCountoO) then begin
f_utama.update_dlg;
if f_utama.sts_update then begin
modul.global_query('update harga_dasar_strategis set kd zonasi^' " -red_kd_jns__rekiame .Text+ ''','+'
harga_dasar='''+ed_biaya.Text+''' where
kd_harga dasar_strategis='''+ed_kd_biaya.Text+''' or '+'kd_zonasi-'''+ed_kd_jns_reklame.Text+'''',1);
f_utama.pesan(3);
clear_items;
cb_zonasi.SetFocus;
end
else if not(f_utama.sts update) then begin
f utama.pesan(5);
clear_items;
cb zonasi.SetFocus;
end;
end;
end
else if (ed_kd_biaya.Text='') or
(ed kd ins_reklame.Text='') or (ed_biaya.Text-'') then
begin
f_utama.pesan(0);
cb_zonasi.SetFocus;
end;
end;
5.2.9 Implementasi Form Daerah dan Jalan
Form ini untuk menginputkan lokasi/ daerah beserta fungsi jalan. Form im
terdapat 3 tombol yaitu tombol simpan berfungsi untuk menyimpan data, tombol baru,
untuk membuat data yang baru, tombol hapus untuk menghapus data yang telah ada.Kemudian untuk mengeditnya muose klik kiri dua kali, letakkan kursor pada data yang akan di edit. Adapun gambar form daerah dan jalan dapat dilihat dibawah.
if modul.MyQueryl.RecordCount-0 then begin
modul.globai_query('insert into
daerah_jalan(kd_daerah_jalan/nm_daerah_jalan,kd_funqsi_jala
n, kd_zonasi)values('+''''fed_kd.Text+'' ','''tlowercase(ed n m_jaian.Text)+* '*, ''T+ed__kd_f ungsi_jalan.Text+' '','+'-' -+ed
__kd zonasi.Text+' ' ' ) ',1) ; f_utama.pesan(1);
clear _items;
ed_kd.set focus;
end
//jika data sama, tampilkan dialog update
else if modul.MyQueryl. RecordCountoO then begin
f_utama.update_dlg;
if (f_utama.sts_update) then
begin
modul.global_query('update daerah_j alan set nin_daerah_jalan=* ''tlowercase (ed nm jalan .Text) +''','+' kd f ungsi_jalan='''+ed_kd_fungsi_jalan.Text*''', kd zonasi='•'+e
d_kd_zonasi.Text+'*' where'+
' kd_daerah_jalan='*'+ed_kd.Lext+' '' ',1) ;
f_utama.pesan(3);
ed_kd.setfocus;
e n a
else if not(f_utama.sts_update) then
begin
f_utama.pesan(b);
ed_kd.SetFocus;
end;
end;
end
//j ika data tidak lcngkap
else if (ed_kd.Text='') or (ed_nm_jalan.Text-'' ) or
(ed__kd_ zonasi .Text-' ') or(ed kd_fungsi jalan .Text- *f) thenbegi n
f_utama.pesan(C);
ed kd.SetFocus;
end;
end;
5.2.10 Implementasi Form Bobot Faktor
Form ini untuk menghitung total bobot masing-masing lokasi,luas rekiame, fungsi
jalan sudut pandang. Form ini terdapat 3 tombol yaitu tombol simpan berfungsi untuk menyimpan data, tombol baru untuk membuat data yang baru Adapun gambar form
bobot faktor dapat dilihat dibawah.
JSetUp Bobot Faktor
in ;;_••
Zonasi/Lokasi Luas Rekiame
Fungsi Jalan Sudut Pandang
Total Bobot
H Simpan |
** ill is
VBaru P%_.
-%
,.%...
--%
ed_zonasi
ed_iuas ed_fungsi
ed sudut
H- *• ed total
Gambar 5.2.10 Form Bobot Faktor
begin
if StrToInt(ed_total.Text)<100 then
App "I icat ion .MessageBox ('Total present ase bobot faktor tidak boleh kurang dari 100 % I',1Error',
mb_OK or mb_IconError)
else if StrToInt(ed_total.Text)>100 then Application.MessageBox('Total prosentase bobot faktor tidak boleh lebih dari 100 % I1,'Error1,
mb_OK or mb_IconError)
else if StrToInt(ed_total.Text)=100 then begin
modul.global_query('truncate table bobot_faktor',1);
modul.global_query('insert into
bobot_faktor(bobot_zonasi,bobot_luas_reklame,bobot_fungsi j
alan, '+ 'bobot_sudut__pandang) values ('''+ed_zonasi .Text+''', '''+ed_luas.Text+' '', '''+ed_fungsi.Textt' '', '' '+ed_sudut.Tex
t+' ") \1);
f_utama.pesan(1);
ed_zonasi.SetFocus;
end;
end;
5.2.11 Implementasi Form Biaya Pemeiiharaan
Form ini untuk menginputkan besar biaya berdasar jenis rekiame. Form ini
terdapat 3 tombol yaitu tombol simpan berfungsi untuk menyimpan data, tombol baru,
untuk membuat data yang baru,tombol hapus untuk menghapus data yang telah ada.
Kemudian untuk mengeditnya muose klik kiri dua kali, letakkan kursor pada data yang
akan di edit. Adapun gambar biaya pemeiiharaan dapat dilihat dibawah.
J» SetUp Biaya Pemeiiharaan
j
i Kode Biaya Pemetiharean
i
] ' jsniB Rekiame
i • Biava i
Kd Biaya Pemeliharaari
i! i
Jumleh Data ; 0
V'garu f XMapus
Name Jris Reklarre
.rCZZrr'-™----'-"j: - *• : ed_kd_biaya .. ji_ -• j sd_jns_reklame
': » Ed_kdjenis_rek!arne
™fr * ! edbiaya !
Biaya T
y Print Preview
Gambar 5.2.11 Form Biaya Pemeiiharaan
procedure Tf__setup_biaya_pemeliharaan.b simpanClick (Sender:
TObject);
begin
if (ed_kd biaya.Texto'' ) and
(ed_kd_jns_reklame. Texto' ') and (ed_biaya.Texto1 ') then
begin
modul.global_query('select * from biaya_pemeliharaan where kd_biaya_pemeliharaan=' ''+ed_kd_biaya .Text+' ''
or'+'kd_jns_reklame='''+ed_kd_jns_reklame.Text+'''',0);
if (modul.MyQueryl.RecordCountoO) then begin
modul.global query('insert into biaya_pemeliharaan(kd_jns_reklame,biaya)values(' + ''''+ed kd _jns_rekl ame.Text+ •'',»' '+ed_biaya.Text-r ''')', 1);
f_utarna .pesan (1) ; clear__i terns;
cb_j ns_rekiame. SetFocus;
end
else if (modul.MyQueryl .RecordCountoO) then begin
f_utama.update_dlg;
if f_utama.sts_update then begin
modul.global_query('update biaya_pemeliharaan set
kd_jns_reklame='''+ed_kd_jns_rekiame.Text+•'','+'biaya=' ''+ed_biaya.Text+' '* where
kd__biaya_pemeliharaari=' ''+ed_kd_biaya .Text+''' or '+ ' kd_jns_reklame='''+ed_kd_jns rekiame.Text+'''',!);
f_utama.pesan(3);
clear_items;
cb_jns_reklame.SetFocus;
end
else if not(f_utama.sts_update) then
begin
f_utama.pesan(5);
clear_iterns;
cb_j ns_reklame.SetFocus ;
end;
end;
end else
if (ed_kd_biaya.Text=f') or (ed_kd_jns_reklame.Text-'') or
(ed biaya.Text-'') then
p begin
T f_utama.pesan(0) ;
b cb_jns _rekiame.SetFocus;
end;
e n d ;
5.2.12 Implementasi Form Biaya Pemasangan
Form ini untuk menginputkan biaya pemasangan berdasar jems rekiame . Form
w
ini terdapat 3 tombol yaitu tombol simpan berfungsi untuk menyimpan data, tombol baru,
e k
e
untuk membuat data yang baru,tombol hapus untuk menghapus data yang telah ada.
ed Kemudian untuk mengeditnya muose klik kin dua kali, letakkan kursor pada data yang
akan di edit Adapun gambar form biaya pemasangan dapat dilihat dibawah.
b
n ^1Setup Biaya PerriasangafV
SI
b
e '
end
5.2.1
[1 . Kode Biaya Pemasangan j'r Jenis Rekiame j! Biaya
Kd Biaya Pemasangan
!' !
kc ![!
it!
ec ;|i
ji Jumlah Data : 0
l: w
terda kc
• k<
untui
H Simpanj Vgaru j XHapus ]
Nama Jns Rekiame Biaya
'•y Print Pr&vwn
Gambar 5.2.12 Form biaya Pemasangan
•J' j ed_kd_biaya : . jii' j cbjns^reklame
•-jf-*' ! ed_kd_jeni5_reklame
•• i i| • [ ed_biaya~ >
letakkan kursor pada data yang akan di edit. Adapun gambar form sewa rekiame dapat
dilihat dibawah.
%P*mf>*yWm"SfcWa Reki*hi*
No. SPIPR Tgl SPIPR
Nama Pemohon Alamat Pemohon Nama Pwusahaan
Alamat Perusahaan Nilai yewa Rekiame Potongan
Total Pembayaran
No SPIPR
Jumlah Data : 0
[Tz/l 1/2004 -*™3"
Nama Pemohon
JO "1
:1 ^ : ed_no_spipr J -i *. rcbltgi"""!
.ed^nm^emohon!
ed_jtlamat_pemohan ] ed_nm_perlisahaan J
e^_a tairatjpe rusaha an ed^riilai ed_potongan "
ed "totaT
B Simpan j Vfiaru
Alamat Pemohon Nama Perusahaan
Gambar 5.2.13 Form Pembayaran Sewa Rekiame
procedure Tf_pembayaran_sewa_reklame,b_simpanClick(Sender:
TObjeet);
begin
{1. periksa kelengkapan data}
/ / j ika data lengkap
if (ed_no_spipr. Texto' ') and (ed_nilai .Texto '') and
(ed total. Texto ' ' ) and (nilai_sewa<>0) then begin
{2. cari data yq sama di tabel penerimaan sewa_reklame}
modul .qlobal_query('select*from penerimaan_sewa rekiame
where no_spipr^' *'+ed_no_spipr.Text+ '''*,0);//jika data tidak ditemukan, maka simpan data if modul .MyQueryl .RecordCountoO then
begin
f_utama.pesan(6) ; ed_no_spipr.SetFocus;
end
//jika data ditemukan, ubah data tabel penerimaan_sewa_ rekiame
else if modul.MyQueryl.RecordCount>0 then begin
modul.global_query('update penerimaan_sewa_reklame
set potongan-'''+ed potongan.Text
total_pembayaran='''tfloattostr(total)+''',sts-''lunas where no_spipr^' ''+ed_no_spipr.Text+*' '',1) ;
f_utama.pesan(1);
tampil_dt_pembayaran;
ciear_items;
end;
end
begin
{1. periksa kelengkapan data}
//jika data lengkap
if (ed_no_spipr.Text<>") and (ed_nilai .Texto''} and
(ed_total. Texto' *J and
(nilai perpanjanganoO) then begi n
{2. cari data yg sama di tabel penerimaan_sewa_reklame}
modul.global query('select * from
penerimaan_perpanjangan_reklame where
no_spipr-' ''+ed_no_spipr.Textt' ' *',0) ;
//jika data tidak ditemukan, maka simpan data if modul .MyQueryl .RecordCountoO then
begin
f iitama .pesan (6) ; ed_no spipr.SetFocus;
end
//jika data ditemukan, ubah data tabel penerimaan_sewa_rekiame
else if modul.MyQueryl.RecordCount>0 then begin
modul.global query('update
penerimaan_perpanjangan_reklame set
potongan-'''+ed_potongan.Text+*'','+'total_pembayaran='''+f
loattostr(total)+ 1'',sts-''iunas'' where no_spipr=' ''+ed no_spipr.Text+' ''',1) ;
f utama.pesan(1);
clear_items;
end;
end
//jika data tidak lengkap
else if (ed__no_spipr.Text-' ') or (ed_nilai.Text-'') or
(ed total.Text-'') or
(nilai_perpanjangan<=0) then begin
i_utaina .pesan ( 0} ; ed_no_spipr.SetFocus;
end;
end;
5.2.15 Implementasi Form Pembayaran Pajak rekiame
Form ini untuk menginputkan besarnya pajak. Form im terdapat 2 tombol yaitu
tombol simpan berfungsi untuk menyimpan data, tombol baru, untuk membuat data yang baru. Kemudian untuk mengeditnya muose klik kiri dua kali, letakkan kursor pada data yang akan di edit. Adapun gambar form pembayaran pajak rekiame dapat dilihat
dibawah.
Pembayaran Pajak Rekiame
NO. SPTPD Tgl SPTPD
Nama Pemohon Alamat Pemohon Nama Perusahaan
Alamat Perusahaan
Nilai Sewa Rekiame
Pajak
112/11/2004
E9
No SPTPD [ Tgl f Nama Pemohon jj
Jumlah Date • 0
a
No, SPIPR
-!- •
- ------, •••
Alamat Pemohon "jNama Perusahaan "'••
Gambar 5.2.15 Form Pembayaran Pajak Rekiame
ed_no_spipr2
i ed_no=sptpd ed_tgl
' ed^nm„pemohon ed_ala matjpe morion
ed_ nm_j)e fusa ha a n i ed_alamat_perusahaari
ed_nNai ! ed_pajak
procedure Tf_pembayaran_pajak_reklame .b_simpanClick (Sender:
TObject);
begin
if (ed_no_sptpd.Texto' ') then begin
modul.globai_query('update penerimaan_pajak_reklamo set
sts—1'lunas'' where'+
' no__sptpd-* ''ted_no_sptpd.Text+' ''',1) ; f_utama.pesan(1);
clear items;
tampil_dt_pembayaran;
ed no sptpd.SetFocus;
e n c
else if (ed no_sptpd.Text^- begin
f_utama.pesan(0);
cd_no sptpd.Set Focus;
end;
end;
t h e n
5.2.16 Implementasi Form Laporan Kepadatan Rerklame
Form ini untuk memberikan laporan kepadatan rekiame. Dalam form ini harus
memilih teriebih dahulu daerah yang ingin dilihat banyaknya papan rekiame yangtelah
terpasang. Adapun gambar form zona/lokasi dapat dilihat dibawah.
1Laporan Kepadatan Rekiame
( Nama Daerah/Jalan *
• -
S Semua Data
J
Nama Daerah/JalanJumlah Data ; 0
Jurnlah
W Pnnt Preview
••"
•
•-r-»-
•• • *
iPrint !'
Gambar 5.2.16 Form Laporan Kepadatan Rekiame
cb nm
Procedure Tf_laporan__kepadatan_ rekiame.cb_nmChange (Sender:
TObject);
begin
modul.global_query('select kd_daerah_jalan from
daerah jalan where'+'
lower(nm_daerah_jalan)='•'+lowercase(cb nm.Text)+ '''',0) ; with MyQueryl do
begi n close;
sql.clear;
sql.add('select
a.nm_daerah_jalan,count(b.kd_daerah jalan)as jumlah from
daerah jalan a,spipr b where'+
' a.kd_daerah_j alan-b.kd dacrah_ jalan and a .kd_daerah jalan= '''+modul .MyQueryl. fields [0] .AsStrinq-r-' ''
' +
' group by a.kd _daerah_jalan') ;
open;
end;
DDGridl.DataSource:=DataSourcel;
label10.Caption:^'Jumlah Data :'+'
'+inttosfr(modul.MyQueryl.RecordCount);
QRLabel6. Caption:-'Jumlah Data : '+ '
'+inttostr(modul.MyQueryl.RecordCount) ; end;
as nilai_sewa2, ' 4 ' CONCAT(' 'Rp' ' , * ' ' ' ,format(potongan,0) )
ngan.Captioi as potongan2, ' + ' CONCAT (' ' Rp' ' , ' '
' ' , format(total_pembayaran,0)) as total_pembayaran2,sts
from '+ ' penerimaan_sewa_reklame where
tgl='''+formatdatetime('yyyy/mm/dd',ed_tgll.Date)+''' order by i d ' ) ;
1 f i l t e r sewa. Caption : = ' Tanggal' + ' ' -tdatetostr (ed tgl 1 .Date)
end;
lentasi Form Pe ^ • begin
m untuk menghi tampilkandata ('select
id,no_sptpd,no_spipr,tgl,CONCAT(''Rp*',''' ',format(iumlah_p intuk menghitunj
ajak,0)) as jumlah pajak2,sts'+' from
n yang telah habi penerimaan_pajak_reklame where
tgl-*''+
by i d ' ) ;
>rm penerimaan tgl^* ' ' tformatdatetime ( 'yyyy/mm/dd' , ed_tgll .Date) +' ' ' order
berfungsi untuk
apus untuk mengl l_pa jak.Capt ion : ='Tanggal' +' ' +datetostr (ed tgll.Date) ; i dua kali, letakk end;
e l s e
ipat dilihat dibaws
begin
tampilkan_data
('selectid,no_spipr,tgl,CONCAT(''Rp'','''',format(nilai_per panjangan,0)) as nilai_perpanjangan2, '4' CONCAT(''Rp'',''
'',format(potongan,0)) as
potongan2,'+'CONCAT(''Rp'','''',format(total_pembayaran,0))
as totai_pernbayaran2, sts from M '
penerimaan jperpan jangan rekiame where
tgl- '''+formatdate time ('yyyy/mm/dd ',ed_tgll. Date) -+ ''* order by id');
i ed_a)amat_perusaliaaii , ed^titri__perusahaan_j Led_tetp1 Ed_kd spipt ; ] ed__nm pemohofi '[ ed_a(amat I
Aisr-,sl
'la ".a ror.jia-.4i
ed^npwp
ed telp? ed_fio_sptpd
fiE3
.' ed hrg^dasar_strategis -I" ed lota! !
ebjns_r i eklame
(Taial t'lC-.-t . T.I..H. 1+.j edJotaK
"•""•'h' "••'"»" ' •.( ed pemasangan
Bto\* t*rtH''i'aS' --♦j edpeme liha raa n
r-tf^i;-».] N.-ki^r..
• *' ed_nsr
rrfhr*. '* B*iru • HijUu ri^ri-ijirn.
" i»t* SHE* <*!->a>- • n > n HWW ! VButu . *Bui<.
- —<-*• j ed^no=sptpd2
'a. ^""I"1 '- ''"II 7! fc. edjgl_akiiii2
ur.6i-.irHvs.-i *~ 'l- -""'"-' ."*• •• - - » "_cri_'9LPerpa?ian_s? :
t e w : vtf.*njAti$w
- - - »-,
- > r
Edjum_han2 | edbiay a_perpa nja nga n cb uku . .
- r« Od^ri/
ran |
cbsu j -ijrfs- j i dut_pa !^ '' |S1 ^.t,
ndann ;
g i
Je litr>.ai.:.imt
r&iKjut.^*-^^
edlg|_awal |i i . ! cb zonasi
• : ~
! ch_.fungsi_j , alan I r..__ _ i
! ed tgl_akriir
* edjum_hari
T _
cb_riaeratijaian _
Gambar 5.2.18 Form SPIPR
procedure Tf_input_dt_SPIPR.b_simpanClick(Sender: TObject);
var s t s : s t r i n g ; begin
/ / j ika data lengkap
if (ed_kd_spipr .Texto' ' ) and (ed_nm_pemohon .Texto ' ' ) and (ed_alamat .Texto' ' ) and (ed_nm_perusahaan.Texto' ' )
and (ed_aiamat_perusahaan.Texto' ') and
(ed_npwp.Texto'' ) and (kd_jns_reklame<>' ') and (kd_luas<>'') and
( kd_ sudut pandango ' ' ) and ( kd_zonasi<> ' ' ) and (kd_fungsi_jaian<>'') and (ed_nc_sptpd.Texto'') and
(ed isi .Texto' * ) and (jum_hariO0) and (ed_nsr .Texto ' *)
t h e n
begin
{2. cari data yang sama di table spipr}
modul.global_query('select * from spipr where lower(no_spipr)^'"ilowercase(ed_kd_spipr.Text) + '''',0) ;
//jika data tidak ditemukan, maka simpan data if modul.MyQueryl.RecordCount<=0 then
begin
//load nomor urut data
f_utama. inc_id (' select rnax(id)+] as id from spipr');
//simpan data ke tabel penerimaan_sptpd
modul.globai_query('insert into
penerimaan pajak rekiame(no_sptpd,no_spipr,tgl,jumlah_pajak ,sts)values(' + ' " '+ed_no_sptpd.Text+'•',»»'+ed_kd spipr.Tex t+' * ', ' ' '+formatdatetime('yyyy/mm/dd',now) + '*', '+ *''*+fioat tostr(nilai_sewa_reklame*0.25)+''',''blm lunas'')',1);
f_utama.pesan(1);
clear_all;
ed_kd_spipr.SetFocus;
end
//jika data yg sama ditemukan, tampilkan dialog update else if modul.MyQueryl.RecordCount>0 then
begin
f_utama. update_dig;
if f_utama.sts_update then begin
if sts='belum habis' then
//update data tabel penerimaan sewa_rekiame
modul.global_query('update penerimaan_sewa_reklame set nilai_sewa—'',+floattostr(nilai_sewa rekiame)+''' where '+
' no_spipr^ '''-fed_kd_spipr. Text + '''',1) ; //update data tabel penerimaan_sptpd
modul.global_query('update penerimaan sptpd set jumlah_pajak-'''+f3 oattostr(nilai sewa_reklame*0.25) + ''' where '+' no_sptpd-'' *+ed no sptpd.Textf''',1);
e n a
else if sts^'habis' then
modul.giobal_query('update spipr set
sts='''+sts+'''where
no spipr^'''*-ed_kd spipr.Text+'''',!) else if sts='perpanjang' then
begin
if(ed_no_sptpd2.Text='')then Application.MessageBox('Nomor sptpd baru belum diisi!','Error',mb OK or mb_lconError)
else
if (ed_no_sptpd2 .Texto'' ) then begin
//update tabel spipr
modul.global_query('update spi pr set sts-' ''+sts+'''where no_spipr=' ' '+ed kd spipr.Textf' ''',1) ;
end;
f_utama.pesan(3) ; clear_all;
ed_kd_spipr.SetFocus;
end
else if not(f_utama.sts update) then begin
f_utama.pesan(5);
ed_kd spipr.SetFocus;
end;
end;
clear_all;
ed_kd_spipr.SetFocus;
end
/ / j i ka data tidak lengkap
else i.f (ed_kd_spipr. Text=f ' ) or (ed_nm_pemohon.Text='') or (ed_ alamat.Text='') or (ed_nm_perusahaan.Text=' ' )
or (ed_al.amat_perusahaan.Text-1 f ) or (ed_npwp.Text=' ' ) or (kd jns_roklame^'') or(kd luas='') or
(kd_sudut_pandang=' ') or (kd_zonasi^f *) or (kd_fungsi_jaian='') or (ed_no_sptpd.Text='') or
(ed_isi.Text=f ') or (jum_hari=0) or (ed_nsr.Text-' ') then
begin
f_utama.pesan(0);
ed _kd_ spipr.SetFocus;
end;
end;
5.2.19 Implementasi Form Data SPIPR
Form ini untuk memberikan informasi sesuai input yang dikehendaki oleh user.
Untuk mencetaknya mengeklik tombol Print. Adapun gambar form SPIPR dapat dilihat
dibawah.
! p D*t* tton P»rrnotioh»ii nm PvnyvlMuaraan fufcl»m» !_!ic;
F*
- I J1*E2L Slid ^^J;*"'!!1? J I™'Ji" Print 'irkvit.i" JE^M
fflj^ki^r*r _fr"^ n^ftf^tvoi. ;
Gambar 5.2.19 Form data SPIPR
cbjilter Edftl"
procedure Tf_dt_spipr.cb_filterChanqe(Sender: TObject);
begin
if (cb_filter.Texto'' ) then begin
case cb_filter.itemlndex of 0 : editl.Visible:=true;
1 : editl.Visible:-true;
2 : begin
ComboBox2.Visible:=true;
isi_combobox(2);
end;
3 : begin
ComboBox2.Visible:^true;
isi_ combobox(3);
end;
4 : begin
unc ComboBox2.Visible:=true;
'-\ isi_combobox (4 );
end;
a. k 5 : begin
a.k ComboBox2.Visible:=true;
isi_combobox(5);
d. k end;
6 : begin
jns ComtboBox2 .Visible: =true;
isi combobox(6);
a.k end;
7 : begin
DateTimePickerl.Visible:=true;
e DateTimePicker2.Visible:=true;
e end;
end 8 : begin
DateTimePickerl.Visible:=true;
DateTimePicker2.Visible:=true;
end;
5.2.2 9 : begin
ComboBox2.Visible:-true;
ComboBox2.Items.Clear;
Adaf ComboBox2.Items.Add('habis') ;
ComboBox2.Items.Add('blm habis');
ComboBox2.Items.Add('perpanjang') ;
end;
10 : DateTimePickerl.Visible:^true;
el se
begin
Label2.Caption:='';
tampil_dt_spipr('select
a.*,b.nm luas rekiame,c.nm zonasi,d.nm sudut pandang,e.nm f