Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- procedure StringToCurr(AText:String):Currency;
- begin
- AText := StringReplace(AText,FormatSettings.ThousandSeparator,'',[rfReplaceAll]);
- Result := StrToCurrDef(AText,0);
- end;
- procedure TFRM_TRANSAKSI_PEMINJAMAN_TUNAI.BTN_SIMPANClick(Sender: TObject);
- var
- jk,satuan : Integer;
- jk2,satuan2 : Integer;
- x : Integer;
- z : Integer;
- tgl: TDate;
- tgl2: TDate;
- tot_pokok,bunga,jml,sisa_angsu: Currency;
- tot_pokok2,bunga2,jml2,sisa_angsu2: Currency;
- saldo_bulanan : Currency;
- begin
- IF BTN_EDIT.Caption = 'BATAL : F2' THEN
- BEGIN
- DM.ADO_QRY_JADWAL_ANGSURAN_TUNAI.Close;
- DM.ADO_QRY_JADWAL_ANGSURAN_TUNAI.SQL.Text := 'SELECT * FROM tbl_jadwal_angsuran_tunai '
- +'WHERE NOMOR_REKENING LIKE '+QuotedStr('%'+ EDT_NOMOR_REKENING.Text+'%')+'';
- DM.ADO_QRY_JADWAL_ANGSURAN_TUNAI.Open;
- DM.ADO_CMD.CommandText := 'DELETE FROM tbl_jadwal_angsuran_tunai WHERE NOMOR_REKENING = '+QuotedStr(EDT_NOMOR_REKENING.Text)+'';
- DM.ADO_CMD.Execute;
- WITH DM.ADO_QRY_DATA_TRANSAKSI_PINJAMAN_TUNAI DO
- begin
- Edit;
- FieldByName('NOMOR_REGESTRASI').AsString := EDT_NOMOR_REGESTRASI.Text;
- FieldByName('TGL_REGESTRASI').AsDateTime := DTP_TGL_REGESTRASI.Date;
- FieldByName('TGL_AKHIR_ANGSURAN').AsDateTime := DTP_TGL_AKHIR_ANGSURAN.Date;
- FieldByName('NOMOR_REKENING').AsString := EDT_NOMOR_REKENING.Text;
- FieldByName('NAMA_NASABAH').AsString := EDT_NAMA_NASABAH.Text;
- FieldByName('ALAMAT_NASABAH').AsString := EDT_ALAMAT_NASABAH.Text;
- FieldByName('JENIS_PINJAMAN').AsString := CMB_JENIS_PINJAMAN.Text;
- FieldByName('SALDO_AWAL').AsCurrency := StringToCurr(EDT_SALDO_AWAL.Text);
- FieldByName('SISA_ANGSURAN').AsCurrency := StringToCurr(EDT_SISA_ANGSURAN.Text);
- FieldByName('SUKU_BUNGA').AsCurrency := StringToCurr(EDT_SUKU_BUNGA.Text);
- FieldByName('JANGKA_WAKTU').AsCurrency := StringToCurr(EDT_JUMLAH_PERIODE.Text);
- FieldByName('PRIODE_ANGSURAN').AsString := EDT_PERIODE_ANGSURAN.Text;
- FieldByName('PERHITUNGAN_BUNGA').AsString := CMB_PERHITUNGAN_BUNGA.Text;
- FieldByName('NO_PBKB').AsString := EDT_NOMOR_BPKB.Text;
- FieldByName('RODA').AsString := EDT_RODA.Text;
- FieldByName('MEREK_TIPE').AsString := EDT_MERK_TIPE.Text;
- FieldByName('NO_RANGKA').AsString := EDT_NOMOR_RANGKA.Text;
- FieldByName('NO_MESIN').AsString := EDT_NOMOR_MESIN.Text;
- FieldByName('NO_POLISI').AsString := EDT_NOMOR_POLISI.Text;
- FieldByName('TAHUN_PERAKITAN').AsString := EDT_TAHUN_PEMBUATAN.Text;
- FieldByName('NAMA_PEMILIK').AsString := EDT_NAMA_PEMILIK.Text;
- FieldByName('NILAI_KENDARAAN').AsCurrency := StringToCurr(EDT_NILAI_KENDARAAN.Text);
- FieldByName('NO_SERTIFIKAT_TANAH').AsString := EDT_NOMOR_SURAT_TANAH.Text;
- FieldByName('ALAMAT_JALAN').AsString := EDT_ALAMAT_TANAH.Text;
- FieldByName('KELURAHAN').AsString := EDT_KELURAHAN.Text;
- FieldByName('DISITRIK').AsString := EDT_DISITRIK.Text;
- FieldByName('KABUPATEN').AsString := EDT_KABUPATEN.Text;
- FieldByName('PROVINSI').AsString := EDT_PROVINSI.Text;
- FieldByName('LUAS_TANAH').AsString := EDT_LUAS_TANAH.Text;
- FieldByName('ATAS_NAMA').AsString := EDT_ATAS_NAMA.Text;
- FieldByName('JABATAN').AsString := EDT_JABATAN.Text;
- FieldByName('ALAMAT_TANAH').AsString := EDT_ALAMAT_TANAH.Text;
- FieldByName('NILAI_JUAL_TANAH').AsCurrency := StringToCurr(EDT_NILAI_TANAH.Text);
- FieldByName('JENIS_BARANG').AsString := EDT_JENIS_BARANG.Text;
- FieldByName('KETERANGAN_BARANG').AsString := EDT_KETERANGAN.Text;
- FieldByName('NILAI_BARANG').AsCurrency := StringToCurr(EDT_NILAI_BARANG.Text);
- FieldByName('STATUS_ANGSURAN').AsString := EDT_STATUS_ANGSURAN.Text;
- TBlobField(FieldByName('PHOTO').LoadFromStream(Stream1);
- Stream1.Free;
- Post;
- end; //WITH
- //======================================================================================================
- for x := 1 to jk do
- begin
- DM.ADO_QRY_JADWAL_ANGSURAN_TUNAI.Append;
- IF CMB_JENIS_PINJAMAN.ItemIndex = 0 THEN
- BEGIN
- DM.ADO_QRY_JADWAL_ANGSURAN_TUNAINOMOR_REKENING.AsString := EDT_NOMOR_REKENING.Text;
- DM.ADO_QRY_JADWAL_ANGSURAN_TUNAINAMA_NASABAH.AsString := EDT_NAMA_NASABAH.Text;
- DM.ADO_QRY_JADWAL_ANGSURAN_TUNAISTATUS_ANGSURAN.AsString := EDT_STATUS_ANGSURAN.Text;
- tot_pokok:= StrToFloat(HapusKoma(EDT_SALDO_AWAL.Text))/ StrToInt(HapusKoma(EDT_JUMLAH_PERIODE.Text));
- bunga:= StrToFloat(HapusKoma(EDT_SALDO_AWAL.Text)) * StrToInt(HapusKoma(EDT_SUKU_BUNGA.Text))/100 /
- StrToInt(HapusKoma(EDT_JUMLAH_PERIODE.Text));
- sisa_angsu:= sisa_angsu-tot_pokok;
- DM.ADO_QRY_JADWAL_ANGSURAN_TUNAIJML_POKOK.AsFloat := tot_pokok;
- DM.ADO_QRY_JADWAL_ANGSURAN_TUNAIBUNGA.AsFloat := bunga;
- DM.ADO_QRY_JADWAL_ANGSURAN_TUNAISISA.AsFloat := sisa_angsu;
- DM.ADO_QRY_JADWAL_ANGSURAN_TUNAIJUMLAH.AsFloat := DM.ADO_QRY_JADWAL_ANGSURAN_TUNAIJML_POKOK.AsFloat+bunga;
- END;
- if CMB_JENIS_PINJAMAN.ItemIndex = 0 then
- begin
- DM.ADO_QRY_JADWAL_ANGSURAN_TUNAITANGGAL.AsDateTime := StrToDate(DateToStr(IncMonth(tgl,x)));
- DM.ADO_QRY_JADWAL_ANGSURAN_TUNAISTATUS_ANGSURAN.AsString := EDT_STATUS_ANGSURAN.Text;
- END ELSE
- if CMB_JENIS_PINJAMAN.ItemIndex = 1 then
- begin
- DM.ADO_QRY_JADWAL_ANGSURAN_TUNAITANGGAL.AsDateTime := StrToDate(DateToStr(IncWeek(tgl,x)));
- DM.ADO_QRY_JADWAL_ANGSURAN_TUNAISTATUS_ANGSURAN.AsString := EDT_STATUS_ANGSURAN.Text;
- END ELSE
- if CMB_JENIS_PINJAMAN.ItemIndex = 2 then
- begin
- DM.ADO_QRY_JADWAL_ANGSURAN_TUNAITANGGAL.AsDateTime := StrToDate(DateToStr(IncDay(tgl,x)));
- DM.ADO_QRY_JADWAL_ANGSURAN_TUNAISTATUS_ANGSURAN.AsString := EDT_STATUS_ANGSURAN.Text;
- END;
- DM.ADO_QRY_JADWAL_ANGSURAN_TUNAI.Post;
- end;
- //UPDATE SALDO AKUN======================================================================
- IF CMB_JENIS_PINJAMAN.Text = 'PEMBIAYAAN BULANAN' THEN
- BEGIN
- IF StringToCurr(EDT_SISA_ANGSURAN.Text) > StringToCurr(EDT_SISA_SALDO_AKUN.Text) then
- BEGIN
- IF DM.ADO_QRY_MASTER_AKUN.Locate('NAMA_AKUN',CMB_JENIS_PINJAMAN.Text,[loCaseInsensitive]) THEN
- BEGIN
- saldo_bulanan:=StringToCurr(EDT_SISA_ANGSURAN.Text)+ StringToCurr(EDT_SISA_SALDO_AKUN.Text);
- DM.ADO_CMD.CommandText := 'UPDATE tbl_master_akun SET SISA_SALDO ='+CurrToStr(saldo_bulanan)
- +' WHERE NAMA_AKUN='+QuotedStr(CMB_JENIS_PINJAMAN.Text);
- DM.ADO_CMD.Execute;
- END ELSE
- IF StringToCurr(EDT_SISA_ANGSURAN.Text) < StringToCurr(EDT_SISA_SALDO_AKUN.Text) then
- BEGIN
- IF DM.ADO_QRY_MASTER_AKUN.Locate('NAMA_AKUN',CMB_JENIS_PINJAMAN.Text,[loCaseInsensitive]) THEN
- BEGIN
- saldo_bulanan:= StringToCurr(EDT_SISA_ANGSURAN.Text)-StringToCurr(EDT_SISA_SALDO_AKUN.Text);
- DM.ADO_CMD.CommandText := 'UPDATE tbl_master_akun SET SISA_SALDO ='+CurrToStr(saldo_bulanan)
- +' WHERE AMA_AKUN='+QuotedStr(CMB_JENIS_PINJAMAN.Text);
- DM.ADO_CMD.Execute;
- END;
- END;
- BTN_EDITClick(Sender);
- FormActivate(Sender);
- FormCreate(Sender);
- MessageDlg('TERIMA KASIH DATA ANDA TELAH KAMI PERBAIKI DIDALAM DATABASE KAMI',mtInformation,[mbOK],0);
- END;
- end;
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement