PPPURG v 3.0.0

PPPURG v3

Inilah versi paling mutakhir (sampai saat tulisan ini diturunkan tentunya…). Untuk versi ini diresmikan pada Oktober 2009, mengambil segmen syawalan (Idul Fitri), meskipun sudah berselang 10 hari hehehe… Peluncuran program memang selalu diusahakan untuk berbarengan dengan event tertentu, karena promosi memang masih melalui notifikasi lewat email. Jika langsung hanya nongol numpang promosi saja mungkin akan kelihatan sedikit mengganggu, tetapi dengan terlebih dahulu mengucapkan ‘sesuatu’, baru kemudian disusul dengan informasi program maka diharapkan bisa terasa lebih santun, walaupun sebenarnya maksudnya sama saja hehehe… Barang bagus yang sama tapi kalau cara penyajiannya berbeda hasilnya juga bisa berbeda, begitu kira-kira filosofi yang dianut. Oke, pembukaannya mungkin sekian dulu, kini kita masuk pada menu hidangan utama kita, yaitu tentang feature tambahan/baru pada versi 3.0.0 ini.

Promo_V3_3

  • Gambar koefisien angin.

Dalam versi sebelumnya, untuk koefisien angin hanya dicantumkan berupa ringkasan kata-kata saja, yang mungkin membingungkan. Lagipula, pada peraturan sebenarnya yang dicantumkan berupa gambar sketsa, sehingga ringkasannya juga menjadi terlalu ringkas. Akhirnya pada versi ini penulis memutuskan untuk menampilkan gambar tersebut saja sekalian. Namun penulis tidak mengambil langsung gambar dari halaman peraturan, tapi penulis membuat gambar baru yang mengacu pada peraturan, agar bisa lebih jelas dan bisa full-colour. Gambar tersebut kemudian dimuat dalam VB dengan memanfaatkan picture box dan tambahan scroll bar vertikal karena ukuran gambar cukup besar sehingga tidak akan muat penuh dalam satu layar. Ada dua picture box yaitu luar dan dalam. Kotak luar berfungsi sebagai layar tampilan, sedangkan kotak sebelah dalam adalah tempat memuat gambar yang bisa digeser (scroll). Saat program pertama loading, dilakukan pengaturan sbb. :

Picture2.AutoSize = True

Picture2.BorderStyle = 0

Picture2.Move 0, 0

VScroll1.Max = 32767

VScroll1.SmallChange = Abs(Picture2.Height – Picture1.Height) / 100

VScroll1.LargeChange = Abs(Picture2.Height – Picture1.Height) / 10

Picture2 adalah obyek gambar yang dimaksud. Perintah autosize berguna untuk mengatur ukuran gambar agar muat ditampilkan dalam layar picture box, dan move akan menempatkan gambar pada permulaan koordinat (sebelah kiri atas) pada kotaknya. VScroll1 merupakan obyek scroll bar vertikal, yang diatur nilai maksimumnya (max), pergeseran saat tombol scroll digerakkan (smallchange) dan saat kolom  scroll bar diklik (largechange). Angka 10 dan 100 dapat diatur sesuai keperluan. Contoh di sini untuk smallchange gambar digeser sejauh 1/100 dari tinggi gambar dan untuk largechange sejauh 1/10 dari tinggi gambar. Selanjutnya, saat pengguna melakukan aksi pada scroll bar, diberikan kode berikut :

Picture2.Top = -VScroll1.Value * Picture2.Height / 32767

Perintah tersebut berguna untuk mengasosiasikan gerakan dari tombol pada scroll bar dengan posisi gambar pada kotak layar. Gampangnya, jika tombol scroll bar berada pada pertengahan, maka gambar yang ditampilkan juga harus ada pada pertengahannya, dst. Angka pembagi mengacu pada nilai VScroll1.Max sebelumnya. Nah, dengan ditampilkannya secara langsung gambar koefisien angin yang full colour ini maka diharapkan lebih membantu pemahaman dari pengguna.

