1. Overflow disebabkan karena nilai melebihi range dari tipe variabel
2. Agar hasil lebih baik dan tidak bergantung pada format regional dari
komputer, maka gunakan komponen DataTimePicker
   Selain itu, belajarlah untuk membuat koding lebih rapi agar tidak terjadi
kesalahan
   Dari koding anda, terdapat kesalahan logika:

If ( Label16.Caption = SelisihHariJam(CDate(txttglpenilaian.Text),
CDate(txttglpelaporanppa.Text)) ) <= (CDate(360)) Then
-> Fungsi diatas sebenernya adalah membandingkan apakah nilai label16.text
adalah sama dengan selisihharijam yang akan hasilkan nilai boolean yang
kemudian dibandingkan lagi dengan nilai 360 yang dikonversi ke tanggal.
Fungsi ini tidak sesuai dengan tujuan yang akan dicapai
Ubah fungsi menjadi berikut:
    if (SelisihHariJam(dtpTglPenilaian.Date,dtpTglPelaporanPPA.Date)) <= 360
then
 
Selebihnya disesuaikan saja. Saran saya tampung nilai SelisihHariJam dalam
suatu variabel seperti berikut ini:

Dim iSelisih as integer

iSelisih = SelisihHariJam(dtpTglPenilaian.Date,dtpTglPelaporanPPA.Date)


If iSelisih < 360 then txtbobot.Text = 70
If iSelisih > 360 and iSelisih < 540 then       txtbobot.Text = 50
If iSelisih > 540 and iSelisih < 720 then txtbobot.Text = 30
If iSelisih > 720 then txtbobot.Text = 0      


Iwan Cahyadi Sugeng
Freelance System Analyst 

 


________________________________

        From: harli harli [mailto:[EMAIL PROTECTED] 
        Sent: Tuesday, August 22, 2006 4:48 PM
        To: [email protected]
        Subject: [indoprog-vb] mohon bantuannya.......
        
        

        salam kenal untuk semua, saya harli.saya seorang pemula dalam
vb.saat ini sya ada masalah dlam pembuatan program.masalahnya adlh:
        1. saya selalu mendpt overflow dlam koding ini
        txtstlhbobot.Text = (txtnilaipsr.Text * txtbobot.Text) \ 100&
        dan bagaimana caranya agar hasilnya menjadi pembulatan.
        2.sya mendapatkan kasus percabangan dalam kondisi dengan selisih
hari.kondisinya sperti : jika hari < 360 hari maka nilai 70,jika hari > 360
hari dan hari <= 720 hari maka nilai 50, dimana nilai tersebut saya
tampilkan di texybox.koding yang saya gunakan 
        If (Label16.Caption = SelisihHariJam(CDate(txttglpenilaian.Text),
CDate(txttglpelaporanppa.Text))) <= (CDate(360)) Then
        txtbobot.Text = 70
        End If

        If (Label16.Caption = SelisihHariJam(CDate(txttglpenilaian.Text),
CDate(txttglpelaporanppa.Text))) > (CDate(360)) And (Label16.Caption =
SelisihHariJam(CDate(txttglpenilaian.Text), CDate(txttglpelaporanppa.Text)))
<= (CDate(540)) Then
        txtbobot.Text = 50
        End If
        If (Label16.Caption = SelisihHariJam(CDate(txttglpenilaian.Text),
CDate(txttglpelaporanppa.Text))) > (CDate(540)) And (Label16.Caption =
SelisihHariJam(CDate(txttglpenilaian.Text), CDate(txttglpelaporanppa.Text)))
<= (CDate(720)) Then
        txtbobot.Text = 30
        End If
        If (Label16.Caption = SelisihHariJam(CDate(txttglpenilaian.Text),
CDate(txttglpelaporanppa.Text))) >= (CDate(720)) Then
        txtbobot.Text = 0
        End If
        If txttypefas.Text = "Agunan Tunai/Deposito" Then
        txtbobot.Text = 100
        End 
        dlam menggunakan koding ini hasil yg muncul selalu kondisi yang
pertama.
        ini mslh yang sedang saya hadapi.sebelum dan sesudahnya saya ucapkan
terima kasih.
        



Untuk berhenti berlangganan kirim email kosong ke : [EMAIL PROTECTED]

Bagi terjangkit virus lokal, zip virus tersebut
dan kirim ke [EMAIL PROTECTED], kami
akan membuat removalnya untuk anda. 
Yahoo! Groups Links

<*> To visit your group on the web, go to:
    http://groups.yahoo.com/group/indoprog-vb/

<*> To unsubscribe from this group, send an email to:
    [EMAIL PROTECTED]

<*> Your use of Yahoo! Groups is subject to:
    http://docs.yahoo.com/info/terms/
 



Kirim email ke