Simpan excel kedalam database access

Posted by

Delphi        : Versi 7
Database   : MS Access
Koneksi     : ADO
Tambahan : GridEh
*note : untuk spesifikasi perlalatan tempur tidak sama dengan diatas harap menyesuaikan
Oke karena ada yang minta saya coba buat tutorial ini, kalau yang lalu sudah dibahas artikel tentang membuka data excel kedalam delphi dengan bantuan listview, sekarang dari pengembangan teknik tersebut saya akan coba menambahkan fasilitas menyimpan data yang ditampilkan dari excel tersebut kedalam database, bagi yang belum tau cara import excel ke listview bisa membaca artikel silahkan klik berikut delphi open excel.
Bagi yang sudah bisa langsung kita mulai sob, pertama kita siapkan database guna menampung data yang akan kita olah, pastikan jumlah kolom dan letak field sama ya…. misal klo di excel kolom pertama nim, maka di database juga buat seperti itu supaya data tidak salah masuk, kan gak enak tuh :D . Seperti pada contoh saya buat pakek database ms access, kalau mau database yang lain silahkan menyesuaikan ya jagan manja sama aja kok…
exceltodb-01
Nah dari project yang sebelumya baca excel, saya modifikasi dikit biar enakan, saya tambahkan Dbgrid serta seperangkat komponen koneksi guna menampilkan data, ini cuman contoh sob.. pada prakteknya desain mau gimana ya terserah ente fleksible aja lah pokoknya haha…
exceltodb-02
Setelah itu pada button Simpan ke DB kita kasih koding seperti dibawah ini, santai aja ini koding ane buat sendiri dari eksperimen-eksperimen bongkar pasang code mencari yang pas, sehingga tercipta koding hibrid ini dia akan otomatis mendeteksi jumlah field dan tipe data dan “KAGA PERLU RUBAH KODING JIKA NAMBAH ATAU KURANGI FIELD”, kalau menurut saya data yang saya filter cuman ada 3 yaitu Text(String), Date, serta Numeric (Integer) kalau ente pada butuhin tipe lain ya oprek aja kodingnya bebas pokoknya dah…
oke langsung aja  ini kodingnya…………..
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
procedure Tfutama.bsvClick(Sender: TObject);
var
 i,x: integer;
 lvitem :TListItem;
begin
 if ListView1.Items.Count=0 then
 begin
 ShowMessage('Data Masih Kosong...');
 Exit;
 end;
 
if ListView1.Columns.Count<>qry.FieldCount then
 begin
 ShowMessage('Jumlah kolom tidak sama...');
 Exit;
 end;
try
 for i:=1 to ListView1.Items.Count do
 begin
 ListView1.itemindex:= i - 1;
 lvitem:= ListView1.Selected;
 qry.Append;
   if qry.Fields[0].DataType = ftDateTime then qry.Fields[0].Value:=StrToDate(lvitem.Caption)
   else if qry.Fields[0].DataType = ftInteger then qry.Fields[0].Value:=StrToInt(lvitem.Caption)
   else qry.Fields[0].Value:=lvitem.Caption;
 for x:=1 to qry.FieldCount-1 do
 begin
   if qry.Fields[x].DataType = ftDateTime then qry.Fields[x].Value:=StrToDate(lvitem.SubItems[x-1])
   else if qry.Fields[x].DataType = ftInteger then qry.Fields[x].Value:=StrToInt(lvitem.SubItems[x-1])
   else qry.Fields[x].Value:=lvitem.SubItems[x-1];
 end;
 qry.Post;
 end;
 pg.TabIndex:=1;
 ListView1.Clear;
 ShowMessage('Data berhasil dipindahkan...');
except
ShowMessage('Data gagal dipindahkan...');
end;
end;
Nah setelah itu kita coba run aplikasi kita, dan tekan tombol simpan ke database….
exceltodb-03
Jika sukses maka data dari excel akan masuk ke database kita sob… nah liat gamabr dibawah menunjukan data sukses disimpan kedalam database, kalau gagal itu tergantung amal perbuatan sob :D hahahahaaa….
exceltodb-04
Silahkan tinggalkan komen atau pesan bagi yang merasa terbantu, jika tidak mau komen aku sumpahin jomblo seumur hidup dah hahahaa :p…
Bagi pemalas yang tidak mau ketik pengenya kopas aja, atau yang pengen liat fullcode nya buat dioprek untuk belajar, silahkan download contoh project disini.
Sekian tutorial tidak seberapa dari saya, semoga bisa menjadi amal bagi saya dan manfaat bagi yang menggunakan, terus share ilmu kalian jagan ragu, ilmu seperti rejeki sob makin di bagi makin nambah jadi jagan pernah ragu, salam delphier


Demo Blog NJW V2 Updated at: 17.10

0 komentar:

Posting Komentar

Text Widget

Popular Posts