Promo_V3_4b

  • Fasilitas data tambahan dengan format editing baru.

Untuk fasilitas data beban sendiri / tambahan dari segi tampilan memang masih sama, yang berbeda adalah pada saat editing data beban. Pada versi 2.0.0, penyuntingan dilakukan dengan membuka langsung file teks yang menyimpan data beban. Cara ini memiliki kelemahan yaitu kemungkinan penulisan data yang tidak sesuai dengan format yang ditetapkan. File data harus ditulis setiap 4 baris yang memuat nama beban, besar, satuan, dan keterangan. Jadi misalnya ada 2 data beban maka harus ada tepat 8 baris teks pada file tersebut. Jika lebih atau kurang, maka akan menimbulkan error karena program sudah ditentukan untuk membaca input setiap 4 baris. Hal ini yang menjadi titik rawan dari feature ini, terutama bila pengguna tidak terlalu mencermati format yang ditentukan. Sebenarnya saat itu penulis sudah mencoba untuk memakai format seperti pengolahan database secara sederhana, namun karena masih belum memahami benar (alias masih bingung…) maka sementara menggunakan cara editing langsung pada file teks input data.

Itulah sekilas alasan perlu adanya format baru dalam editing data beban tambahan. Saat memulai pencarian format baru pun, penulis sempat kembali mengkaji penggunaan metode database sederhana seperti diuraikan sebelumnya. Penulis sudah mencoba mengaplikasikan contoh kode program dari sebuah buku pada kasus program ini, namun ternyata hasilnya kurang memuaskan dan masih ditemui banyak bug maupun error, terutama dalam hal pembacaan data. Terpaksa penulis mencoba mengutak-atik sendiri kode program yang (sebisa mungkin) lebih sederhana. Setelah beberapa lama akhirnya bisa menemukan bentuk format yang lumayan handal dan memadai. Fasilitas ini menggunakan form tersendiri yang ditampilkan sebagai sarana editing data beban, jadi tidak melakukan perubahan langsung pada file teks, walaupun data yang ditampilkan memang masih mengacu pada file teks. Untuk kode programya, sebenarnya hanya berbentuk manipulasi sederhana atas tampilan pada form tersebut, menyesuaikan dengan data yang ada dan aksi yang dilakukan oleh pengguna. Jika kita simak gambar di atas sub-judul, terlihat ada kotak isian untuk nama beban, besar, satuan, dan keterangan, sama seperti format pada versi 2.0.0. Sama seperti pada versi sebelumnya, jika hendak melakukan penyuntingan, pengguna akan menekan tombol “Edit Data” di sebelah kanan layar tabel. Tampilan pada tabel juga masih menggunakan obyek listview. Tombol kontrol yang bisa dipakai pengguna untuk menyunting adalah “Edit”, “Simpan”, “Batal”, dan “Hapus”, dengan fungsi sesuai dengan nama tombol masing-masing. Tombol “<” dan “>” merupakan tombol navigasi untuk berpindah ke data beban sebelum atau berikutnya. Jadi secara garis besar, pada form akan ditampilkan data sesuai yang ada pada file teks (dibaca dari file tersebut), lalu ketika pengguna melakukan editing pada form maka file teks juga akan diubah secara otomatis oleh program sesuai event yang terjadi.

Untuk kode programnya, saat pertama kali program dibuka, maka kotak input dan tombol aksi dinon-atkifkan sehingga hanya tombol navigasi saja yang sementara aktif.

cmdSimpan.Enabled = False

. . .

txtBeban.Enabled = False

. . .

