Thursday, July 7, 2011

(DELPHI) Sistem Menghitung Denda Sewa

It's time to make a coding post !!!
Kembali yody akan memposting tentang delphi. Yupz Delphi again !!
Kali ini yOdy akan membahas tentang bagaimana cara menghitung denda secara otomatis.

Baiklah, berikut kodingnya :

procedure TPengembalian.FilmChange(Sender: TObject);
   var
   denda: extended;
   x,z: real;
   v : Integer;
   y,beban: String;
begin
with QKembali do
   begin
   Close;
   SQL.Clear;
   SQL.Add('Select * from sewa where ID_FILM LIKE ''%'+Film.text+'%''');
   Open;
   end;
DTPPinjam.Date:=QKembali.Fields[3].asdatetime;
DTPBalik.Date:=QKembali.Fields[4].asdatetime;
begin
   IF now()>DTPBalik.DateTime THEN
   begin
   x:=(now()-DTPBalik.DateTime);
   y:=FloatToStr(round(x));
   z:=StrToCurr(y);
   v:=StrToInt(y);
   denda:=z*1000;
   beban:=CurrToStr(denda);
   EDenda.Text:= IntToStr(v);
   EBiayaDenda.text:= beban;
   end;
IF now() begin
EDenda.Text := '0';
EBiayaDenda.Text := '0';
end;
end;
end;

 Nah, bingung kan. Untuk mengurangi rasa bingung kalian, berikut ini ada beberapa penjelasan yang bisa yOdy jelaskan. Let's Check This Out !!!

  1. Bagian method ini dijalankan pada saat button hitung denda ditekan.
  2. Penjelasan berbagai jenis properti yang digunakan :
  • TPengembalian (Button Pengembalian)
  • EDenda (TextField yang menampilkan subdenda)
  • EBiayaDenda (TextField yang menampilkan keseluruhan/total denda)
  • DTPBalik (DateTimePicker yang akan menampilkan tanggal denda)
  • DTPPinjam (DateTimePicker yang akan menampilkan tanggal peminjaman)
  1. Fungsi-fungsi konversi yang digunakan :
  • now() = Menampilkan tanggal hari ini.
  • IntToStr = Mengkonversi Integer ke String.
  • FloatToStr = Mengkonversi Nilai Float (Bilangan Mengambang) ke String
  • StrToCurr = Mengkonversi String ke Currency (Mata Uang).
  • StrToInt = Mengkonversi String ke Integer.
  • round (x) = Membulatkan nilai X.
Okelah, cukup sekian koding yang bisa saya sampaikan, lebih dan kurang saya mohon maap.
Tetap Semangat dan Selalu Berkoding Ria !!!!!!!!!

Terimakasih...

6 comments:

  1. emmmakasi ya atas postinganya
    saya masih bingung bisa postingkan interpace nya gk...? he2 maklumin ya a baru ketemu delphi :)

    ReplyDelete
  2. @Gadis Pencari Tinta Emas

    Ntar dicari dulu yah koding nya, coz udah lama nggak ngebuka delphi...

    makasih udah berkunjung ^^

    ReplyDelete
  3. kita juga punya nih jurnal delphi, silahkan dikunjungi dan dibaca , berikut linknya
    http://repository.gunadarma.ac.id/bitstream/123456789/1291/1/20107625.pdf
    semoga bermanfaat yaa :)

    ReplyDelete
    Replies
    1. Terimakasih atas rekomendasi materinya. Semoga bisa bermanfaat bagi teman-teman yang membutuhkan.

      Delete
  4. nuhun, numpang nny ya mas :)...

    gmn yah koding delphi untuk menampilkan tanggal jatuh tempo secara otomatis dan menghitung besarnya denda pada kasus dibawah ini :

    tanggal register/tanggal pinjam sudah tersimpan didatabase..begitu pula untuk tanggal jatuh tempo sdh tersimpan dalam database...

    nah yg mau sy tanyakan :
    1. gimana caranya membuat tanggal jatuh tempo tampil secara otomatis berdasarkan tgl registrasi/tgl pinjam (dihitung 1 bulan setelah tgl registrasi),
    contohnya : tgl registrasi : 20 juni 2013, maka tgl jatuh temponya 17 juni 2013 (tgl jatuh tempo setiap tgl 17 setiap bulannya).

    2. gimana perhitungan untuk denda angsurannya jika jatuh temponya adalah setiap bulan pada tanggal 17,
    artinya setiap tanggal 17,dalam hal ini bulan apapun,maka ia jatuh tempo pada tanggal tersebut,
    apabila ia lewat membayar pada tanggal 17 maka akan dikenakan denda sebesar 1% dari angsurannya.

    sebelum dan sesuadahnya sy ucapkan terima kasih :)...ditunggu infonya

    ReplyDelete
    Replies
    1. Maap jika penjelasan berikut belum jelas, silahkan coba koding berikut :

      procedure TForm1.Button1Click(Sender: TObject);
      var tgl1,tgl2:tdatetime;
      thn,bln,hari,tempo:word;
      begin

      tgl1:=strtodate('1/1/2010');
      tempo:=5;
      decodedate(tgl1,thn,bln,hari);
      bln:=bln+tempo;
      if bln>12 then
      begin
      bln:=bln-12;
      thn:=thn+1;
      end;
      tgl2:= encodedate(thn,bln,hari);

      showmessage('Tanggal jatuh tempo '+formatdatetime('dd/mm/yyyy',tgl2));
      end;

      sumber :
      http://tamtam-blow.blogspot.com/2010/05/perhitungan-tanggal-jatuh-tempo-delphi.html

      Delete