Laman

Cara Mudah Membuat Fungsi Simpan dan Update data di Delphi Studi kasus Input Data Supplier


Untuk Menyimpan atau mengupdate data di Delphi cukup dengan satu buah tombol simpan saja, dengan cara kita buat variable di tombol tambah. Jadi logikanya begini ketika form aktif kemudian kita klik tombol tambah. Maka variable akan dikirim dengan statuis 1 misalnya. Sedangkan untuk mengupdate data kita kirim variable dengan status 0 yang akan di eksekusi ketika Grid di DoubleKlik. Maka untuk itu kita harus mendeklarasikan variable status di variable global yang nilainya 0 dan 1. Untuk lebih jelasnya ikuti tutorial selengkapnya.



Asumsi anda telah membuat tabel supplier di database dan telah menghubungkan Aplikasi dengan database dengan komponen Zquery (Zeos)

1.       Desain Form Master Supplier seperti berikut  


2.       Kemudian Buat Variabel Status di Variabel Global


3.       Selanjutnya Pada tombol simpan dan Grid Supplier lakukan coding seperti berikut

procedure TFsupplier.bt_tambahClick(Sender: TObject);
begin
  sts := 1;

  panel_Fbarang.visible := true;

  aktif;

  GRID_SUP.Enabled := false;
end;


procedure TFsupplier.GRID_SUPDblClick(Sender: TObject);
begin
sts := 0;

panel_Fbarang.visible := true;

aktif;

tampildata;

GRID_SUP.Enabled := false;

end;

4.       Selanjutnya di tombol Simpan Codingnya seperti berikut

Komponen
Button Simpan
Event
On Click
Coding
BEGIN
  //Simpan Data
   if sts=1 then
     Begin
         with dm.qr do
         begin
          close;
          sql.Clear;
          sql.Add('insert into tsupplier(kodesup,supplier,attn_sup,alamat, ');
          sql.Add('alamat2,alamat3,notel,fax,email,status,jenis)');
          sql.Add(' values (:ks,:ns,:attn,:alamat,:alamat2,:alamat3,:notel,:fax,:email,:sts,:jenis)');
          ParamByName('ks').AsString:=ed_ks.Text;
          ParamByName('ns').AsString:=ed_ns.Text;
          ParamByName('attn').AsString:=ed_attn.Text;
          ParamByName('alamat').AsString:=ed_alamat1.Text;
          ParamByName('alamat2').AsString:=ed_alamat2.Text;
          ParamByName('alamat3').AsString:=ed_alamat3.Text;
          ParamByName('notel').AsString:=ed_telp.Text;
          ParamByName('notel').AsString:=ed_fax.Text;
          ParamByName('fax').AsString:=ed_fax.Text;
          ParamByName('email').AsString:=ed_email.Text;
          ParamByName('sts').AsString:=cmb_status.Text;
          ParamByName('jenis').AsInteger:=cmb_js.ItemIndex;
          ExecSQL;
          ShowMessage('Simpan Data Berhasil');
          close;
         end;
    END;
 if sts=0 then
   begin
   //update data
     with dm.qr do
     begin
      close;
      sql.Clear;
        sql.Add('update tsupplier set kodesup=:ks, supplier=:ns,attn_sup=:attn,alamat=:alamat,');
        sql.Add('alamat2=:alamat2,alamat3=:alamat3,notel=:notel,fax=:fax,email=:email,');
        sql.Add('status=:sts,jenis=:jenis ');
        sql.Add('where kodesup="'+ed_ks.Text+'"');
        ParamByName('ks').AsString := ed_ks.Text;
        ParamByName('ns').AsString := ed_ns.Text;
        ParamByName('attn').asstring := ed_attn.text ;
        ParamByName('alamat').AsString := ed_alamat1.Text;
        ParamByName('alamat2').AsString := ed_alamat2.Text;
        ParamByName('alamat3').AsString := ed_alamat3.Text;
        ParamByName('notel').Asstring := ed_telp.Text;
        ParamByName('notel').AsString:=ed_fax.Text;
        ParamByName('sts').Asstring := cmb_status.Text;
        ParamByName('jenis').AsInteger := cmb_js.ItemIndex;
        ExecSQL;
        ShowMessage('Edit Data Berhasil');
        close;
      end ;
    end;
 qr_supplier.Refresh;
END;

end;

5.       Selesai, dan Lakukan Uji coba


Selamat Mencoba

Padepokan IT Course
IT. Training Center & Solution

No comments:

Post a Comment