Untuk tombol navigasi maju (>) dan mundur(<), program pertama kali akan menghitung posisi aktual setelah dilakukan aksi. Misal posisi pada beban no.4 (terlihat pada kotak isian di depan nama beban) dan ditekan tombol “<”, maka posisi sekarang adalah beban no. 4-1 = 3. Tentu saja untuk data di nomor awal dan akhir sebelumnya perlu dilakukan pemeriksaan dahulu agar tidak bablas (no.beban 1-1=0…?). Selanjutnya program akan membaca file teks input data sesuai nomor beban aktual tadi, dan kemudian menampilkannya pada kotak isian yang ada, masing-masing untuk nama beban, besar, satuan, dan keterangan.

Sub Maju()

I = txtNo.Text

If I < N Then

Open “Data.txt” For Input As #1

txtBeban.Text = Beban(I + 1)

. . .

Close #1

txtNo.Text = I + 1

ElseIf I = N Then

Open “Data.txt” For Input As #1

txtBeban.Text = Beban(I)

. . .

Close #1

End If

End Sub

Setelah pengguna sampai pada nomor beban yang dikehendaki, selanjutnya pengguna akan melakukan aksi pada data beban tersebut (“Edit”, “Simpan”, “Batal”, atau “Hapus”). Secara garis besar, kode program untuk mengakomodasi aksi tersebut meliputi aktivasi atau non-aktifkan kotak input teks, pembacaan dan penulisan file teks sumber data, dan perubahan tampilan pada kotak input teks. Misalnya kode untuk perintah “Simpan” adalah sbb.:

Sub Simpan()

X = txtNo.Text

Beban(X) = txtBeban.Text

. . .

Open “Data.txt” For Output As #1

For I = 1 To N

Write #1, Beban(I), Besar(I), Satuan(I), Keterangan(I)

Next

Close #1

cmdEdit.Enabled = True

. . .

cmdSimpan.Enabled = False

. . .

txtBeban.Enabled = False

. . .

End Sub

Untuk tombol-tombol aksi / perintah yang lain memakai kode yang serupa intinya, hanya berbeda penerapannya saja. Kode tombol “Hapus” hanyalah berupa pengosongan teks pada kotak input saja. Setelah pengguna puasss (bukan salah ketik, memang ada 3 huruf “s”…) menyunting data beban tambahan dan menutup form, maka untuk tampilan pada layar program utama (tabel pada Tab Beban Lain/Tambahan) perlu untuk diupdate secara manual lewat tombol “Update Data”. Kode programnya mirip dengan penampilan data pada tabel beban tambahan saat program pertama dibuka/loading (lihat pembahasan pada versi 2.0.0). Dengan adanya format baru yang lebih user-friendly ini, diharapkan pengguna bisa lebih mudah dalam melakukan editing terhadap data beban tambahan. Di sisi lain, pembuat program juga bertambah ilmunya dalam hal manipulasi database secara sederhana (walaupun juga baru sedikit sekali heheheh…).

Promo_V3_7

  • Petunjuk Penggunaan.

Fasilitas ini terutama ditujukan untuk bisa menjadi semacam user manual program, dalam bentuk format *.pdf. Walaupun programnya memang terlihat sangat sederhana, namun penulis tetap merasa perlu untuk membuat dan menyertakan petunjuk pemakaiannya, terutama untuk fungsi tombol-tombol dan fasilitas beban tambahan. Selain itu, penulis juga menyertakan pada petunjuk ini contoh pemakaian program dan perhitungan sederhana untuk sebuah kasus, yaitu pengambilan dan pembacaan data pada program menyesuaikan dengan yang diperlukan pada kasus. Dengan adanya petunjuk ini, maka segala penjelasan tentang program dan pemakaiannya dapat langsung dipelajari sendiri oleh pengguna dalam satu paket. Untuk akses petunjuk ini bisa dilakukan lewat program (disediakan tombol untuk membuka file ini di kanan atas program), atau pengguna juga bisa membuka langsung file PDF yang ada pada alamat instalasi program yang telah ditentukan. Install? Wah, sudah tidak pakai zip-zip-an lagi ni ya… Ya iyalah, simak saja ulasan berikutnya di bawah ini.

