Penulis : Saepudin S.Kom
LATAR BELAKANG
Penulis telah beberapa kali pindah
perusahaan. Setiap perusahaan yg pernah penulis ‘datangi’ hampir semua berbeda
Software dalam mengembangkan Sistem Aplikasinya, ada yg menggunakan Ms.Visual
basic, Borland Delphi, Foxro, dan yg terakhir ini menggunakan PowerBuilder.
Ketika penulis mempelajari Software
Ms.Visual Basic & Borland Delphi, penulisa cukup mudah mendapatkan buku
bacaan sebagai referensi, tapi ketika penulis pindah ke Perusahan yg
menggunakan Software Powerbuilder penulis sangat kerepotan mencari buku
bacaannya.
Dari pengalaman tersebut penulis
‘terpanggil’ untuk menulis sebuah buku bacaan bagi para Programmer pemula &
lanjutan yg ingin mempelajari Software PowerBuilder
Untuk Siapa Buku ini..?
Software PowerBuilder sangan mudah
dielajari & dipahami, Sotware ini banyak memberi kebebasan “programmer’
dalam mengembangkannya. Jadi para pembaca tidak usah kuatir menemukan masalah
saat mempelajarinya.
Buku ini tidak dikhususkan untuk Para
Programmer Pemula atau yg sudah berpengalaman. Tapi saran penulis agar mudah memahami buku
ini ada baiknya para pembaca sudah
mengerti Konsep Pemograman dan konsep database.
Software Yg di Butuhkan.
Buku ini
terdiri dari 20% teori dan 80% praktek. Jadi
untuk prakteknya pembaca harus menginstal beberapa Program di bawah ini
1. PowerBuilder (di buku ini Penulis menggunakan
versi 8)
2. Oracle (sebagai database)
3. Ms.Accses(sebagai database)
4.
DAFTAR ISI
PENDAHULUAN
BAB I FORMAT
PROGRAM POWERBUILDER
Pendahuluan
Workspace
Application
Window
BAB
II Menu dan Frame (Multiple Document Interface )
Latihan : Aplikasi Aritmatika
BAB
III Koneksi database
Seting ODBC di PowerBuilder
DB Profile
Latihan :
Koneksi database
Menampilkan
Data
BAB
IV Datawindow
Datawindow dengan Argument /
Parameter
Data window – Desain Print
BAB V
Penggunaan TreeView & Dropdown
Button
TreeView
Dropdown Button
BAB
VI Koneksi Database tahap II
Koneksi Aplikasi langsung ke dua database atau lebih
BAB
VII Event dan Fungsinya
BAB
VIII Kumpulan Script & Trik (SQL)
Validasi Input
Script Delete dengan Script Power Builder vs SQL
Cara
Manggil/Jalanin Prosedure Oracle
Pengurutan
(Sorting)
Datawindow
Datawindow scrollnya balik ke nol
(ue_insert)
Supaya Kolom di datawindow wajib di
isi
Datawindow Readonly
Memberi warna untuk Row yg aktif dan
bisa juga untuk validasi dengan warna
Membuat Warna Zebra di data window
Untuk Control Field didatawindow
Cara bikin Squence
di Oracle
Bagian
I :
Pendahuluan
Workspace
Application
Window
|
Pendahuluan
Sekilas Tentang PowerBuilder
PowerBuilder
adalah salah satu dari kelompok Sybase
yang memungkinkan Anda untuk membangun
berbagai jenis aplikasi sistem informasi database dan untuk databasenya
bisa menggunakan microsoft access, SQL server dan oracle. Selain itu
PowerBuilder juga nyediakan aplikasi
untuk pengembangan client / server, multitier, dan aplikasi Internet.
PowerBuilder
sangat mudah untuk di pelajari dan di gunakan membangun sistem perusahaan, Seperti order entry, akuntansi, dan sistem
manufaktur. Berbeda dengan Aplikasi pengembang lainnya, PowerBuilder sangat
ringan dengan sedikit komponen atau tool di dalamnya. Hal ini merupakan
kekurangan dari PowerBuilder tapi sekaligus sebagai kelebihan karena dengan
begitu PowerBuilder tidak menjadi berat
ketika Running.
Konsep di PowerBuilder
PowerBuilder
bekerja dalam workspace dengan satu target atau beberapa target. Bisa di simpulkan,
jika kita akan membuat aplikasi dengan Powerbuilder langkah-langkahnya adalah:
1.
Membuat
Workspace
2.
Membuat
Application (target)
3.
Membuat
Window (sebagai Form tampilan).
Supaya
konsep diatas mudah di mengerti, kita akan membuat aplikasi sederhana sebagai
berikut :
1.
Buatlah
Folder untuk menyimpan latihan kita ini, misalnya :D:\LatihanPB
2.
Masuk
ke Start - Sybase - PowerBuilder 10.0 – PowerBuilder 10.0
Menu dasarnya seperti dibawah ini,
Jika menu tree di samping kiri tidak ada, klik Button “System Tree”
3.
Klik
File – New - Workspace (Tab Workspace)
4.
Kemudian
arahkan ke Folder yg tadi kita Buat, ketikan nama Aplikasinya misalnya LatihanPB1, akhiri dengan Save
5.
Klik
File – New - Application (Tab Target) – akhiri OK
6.
Kemudian
akan Muncul form seperti di bawah ini, tuliskan nama Applikasi apa yg akan kita
buat kemudian klik Tab / Enter – Akhiri
dengan Finish
7.
Klik
File – New - Window (Tab PB Object) – akhiri OK,
8.
Masukan
Object “Static Text”
, Tulis kata-kata ‘ Aku Pasti Bisa’ di Properties – Text maka
akan tampil seperti dibawah ini
9.
Ganti
Properties – Tittle : WINDOW LATIHAN
10. Save as dengan nama w_latihan
11. Masukan Script untuk menjalankan
aplikasi, caranya :
a. Klik kanan Applicationnya
b. Pilih Edit
c. Masukan Script - open(w_latihan)
12. Kemudian Save – Pilih menu Run –Run
(Ctrl+R)
Bagian
II :
Menu
Multiple
Document Interface
Latihan
: Aplikasi Aritmatika
|
Menu
Menu
memberikan cara yg mudah untuk menjalankan kelompok perintah-perintah, misalnya
kita akan memanggil window dan lain-lain.
Untuk
lebih jelasnya mari kita buat aplikasi sederhana dengan menggunakan Menu.
Sebagai
catatan, agar memudahkan di pembahasan menu ini, maka latihan Applikasi diawal
tulisan diatas akan kita teruskan dengan penambahan Menu.
1.
Klik
File – New - Menu (Tab PB Object) – akhiri OK,
2.
Save
dengan nama “m_menu”, kemudian klik
kanan pilih ‘Insert Submenu Item’, isi dengan nama ‘FILE’
3.
Kemudian
Klik kanan di nama FILE tadi pilih Insert Submenu Item, isi dengan nama ‘MENU_1’
Multiple Document
Interface atau disingkat MDI
adalah jenis window yang
memungkinkan sebuah window program tunggal mengandung beberapa ruang kerja
terbuka secara bersamaan. Membuat
tampilan tidak terlalu rumit juga meningkatkan efisiensi penggunaan ruang layar., dan bab ini akan mencoba untuk menjelaskan proses secara
rinci.
Kembali ke pembasahan menu yg tadi, Langkah selanjutnya
adalah kita akan menghubungkan antara menu yg tadi buat dengan window utama
sebagai frame,asumsinya adalah w_utama sebagai window utama (frame) dan
w_latihan sebagai window yang akan kita panggil di Menu_1.
langkah-langkahnya
sebagaiberikut :
1.
Klik
File – New - Window (Tab PB Object) – akhiri OK,
2.
Ganti
Properties – Tittle : WINDOW UTAMA - Save dengan nama w_utama
3.
Seting
MenuName ke ‘m_menu’ dengan cara
klik ‘eclip’ kemudian pilih menu yg tadi
kita buat
4.
Setting
Window Type ke ‘MDI’
5.
Masuk
ke m_menu kemudian double klik di MENU_1,
masukan script : OpenSheet(w_latihan,
w_utama, 5, Original!)
6.
Agar
ketika running yg pertama kali berjalan adalah w_utama, maka kita ganti script
di Applicationnya menjadi : open(w_utama)
7.
Silahkan
di coba running. Ketika kita klik File – MENU_1 maka window w_latihan akan
muncul
8.
FINISH
Latihan Aplikasi aritmatika dengan
PowerBuilder
Pada
pembahasan kali ini kita akan membahas tentang aritmatika di PowerBuilder mulai
dari penjumlahan, penambahan & pengurangan
1.
Buatlah
aplikasi kemudian atur tampilan seperti di bawah ini, gunakan Object dibawah
ini :
a.
untuk : Bilangan 1 & bilangan 2
b.
untuk kolomnya
c.
untuk button Proses
Masukan
scrip, caranya double klik Button tambah, maka kita akan masuk ke window script
editor, kemudian masukan script di bawah ini.
decimal
ld_bil_1,ld_bil_2,ld_total
ld_bil_1 =
dec (sle_1.text)
ld_bil_2 =
dec (sle_2.text)
ld_total =
ld_bil_1 + ld_bil_2
sle_3.text =
string (ld_total)
Lakukan
juga untuk Button ‘Kurang’.
Kemudian
Coba di Running – dan di test
Bagian
III :
Koneksi
Database
Seting
ODBC
Setting
DB Profile
|
Koneksi Database
Untuk
menghubungkan PowerBuilder dengan database adalah melalui Database Profile
, disini kita bisa setting mau ke jenis DataBase apa
PowerBuilder akan di hubungkan.
Di PowerBuilder
sendiri database yg digunakan bisa bermacam-macam, bisa dengan Ms.Accses,
Oracle & SQL Server. Tapi dalam pembahasan kita kali ini, kita akan
menggunakan database dari Ms.Accses dengan bantuan mesin ODB ODBC.
Langkah
pertama adalah Buatlah Database di Ms.Accses kemudian save dengan Nama : MyDB.mdb
Selanjutnya
untuk menyambungkan antara Ms.Accses sebagai database ke Aplikasi yg kita buat
dengan PowerBuilder adalah kita harus seting ODBC terlebih dahulu. Seting ODBC
bisa melalui PowerBuilder langsung atau bisa juga melalui Control Panel yg berada di Komputer yg berbasis Window.
Untuk
latihan Ini, Kita buat database dengan nama MYDB dengan Data Sebagaiberikut :
Tabel
:Cd_Code,Member,Sys_Menu,Sys_user_Prv,User_nm
Field di tabel Member :
ID_Member,Id_date,Full_Name,Nick_Name,Birth_Place,Birth_date,Education,
Work_Status,Email
(karena
tabel ini yg akan kita Coba)
A.Seting ODBC
1.
Masuk
ke PowerBuilder – DB Profile
2.
Masuk
ke ODB ODBC -Utilities– Double Klik Create ODBC data source
3. Pilih File data Source(Machine
Independent) – Next
4.
Pilih Driver do Microsoft Accses(*.mdb) – Next>
5.
Klik
Brouse, arahkan dimana database kita simpan, Klik Next sampai Finish
6.
Selanjutnya
Klik – Select Pilih Databasenya, akhiri dengan OK
B.Seting DB Profile
Setelah
kita seting ODBC maka langkah selanjutnya adalah kita seting DataBase Profile.
1. masuk ke DataBase profile – klik New
2. Masuk ke Tab Connection - Seting
Profile namenya menjadi MYDB dan data Source ke Ms Accses dataBase
3. Masuk ke tab Preview – Klik Test
Connection, kemudian arahkan database ke database yg tadi kita buat
4. Jika Ada Error abaikan saja. Karna
error tersebut akan kita tangani dengan Script, Akhiri dengan OK sampai Finish
5. Klik DB Profile kita – pilih Connect,
kemudian arahkan database ke database yg tadi kita buat
6. Finish (kita Sudah terhubung dengan
Database
Untuk
melihat data yg ada di database, kita Bisa Masuk ke Icon DataBase
, pilih DataBasenya kemudian Pilih Tables- lalu Klik kanan di Nama Tabel tersebut - edit
Data –Grid.
Latihan I:
Pada
pembahasan kali ini kita akan menampilkan Data yg ada di database ke Aplikasi
dan mengolahnya dengan perintah Insert, Update, Delete dan Save
Untuk
menampilkan Data di database ke
Aplikasi, ada 2 langkah yg harus kita Buat
A.
Membuat
datawindow
B.
Mengkoneksikan
datawindow ke window dengan bantuan Object “DataWindow Control”
Buatlah
Aplikasi Sederhana atau bisa juga kita lanjutkan dari Aplikasi kita di awal dan
hanya menambahkan datawindow &
Windownya saja.
Langkah
Pertama : Membuat datawindow
1.
Klik
File – New - DataWindow (Tab Datawindow) –Tabular - akhiri OK,
2.
Pilih
SQL Select – kemudian Pilih tabel yg akan kita Olah. Untuk Contoh dibuku ini
kita menggunkan tabel yg ada Misalnya Tabel member, kemudian Pilih Field mana
saja yg akan di tampilkan, jika ingin di tampilkan semua kita Pilih Select All
3.
Kemudian
Pilih Icon “Return”
Pilih Next sampai
Finish
4.
Save
dengan nama “dw_member”
Langkah
kedua : Mengkoneksikan datawindow ke window
1.
Klik
File – New - Window (Tab PB Object) – akhiri OK,
2.
Ganti
Properties – Tittle : WINDOW LATIHAN DB
3.
Save
window Tersebut dengan nama : w_tampil_db
4.
Masukan
Object “DataWindow Control”
, Tempatkan di Window.
5.
Klik
(bukan Double Klik) Object datawindow tersebut atur Properties – DataObject,
arahkan ke DataWindow kita yg kita seting pertama
Sebelum
kita test Ruuning untuk menampilkan data, langkah pertama adalah kita akan
masukan Script Koneksi Database dan Script Menampilkannya.
1.
Masukan
Object dibawah ini :
untuk button Connect DB dan Button Tampil, di window yg kita
buat.
2.
Double
Klik Button Connect DB, kemudian masukan Script ini :
string ls_dir
ls_dir ='D:\LatihanPB\MyDB.mdb'
// Profile
sqlca.DBMS = "ODBC"
sqlca.AutoCommit = False
sqlca.DBParm = "ConnectString='DSN=MS Access
Database;UID=;PWD=;Dbq="+ls_dir+"'"
CONNECT USING sqlca;
if sqlca.sqlcode <> 0 then
messagebox("Information","Connection
fail"+ sqlca.sqlerrtext)
halt
else
messagebox("Information","Connection
Succses ")
end if
RETURN 0
3.
Double
Klik Button Connect DB, kemudian masukan Script ini :
dw_1.settransobject(sqlca)
dw_1.retrieve()
Keterangan
:
-
ls_dir
='D:\LatihanPB\MyDB.mdb' (alamat dimana database accses kita disimpan)
-
dw_1. = (nama datawindow kita yg ada di window, bila ‘Name’ nya kita
Rubah maka scriptnyapun berubah)
4.
Silahkan
Running, setelah anda Running Klik Button Connect DB untuk Check Koneksi Database dan Klik Button
“Tampil” untuk menampilkan data (jika database sudah ada isinya maka akan
tampil)
Catatan :
Untuk
penempatan Script bisa disesuaikan dengan kebutuhan, dalam pembahasan ini
penulis menempatkan script di setiap Button dan pada event “clicked” agar bisa
di pelajari dan diikuti dengan mudah. Agar penempatan bisa lebih optimal
silahkan pelajari dipembahasan “Event”
di setiap Object.
Latihan II : Untuk lebih memahami latihan yg kedua ini, disarankan untuk mempelajari
terlebih dahulu materi ‘Datawindow
dengan Argument”, karena untuk latihan kali ini kita menggunakan datawindow
dengan parameter sebagai pencarian
Setelah kita
bahas dari awal maka dalam pembahasan saat ini kita akan membuat aplikasi
sederhana dengan koneksi database.
1.
Buatlah
aplikasi sederhana
2.
Tambahkan
datawindow, button comand seperti gambar di bawah ini :
3.
Masukan
script di button Comand di bawah ini :
a. Connect DB :
b. Tampil :
c. Insert :
d. Delete :
e. Save :
Ketika
di Running, maka hasilnya sebagaiberikut :
Jika pada
saat kita Insert data kemudian save, tapi didatabase tidak tersimpan maka
silahkan Check ke data window – update Properties, caranya :
Masuk ke datawindow (edit datawindow jika datawindow belum
terbuka) – Menu Rows – Update properties
Pastikan Semua ‘Updatetable Columns’ terblok (active),
sebagaimana gambar :
Bagian
IV :
Datawindow
Datawindow
dengan Argument
Datawindow
untuk Print
|
Datawindow
Sebelum
Kita Lanjutkan ke Script Insert, Delete dan Update. Ada baiknya kita akan
pelajari terlebih dahulu datawindow & pengaturannya. Agar tampilannya
terlihat rapi dan mudah di Baca.
Datawindow
dapat dikatakan sebagai form untuk menampilkan data yg ada di database, di
datawindow kita bisa seting sebagai tempat inputan atau bisa juga kita seting
sebahgai report. Untuk memulai pengaturan ikuti langkah-langkah dibawah ini :
1.
Masuk
ke Treeview – klik kanan datawindow mana yg akan kita edit
Dalam Form
datawindow tersebut ada 4 bagian
a. Header : Di Gunakan Untuk penempatan
judul atau header
b. Detail : di gunakan untuk penempatan
data
c. Summary : di gunakan untuk hasil
penjumlahan
d. Footer : di gunakan untuk catatan
khusus / Footnote
2.
Klik
ID Member yg berada di Posisi Header-kemudian
Klik
Pilih Object Should
have3rd Raised Border, untuk membuat Kolom menjadi tebal
3.
Dan
untuk Kolom ID Member yg berada di Posisi Detail-Pilih yg bawahnya Should
have3rd lowered Border
4.
Lakukan
hal yang sama untuk semua kolom (Field). Lebih jelasnya :
a.
Kolom yg Berada di posisi Header menggunakan Should have3rd Raised Border,
b.
Kolom yg Berada di posisi Detail
menggunakan Should have3rd lowered Border,
5.
Atur
warna tect dan warna backgroundnya dengan toolbar
6.
Maka
hasilnya seperti berikut
7.
Setelah
selesai Save, maka tampilan di window akan ikut berubah
Untuk
melihat atau merubah Sintak SQL yg ada di data window, kita gunkana icon
, kemudian pilih Design – Convert to Syntax. (jika tampilan
awal berupa tabel)
Toolbar yang sering di gunakan saat merancang
datawindow
Untuk
menyamakan antara Kolom, misalnya kita akan mensejajarkan antara kolom,
caranya klik Kolom patokan selanjutnya Klik+shift kolom yg lain untuk
menikuti (kolom yg pertama di klik akan selalu jadi patokan
|
|
Untuk
merubah tampilan kolom menjadi tebal, tipis atau kolom inputan
|
|
Untuk
merubah warna Text kolom
|
|
Untuk
merubah background kolom
|
|
Retrieve
/ Untuk menampilkan data
|
|
Untuk
menambahkan Text
|
|
Untuk
Memasukan rumus-rumus tertentu, caranya Klik dimana kolom tersebut akan
ditempatkan maka akan muncul form
untuk memasukan Rumus
|
|
Menambahkan
kolom yg belum tampil
|
|
Untuk
operasi Penjumlahan, caranya Klik kolom yg akan di jumlahkan maka secara
otomatis akan tampil hasilnya di bagian Summary
|
|
Untuk
merubah Sintak SQL, atau mendesain ulang SQL data window
|
|
Untuk
menutup datawindow
|
|
Untuk
mengatur Tab juga mengatur kolom mana yg boleh di isi. Jika isinya Nol / 0
maka Kolom tersebut akan bersifat Read Only
|
Merancang Data window dengan Argument (parameter)
Datawindow
dengan Argument maksudnya adalah ketika kita akan menampilkan data yg begitu
banyak dan kita harus membatasi data apa saja yg akan di tampilkan, maka dengan
itu kita gunakan satu Argument atau beberapa Argument tergantung kebutuhan.
Misalnya ketika kita akan menampilkan data ‘Member’ tapi khusus yg namanyaa ‘
ANDY’ maka yg kita butuhkan adalah satu Argument, untuk syntax sqlnya seperti
berikut :
SELECT
* FROM MEMBER WHERE FULL_NAME LIKE
‘ANDY%’
Maka
dalam PowerBuilder, kata ‘ANDY%’ kita
jadikan variabel misalnya “ :as_nama”, maka penulisanny didatawindow berubah
menjadi :
SELECT
* FROM MEMBER WHERE FULL_NAME LIKE :as_nama
+‘%’
Untuk
lebih jelasnya kita akan praktikan didatawindow sepertiberikut :
1.
Masuk
ke Treeview – klik kanan datawindow mana yg akan kita edit
Maka hasilnya seperti berikut
2.
Masuk
ke kita icon
, kemudian pilih Design – Convert to Syntax. (jika tampilan
awal berupa tabel), maka form akan berubah ke Syntax SQL
3.
Buatlah
Retrieve Arguments – as_nama dengan
variabel String kemudian rubah Scripynya menjadi : SELECT * FROM MEMBER WHERE
FULL_NAME LIKE :as_nama+’%’
4.
Pilih
Return
– kemudian Save
5.
Untuk
mengetes hasilnya, masuk ke menu
Rows -Retrieve – masukan
parameternya, misalnya ‘ANDY’ maka data yg keluar semuanya berawalan ‘ANDY’
Catatan :
Jika
datawindow kita menggunkan parameter/Argument maka script pemanggilanpun
berubah, misalnya di awal ketika kita menampilkan data, scriptnya dalah :
DW_1.RETRIEVE(),
(tanpa parameter/argument), ketika ada parameter/argument maka scriptnya : String ls_nama
ls_nama :
‘ANDY’-----ini adalah isi yg akan di tampilkan
Dw_1.retrieve(ls_nama)
Datawindow – Desain Print
Telah
kita uraikan di atas bahwasannya Datawindow bukan hanya bisa dijadikan sebagai
Form Inputan tapi bisa juga di Gunakan sebagai Form Report. Maka dalam tulisan
ini, kita akan membahas Datawindow dengan desain Report.
Buatlah
Aplikasi Sederhana atau bisa juga kita lanjutkan dari Aplikasi kita di awal dan
hanya menambahkan datawindow &
Windownya saja.
Langkah
Pertama : Membuat datawindow
1.
Klik
File – New - DataWindow (Tab Datawindow) –Tabular - akhiri OK,
2.
Pilih
SQL Select – kemudian Pilih tabel yg akan kita Olah. Untuk Contoh dibuku ini
kita menggunkan tabel yg ada Misalnya Tabel member, kemudian Pilih Field mana
saja yg akan di tampilkan, jika ingin di tampilkan semua kita Pilih Select All
3.
Masukan
Argument sebagai pencarian
4.
Kemudian
masukan Argumentnya : Misalnya dalam report nanti kita akan menggunakan tanggal
Daftar sebagai parameternya
5.
Jika
kita ingin melihat Syntac SQLnya, maka masuk ke menu Design Convert To Syntac
6.
Kemudian
Pilih Icon “Return”
Pilih Next sampai
Finish
7.
Save
dengan nama “dw_member_print”
Langkah
selanjutnya adalah kita mendesaign report, ada beberapa Tool yg dapat di
gunakan
Untuk
menyamakan antara Kolom, misalnya kita akan mensejajarkan antara kolom,
caranya klik Kolom patokan selanjutnya Klik+shift kolom yg lain untuk
menikuti (kolom yg pertama di klik akan selalu jadi patokan
|
|
Untuk
menambahkan garis
|
|
Untuk
mengatur Tab juga mengatur kolom mana yg boleh di isi. Jika isinya Nol / 0
maka Kolom tersebut akan bersifat Read Only
|
8.
Untuk
tampilan Tanggal yg tadinya :20140701 menjadi : 2014.07.01, maka kita harus
mengatur Propoertiesnya menjadi ‘editmask’, caranya, klik kolom tanggal
(id_date) yang berada di bagian detail, kemudian sebelah kanan ada Properties -
Tab edit – style Type
9.
Klik
tab Order
, isikan angkanya menjadi Nol / 0 untuk semua kolom. Artinya
kolom tersebut bersifat Read Only atau tidak bisa di Klik
10. Hasil akhirnya seperti ini – jangan
Lupa Save untuk semua perubahan ini
Untuk
membuat fasilitas Argument, kita akan menggunakan bantuan datawindow yg berisi
tanggal mulai (sdate) dan tanggal Akhir (edate).
Silahkan
buat datawindow dengan SQL sebagai berikut
Dan
desain sebagai berikut
Save
dengan nama : dw_member_print_head
*Guanakan
Propoertiesnya ‘editmask’ = ‘####.##.##’ untuk tampilan lebih menarik
**
jangan lupa, tab Ordernya di isi / jangan Nol 0
Langkah
kedua adalah membuat window Print untuk menempatkan datawindow yang tadi kita
buat.
1.
Buat
Window dengan desain seperti gambar di bawah ini
2.
Save
dengan nama w_print_db
Keterangan :
a.
Dalam
window tersebut ada 2 datawindow
1) Datawindow dw_head yg berisi dw_member_print_head
2) Datawindow dw_print yg berisi dw_member_print
Scipt untuk Tiap Buton :
1.
Untuk
Connection kita akan mencoba menempatkan pada saat window tersebut di buka
(event – Open), caranya double klik window tersebut, masuk event – open. Masukan
scriptnya. Maka hasilnya sepeti dibawh ini :
2.
Button
Retrieve
3.
Button
Preview
4. Button Print
PrintSetup ( )
Bagian
V :
Treeview
Control
Dropdown
List Box
|
Treeview Control
Pada
pembahasan kali ini kita akan membuat Aplikasi sederhana dengan tampilan
Treeview Control. Kelebihan dengan penggunaan treeview adalah kita bisa
menampilkan data dalam group kecil. Jadi memudahkan kita dalam membaca report
atau data inputan. Untuk lebih jelasnya mari kita coba sekarang.
1.
Buatlah
Aplikasi sederhana dengan desain Window
seperti gambar di bawah ini
Catatan :
*Untuk Datawindow gunakan Argument
ID_date
2.
Save
window dengan nama w_tampil_treeview
3.
Atur
Poperties Treeview - PictureName
Untuk
Poperties - PictureName tidak baku harus menggunakan gambar yg ada, tergantung
kita, menggunakan Picture yg ada atau yg lain.
Catatan :
Untuk Latihan Ini kita menngunakan Tabel yg sudah ada isinya sebagai berikut
4.
Script
yg di gunakan ada di 2 event
a. Even Open – Window (w_tampil_treeview
– Open())
b. Event Selectionchanged – Treeview
Test Running,
Untuk Tampilan awal, Datawindow akan kosong, tapi ketika kita
Klik di Treeview maka akan muncul datanya
Dropdown List Box
Diatas Kita
sudah mencoba menampilkan data dengan bantuan Treeview, maka saat ini kita akan
mencoba melalui Dropdown List Box
.
Caranya kita
tambahkan toolbok DropDownListBox,
kemudian Kita hanya perlu menambahkan 1
baris script di Even Open – Window (w_tampil_treeview – Open()). Ini pengalan
script tersebut :
Tambahkan
Juga script agar ketika Dropdown List di
Klik, data tampil, masukan di event DropDownListBox – SelectionChanged :
Tampilan akhirnya seperti berikut :
Bagian
VI : Koneksi Database
Koneksi
DB By System
Koneksi
DB Manual
|
Untuk
Koneksi database dalam Powerbuilder dilakukan dengan scrip dengan cara copy
& paste script yg ada di di DbProfile. Script tersebut bisa disimpan di
Event Open atau yg lainnya tergantung kebutuhan, namun tidak menutup
kemungkinan jika aplikasi yg kita buat mengharuskan koneksi ke database lain
atau dalam artian 1 applikasi masuk ke banyak database. Maka untuk kasus
seperti ini kita gunakan script di bawah ini :
Script dibawah ini untuk koneksi
database yg normal atau database utama :
Koneksi Database By System
// Profile Server01
SQLCA.DBMS =
"O84 Oracle8/8i (8.x.4+)"
SQLCA.LogPass
="AkupastiBisa01 "
SQLCA.ServerName
= "Server_01"
SQLCA.LogId =
"user_01"
SQLCA.AutoCommit
= False
SQLCA.DBParm
= "PBCatalogOwner='iycost'"
connect using
SQLCA;
if
sqlca.sqlcode <> 0 then
messagebox("Informasi","Tidak
tehubung database")
return
end if
open
(w_login)
Keterangan :
Untuk Script diatas penulis menggunakan data sebagaiberikut :
Nama Server : Server_01
Nama ID : user_01
Password : AkupastiBisa01
Database : Oracle8/8i
Script dibawah ini untuk koneksi
database yg lain atau database yg di ikut sertakan :
Buat Variabel di Instan
transaction
PASS
Ketikan di event Open
string
ls_dir
ls_dir ='D:\LatihanPB\MyDB.mdb'
PASS =
CREATE transaction
// Profile
PASS.DBMS = "ODBC"
PASS.AutoCommit = False
PASS.DBParm =
"ConnectString='DSN=MS Access
Database;UID=;PWD=;Dbq="+ls_dir+"'"
CONNECT USING PASS;
if PASS.sqlcode <> 0 then
messagebox("Information","Connection
fail"+ PASS.sqlerrtext)
st_1.text
= "Connection fail "
halt
else
st_1.text
= "Connection Succses "
// messagebox("Information","Connection
Succses ")
end if
Keterangan
: Untuk Script diatas penulis
menggunakan data sebagaiberikut :
Database : Ms.Accses
Nama DB : MyDB.mdb
Untuk
menampilkan datanya sebagai berikut :
dw_1.settransobject(PASS)
dw_1.retrieve()
//setelah window ditutup disarankan
tutup koneksinya di even close
Disconnect using PASS;
Untuk
memanggil data melaui sytact SQL pun,jangan Lupa Ujungnya menggunakan using PASS
SELECT
USER_NM, USER_PASS, USER_LEVEL
INTO :gs_user_code,:gs_pass,:gs_level
FROM MIS_USER using PASS;
Bagian
VII :
Event
& Fungsinya
|
Event
Event adalah
diamana kondisi script tersebut di ekseskusi, misalnya jika kita ingin suatu
perintah dijalankan pada saat window di buka, maka script tersebut harus
diletakan di event – open, begitu juga saat klik dan lain-lain.
Tabel di bawah ini akan sedikit memberi anda gambaran
event-event yang sering di gunakan.
Event
|
Keterangan
|
Object
|
Open
|
Perintah akan di ekseskusi ketika object tersebut tampil
|
Window
|
Double Clicked
|
Perintah akan di ekseskusi ketika object tersebut di Klik dua kali
|
Window,Datawindow,Button,Treeview,Dropdown Listbox dan lain-lain
|
Clicked
|
Perintah akan di ekseskusi ketika object tersebut di Klik
|
Window,Datawindow,Button,Treeview,Dropdown Listbox dan lain-lain
|
Selectchanged
|
Perintah akan di ekseskusi ketika object tersebut dipilih
|
Datawindow,Button,Treeview,Dropdown Listbox dan lain-lain
|
ItemChanged
|
Perintah akan di ekseskusi ketika object tersebut ada perubahan
|
Datawindow
|
Constructor
|
Perintah akan di ekseskusi ketika object tersebut
ditampilkan/diaktifkan
|
Datawindow
|
Getfocus
|
Perintah akan di ekseskusi ketika object tersebut mendapat Focus
|
Datawindow,Button,Treeview,Dropdown Listbox dan lain-lain
|
Modified
|
Perintah akan di ekseskusi ketika object tersebut ada perubahan
|
Datawindow,Button,Treeview,Dropdown Listbox dan lain-lain
|
Tip & Trik Powerbuilder
Validasi Input
- Masukan
scrip di Sle_1.text di event Modify
ls_order =
sle_1.text
if
isnull(ls_order) or len(ls_order) = 0 then return
if match (
ls_order, "^[A-Za-z0-9]+$" ) = false then
messagebox("Perhatian","Ketikkan huruf atau angka
!")
sle_1.setfocus()
sle_1.selecttext(1,10)
return
end if
Script Enter - Masukan
script di Form di event Key
if keydown(keyenter!) then
cb_2.triggerevent("clicked")
end if
Script Delete dengan Script Power Builder vs SQL
integer
int_Delete
string ls_no
ls_no =
dw_batchlist.GetItemString( dw_batchlist.GetRow(), 'ID_no' )
int_Delete =
Messagebox( "Perhatian..",”ID akan didelet..!! ”, Question!,
OkCancel! )
IF int_Delete
= 1 THEN
dw_1.DeleteRow (0)
IF
dw_1.update() <> 1 THEN
messagebox("Information","Can
not Delete ~n~r to Data :"+ls_no)
rollback;
return
else
commit;
messagebox("InFormation","Sucses..!!")
end if
ELSE
MessageBox("Pesan",
"dibatalkan")
END IF
Rumus
Delete dari SQL //jangan Lupa KEY di Update
Properties Datawindow
Delete From T_Mahasiswa
Where ID_NO =
‘xxxxx’ ;
IF sqlca.sqlcode <> 0 THEN
MessageBox ("Information",”Delete
Faild “+SQLCA.SQLERRTEXT)
rollback;
return
end
if
Cara
Manggil/Jalanin Prosedure Oracle
DECLARE
C1 PROCEDURE FOR procedure_aku() USING SQLCA;
EXECUTE
C1;
CLOSE
C1;
/*---------------Jalanin
Prosedure tanpa Keluaran---------------*/
DECLARE
C_1 PROCEDURE FOR procedure_mhs(:ls_date1,:ls_date2) USING SQLCA;
EXECUTE
C_1 ;
CLOSE
C_1 ;
/*---------------Jalanin
Prosedure dengan Keluaran---------------*/
DECLARE
C1 PROCEDURE FOR procedure_aku(:ls_nik_no) USING SQLCA;
EXECUTE
C1;
FETCH C1 INTO :ls_keluran;
if ls_ keluran = '' then
messagebox("Information","Data
Kosong")
else
messagebox('Information',SQLCA.SQLErrText)
end if
CLOSE
C1;
Pengurutan
(Sorting)
Ketikan di Datawindow - event Buttonclicked
if
lower(dwo.name)= 'b_1' then
dw_1.SetRedraw(false)
dw_1.SetSort("#1 A") //urutkan
Ascending berdasarkan Colom 1
dw_1.Sort()
dw_1.SetRedraw(true)
elseif
lower(dwo.name)= 'b_2' then
dw_1.SetRedraw(false)
dw_1.SetSort("#2 A")// urutkan
Ascending berdasarkan Colom 2
dw_1.Sort()
dw_1.SetRedraw(true)
else
messagebox('pesan','salah')
end if
Datawindow
Datawindow scrollnya balik ke nol
(ue_insert)
this.Modify("DataWindow.HorizontalScrollPosition='0'")
Supaya Kolom di datawindow wajib di
isi
This.Object.kredit.Edit.Required =
"no" atau
dw_1.Modify("kredit .Edit.Required=no")
Datawindow Readonly
dw_1.object.datawindow.readonly =
'No'
Memberi warna untuk Row yg aktif dan
bisa juga untuk validasi dengan warna
Scrip ini di
ketik di Datawindow - Properties – Font –Background color
if( getrow()
= currentRow() , rgb(180,192,192) ,rgb(255,255,255)) atau
if(currentrow()
= getrow(), rgb(166,209,225), rgb(255,255,255))
Membuat Warna Zebra di data window, Scrip ini di ketik di Properties – Font
–Background color
if( (mod( no
=1), rgb(192,192,192), rgb(255,255,255))
Untuk Control Field didatawindow,
kita gunakan di event – itemchanged
CHOOSE
CASE Lower(dwo.Name)
CASE
'mat_no'
{ARGUMENT
DI KETIK DISINI
END
CHOOSE
Cara bikin Squence
di Oracle
- Buka Toed, Masukan user sama password
- Masuk ke Tab.SEQUENCE, pilih new
- isikan sesuai gambar – lalu exceute
Cara manggil Sequence
Misal
namanya SEQ_ETC, maka cara manggilnya
SELECT SEQ_ETC.NEXTVAL
INTO
:ll_no
FROM
DUAL;
Jika ingin
keluaranya String, maka (keluarnnya '0001')
SELECT TRIM(To_char(SEQ_ETC
.NEXTVAL,'0000')
INTO
:ls_no
FROM
DUAL;
BIODATA PENULIS
Nama penulis Saepudin, lahir di Lebak
banten tgl 23 Juni 1981, anak ke 4 dari 5 bersaudara. Hobi dari dulu menulis.
Pernah menjadi Ketua seksi ‘mading’ (majalah
dingding) di PonPes Daar Al-Ilmi-
kaujon Serang. Pernah menjadi Assisten
Dosen Lab dengan matakuliah pemograman di lanjut menjadi Dosen LB(Luar Biasa)
selama satu tahun di Universitas Komputer Indonesia (UNIKOM). Setelah Lulus
dari kampus penulis sempat bekerja di salah satu Bank Swasta di kota Bandung.
Saat ini penulis bekerja sebagai Programmer di Perusahaan Pakan Ternak (PMA) di
Cikande Serang Banten.
Saat bekerja sebagai Assisten Dosen
sampai jadi Dosen, penulis sudah terbiasa membuat Modul-modul untuk para
mahasiswa agar bisa mencerna setiap
pembahasan yg diajarkan. Begitu juga saat bekerja di Perusahaan, penulis selalu
membuat ‘Manual Book’ agar para
user/pemakai program bisa memahami cara menggunakannya.
Setiap perusahaan yg pernah penulis
‘datangi’ hampir semua berbeda Sotware dalam mengembangkan Sistem Informasinya,
ada yg menggunakan Ms.Visual basic, Borland Delphi, Foxro, dan yg terakhir ini
menggunakan PowerBuilder. Dengan pengalaman itu semua alhamdulillah bisa
menambah ‘kamus’ pemograman penulis.
Pada dasarnya semua logika pemograman sama hanya yg beda bahasa
pemograman yg di gunakan. Jadi para pembaca tidak usah kuatir yg penting ada kemauan disitu ada jalan..
0 Response to "BELAJAR PEMOGRAMAN DATABASE DENGAN SOTWARE POWERBUILDER"
Post a Comment