Setup_V3_1

  • Format instalasi / setup.

Pada versi sebelumnya (2.0.0) penulis sebenarnya telah mencoba untuk membuat paket instalasi program (tidak lewat kompresi file) memanfaatkan fasilitas yang ada di VB, namun masih ada kendala dari sisi ukuran file setup yang terlau besar dan ditemuinya beberapa error saat setup dijalankan. Karena tidak puas maka saat dalam tahap pembuatan versu 3.0.0 ini penulis kembali bertanya kepada mas Google dan pak Yahoo! yang selalu siaga di internet. Penulis akhirnya menemukan sebuah software sederhana nan gratis yang berfungsi untuk membuat paket instalasi dari suatu program, yaitu Inno Setup. Pengguna tinggal menentukan sendiri file utama dan file pendukung yang akan dimasukkan dalam paket, dan juga penentuan setting semacam pembuatan shortcut di desktop atau pada tombol Start, dll. Pembuatan paket instalasi ini cukup mudah karena dilakukan lewat bimbingan fasilitas wizard sehingga pengguna tinggal menentukan saja bagian mana saja yang ingin diikutkan atau diaktif/non-aktifkan. Tersedia juga fasilitas tingkat lanjut dengan editing langsung pada kode instalasi program dan penentuan parameter tambahan. Kelebihan dari hasil paket instalasi ini yaitu tampilannya juga cukup cantik dan profesional, sama seperti saat kita melakukan instalasi suatu program komersial, dibandingkan dengan hasil jika memakai fasilitas lewat VB. Singkat cerita, penulis pun langsung mencoba kehandalan program ini dan hasilnya cukup memuaskan. Tentu saja penulis harus beberapa kali mencoba beberapa kali untuk bisa menemukan setting instalasi yang pas, karena ini juga baru pertama kali penulis menggunakan program semacam itu, yang tidak terlalu menjadi masalah karena memang penggunaannya cukup mudah dan tersedia dukungan help yang memadai. Penulis kemudian pertama mencobanya untuk membuat instalasi pada versi 2.0.0, karena pada saat itu versi 3.0.0 juga masih belum final pembuatannya, walaupun sebagian besar memang sudah selesai. Nah, setelah uji coba berhasil memuaskan (dengan mencoba melakukan instalasi pada laptop sendiri dan beberapa komputer lain), dan versi 3.0.0 sudah memasuki tahap finalisasi, maka penulis kemudian mengaplikasikannya untuk versi yang paling mutakhir ini. Itupun masih mengalami beberapa kali perubahan karena menyesuaikan dengan situasi dan kondisi menjelang peluncuran program. Dalam versi 3.0.0 ini juga teks pada kotak form informasi dan lainnya sudah ditulis lewat kode program, tidak langsung pada properties obyeknya masing-masing, sehingga bisa lebih ringkas dan memudahkan editing program.

  • Promosi via situs blog dan scan peraturan.

Demi launching versi 3.0.0 ini penulis juga sampai rela bersusah payah belajar nge-blog alias membuat blog di internet. Hehehe, tentu saja tidak demi semata-mata peluncuran program tersebut, namun juga sekalian sebagai sarana tempat catatan bagi beberapa hal lain yang terkait dengan penulis, terutama tentang program-program. Selain itu, penulis juga merasa agak risih karena peluncuran versi-versi sebelumnya masih menumpang pada blog orang lain… karena itu penulis merasa harus mulai mandiri (maksudnya membuat blog sendiri). Sebelum menerbitkan tulisan pada situs blog seperti yang Anda baca sekarang ini (WordPress) penulis sempat mencoba sebuah situs blog lain, dan sudah sempat menulis satu artikel utama. Sempat pula tulisan yang sudah beberapa paragraf saat dilakukan preview mendadak hilang entah ke mana, tidak jelas salah siapa (Situsnya atau koneksi internetnya ya? Yang jelas buka orangnya…), sehingga terpaksa menulis ulang. Setelah sempat selesai menulis satu artikel, baru penulis menyadari kalau feature pada blog tersebut terasa kurang memadai terutama untuk penulisan artikel pada halaman atau layar lainnya (tidak pada halaman utama blog), di samping beberapa hal teknis lainnya. Padahal alamat account blog tersebut juga sudah sempat dicantumkan dalam program dan Petunjuk Penggunaan. Akhirnya penulis memutuskan untuk ‘hijrah’ ke blog lainnya, yaitu pada blog ini, dengan konsekuensi mengubah kembali keterangan pada program dan manual. It’s okay, toh mengubahnya juga relatif mudah kok. Masalah juga sempat muncul saat pemilihan nama untuk account blog, karena pada awalnya penulis ingin mengarahkan tema blog fokus pada program-program saja. Ternyata dari beberapa usulan nama account (yang ‘berbau’ program/software dan sejenisnya) sudah terpakai oleh user lainnya sehingga harus mencoba nama lainnya, termasuk nama yang pernah penulis pakai waktu membuat account di blog lain sebelumnya tadi. Belum lagi mengingat peraturan penamaan account yang hanya boleh memakai huruf dan angka saja, tidak boleh memakai karakter semacam – , _ , @ , dll. (Padahal sudah dapat ide nama yang menjual… duh!)  Penulis pun kemudian memilih nama sendiri saja untuk nama account, dengan konsekuensi bahwa isi blog juga tidak melulu tentang PPPURG atau program saja. Itupun saat mencoba dengan nama pendek penulis juga gagal (sudah ada yang memakai), sehingga memakai nama yang agak panjang. Untung saja nama account-nya tidak sampai harus jadi seperti “inipurboyangmbikinpppurglho.wordpress.com”.

Tambahan lain adalah dengan mencantumkan pula sumber peraturan yang digunakan dalam pembuatan program ini dalam bentuk file berupa hasil scan. Untuk menghindari kemungkinan ukuran file setup instalasi yang terlalu besar akibat memasukkan pula file scan peraturan tersebut dan pertimbangan lainnya, maka untuk file tersebut tidak diikutsertakan dalam instalasi program, namun diberikan pada blog penulis berupa alamat link untuk download. Pengguna yang memerlukannya dapat mengunduh langsung pada alamat tersebut, termasuk pula tersedia beberapa peraturan lainnya (beton, baja, gmepa, dll.). Dengan adanya peraturan sumber dari program ini diharapkan pengguna juga dapat mengetahui keseluruhan peraturan, karena seperti yang dicantumkan dalam Disclaimer, program ini hanyalah merupakan ringkasan dari peraturan yang dimaksud. Pengguna atau siapapun yang memerlukan dapat melihat detailnya pada peraturan tersebut.

Sampai di sini dulu perjalanan cerita program PPPURG ini, mungkin juga termasuk programnya sendiri. Lho? Penulis memang untuk saat ini merencanakan bahwa versi ini (3.0.0) menjadi versi pamungkas dari seri program PPPURG buatan penulis. Jika dicermati, perubahan antar versi sebenarnya lebih cenderung ada pada tampilan maupun penggunaan program dibandingkan dengan isi programnya sendiri. Perkecualian hanya tampak pada pemuatan gambar koefisien angin yang pada versi-versi sebelumnya hanya berupa ringkasan kata-kata. Untuk isi program yaitu angka dan koefisien yang tercantum tentu saja tidak berubah karena mengacu dari peraturan. Dengan hanya mengubah-ubah tampilan dan feature program saja mungkin juga akan membuat pengguna merasa cepat bosan, termasuk pembuatnya sendiri hehehe… Di sisi lain, sebenarnya inti/isi program ini sangatlah sederhana, namun penulis kadang merasa penanganannya terlalu ‘mewah’, sampai diformat ini-itu dan sana-sini, sehingga penulis merasa bahwa mungkin sudah saatnya dicukupkan sampai sini dulu. Toh masih banyak ide penulis yang lain yang belum diwujudkan sampai saat ini, sehingga perlu adanya ‘pergantian pemain’ (dengan ‘pelatih’ yang tetap sama hehehe…). Namun juga bukan berarti bahwa pembuatan program ini sia-sia saja, karena selain bisa membantu bagi yang membutuhkan dan menjadi (agak sedikit) terkenal (oya?), penulis juga bisa bertambah wawasan ilmunya baik tentang programming maupun hal-hal pendukung lainnya, misal tentang setup instalasi, situs upload/download, belajar nge-blog, dll. Ingat perkataan penulis pada pembahasan versi awal program, bahwa ketika Anda belajar bahasa pemrograman, maka latihan terbaik adalah dengan membuat program Anda sendiri, sesederhana apapun. Terbukti kan, banyak ilmu yang bisa didapatkan? Sebab itu pula, penulis menorehkannya pada tulisan di blog ini, karena penulis juga ingin membagikannya kepada para pembaca sekalian.

Oke, sampai di sini dulu perjumpaan kita, terima kasih atas kunjungan Anda, sampai bertemu lagi di program lainnya! Wassalam.

24 responses to “PPPURG v 3.0.0

  1. mas…kok pas program mau di jalankan kok ga bisa…??? Dan kalimat yang muncul kyak gni….

    Run-time error ‘339’:
    Component ‘tabctl32.ocx’ or one of its dependencies not correctly registered: a file is missing or invalid

    Terima kasih sebelumnya atas programnya……

  2. mas purbo PPURG V.3.0.0 bisa di instal tapi gak bisa di buka ada pesan di screen
    run-time error ‘339’:
    component ‘tabctl32.ocx’ or one of its independencis not corectly registered: a file is missing or invalid

    begitu mas moga2 bisa membantu

  3. Bapak Purbo saya ucapkan terimakasih atas Programnya. Saya mau bertanya tentang Pembebasan Tinjauan Beban Angin, berapa perbandingan tinggi dan lebar gedung yang tidak dikenakan beban angin selain gedung tinggi < 16 meter ?
    Terimakasih

    • Di peraturan kita memang tidak ada keterangan lebih lanjut. Kalau kita membandingkan dengan code luar negeri semacam ASCE misalnya, di sana ada kategori low-rise building untuk bangunan dengan mean roof height < 60 ft (18 m), selain itu juga tingginya tidak melebihi dimensi lebar horizontal terkecil (itupun kayaknya tetap dikenakan beban angin/tidak ada pembebasan peninjauan). Sementara di PPPURG tidak ada ketentuan mendetail mengenai ini.

  4. Bapak Purbo terucap terimakasih dengan programnya, selama ini saya pakai PPPURG V3.0.0 cuman saya mau tanyakan kenapa akhir-akhir ini setiap saya buka program PPPURG V3 muncul komentar “Run-time error ‘ 339’
    Cpmponent ‘tabct33.oct’ ore one of its dependencits not correctly registered : a file is missing or valid ” demikian pak burbo mohon solusinya…

  5. Pingback: RUMUS-RUMUS TEKNIK SIPIL & PERATURAN BEBAN « Tutorial Teknik Sipil

  6. Pingback: RUMUS-RUMUS TEKNIK SIPIL & PERATURAN BEBAN « Zulfitriansyah Putra

  7. Asl. Alk. Wr. Wbr.
    Mohon nanya Pak Cara Perhitungan Dinding Penahan Tanah Sistem Komposit antara Beton dengan Pasangan Batu

      • Pak purbo. Apakah ounta sotware perencanaan galvalum. ? Terimakasih sangat atas bantuannya. Salam

      • Maaf, untuk software semacam itu saya kurang tahu informasinya, tapi secara umum mungkin bisa didekati dengan perencanaan seperti baja ringan.

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s