Arsip: kesulitan simpan data ke 2 table sekaligus

more 19 years ago
putukaca
saya mengalami kesulitan untuk melakukan penyimpanan data ke dalam 2 table sekaligus.kodenya sbb:
procedure TfPembelian.btSimpanClick(Sender: TObject);
Var myTime: String;
begin
myTime:= timeToStr(now);
//utk table notabeli
tbNotaBeli.Insert;
tbNotaBeli['nonota']:= edNota.Text;
tbNotaBeli['tanggal']:= DateTimeEdit1.Date;
tbNotaBeli['kdSuplier']:= edKdSpl.Text;
tbNotaBeli['nofaktur']:= edNoInv.Text;
tbNotaBeli['jmltot']:= edTotal.Text;
tbNotaBeli['hrgtot']:= edJumlah.Text;
tbNotaBeli['status']:= Cmb1.Text;
tbNotaBeli['tgljatem']:= DateTimeEdit2.Date;
tbNotaBeli['user']:= fUtama.Label2.Caption;
tbNotaBeli['jam']:= strToTime(myTime);
tbNotaBeli.Post;
tbNotaBeli.Refresh;
//utk table databeli
tbTmpBeli.First;
while not tbTmpBeli.Eof do
begin
tbBeli.Insert;
tbBeli['nonota']:= edNota.Text;
tbBeli['tanggal']:= DateTimeEdit1.Date;
tbBeli['nofaktur']:= edNoInv.Text;
tbBeli['barcode']:= tbTmpBeli['barcode'];
tbBeli['kdbarang']:= tbTmpBeli['kdfilm'];
tbBeli['judul']:= tbTmpBeli['judul'];
tbBeli['hrgjual']:= tbTmpbeli['hrgjual'];
tbBeli['banyak']:= tbTmpbeli['banyak'];
tbBeli['jumlah']:= tbTmpBeli['jumlah'];
tbBeli['user']:= fUtama.Label2.Caption;
tbBeli.Post;
tbBeli.Next;
end;
tbBeli.Refresh;
end;
misal di table tmpbeli ada data 5 record dan saat melakukan penyimpanan ke dalam table beli, data yang masuk ke table beli sangat banyak (mencapai ribuan lebih sampai saya matikan paksa programnya) dan hanya satu kode aja yang diulang bukan 5 record saja yang masuk. apa ada yg salah dengan kode diatas. mohon sarannya.
more 19 years ago
deLogic
masalah ada di rutin table databeli, coba tbBeli.Next nya diganti dengan tbTmpBeli.Next

more 19 years ago
saysansay
MAs bayu...tapi klu diliat2 dari struktur Tablenya...kok kaya yang ada redudansi ....Tapi nga tau ya...Cos Ini Hanya saran aq aja
Sebelumnya Maaf Mas PutuKaca Tabel Yang ini Bentuknya Master Detail Bukan...Klu Belum Master detail ,Menurut saya sebaiknya tabel yang ini Jadiin master detail dulu...[/b]

more 19 years ago
deLogic
mungkin saja bagi bro PutuKaca, NoNota dan NoInvoice adalah dua hal yang harus berbeda.. :)

more 19 years ago
kaka-delphi
Yups ... kesalahannya ada di tbBeli.Next; karena putukaca melakukan looping pada tabel tbTmpBeli, karena yang di next adalah tabel tbBeli bukan tabel tbTmpBeli, maka tabel tbTmpBeli ga akan sampai pada ujung rekord walau 2 rekord sekalipun. Ini adalah looping yang tak berujung, harap diperhatikan.
Solusinya adalah sepertinya yang mas bayu bilang, yaitu mengganti tbBeli.Next dengan tbTmpBeli.Next

more 19 years ago
EkoIndri
kalau saran tambahan saya...
//utk table databeli tbTmpBeli.First; while not tbTmpBeli.Eof do begin tbBeli.Insert; tbBeli['nonota']:= edNota.Text; tbBeli['tanggal']:= DateTimeEdit1.Date; tbBeli['nofaktur']:= edNoInv.Text; tbBeli['barcode']:= tbTmpBeli['barcode']; tbBeli['kdbarang']:= tbTmpBeli['kdfilm']; tbBeli['judul']:= tbTmpBeli['judul']; tbBeli['hrgjual']:= tbTmpbeli['hrgjual']; tbBeli['banyak']:= tbTmpbeli['banyak']; tbBeli['jumlah']:= tbTmpBeli['jumlah']; tbBeli['user']:= fUtama.Label2.Caption; tbBeli.Post; tbBeli.Next; end;lebih baik di trigger aja, itupun kalau database enginenya support trigger. karena dengan demikian lebih efektif

more 19 years ago
fafenail
Itu berarti ntuk transaksi pembelian to?
Ya benar mang ada kesalhan looping, trus ada saran sih untuk tbbeli (detail dari tbNotaBeli) sebaiknya ada primary key bisa gabungan dari nonota + kdBarang, jika klo memang dimungkinkan untuk kode barang yang sama bisa ditambahlagi misal dengan NoUrut, dimana NoUrut dihitung dari Masing2 NoNota,
Maka key-nya Misal ID=NoNota+KdBarang+NoUrut
Sekedar saran ditabel detail mengapa ada lagi NoNota dan NoFaktur, seharusnya cukup salah satu saja
Misal NoNota saja.
@EkoIndri
klo aku kurang suka pakai trigger karena dengan trigger data tidak mesti valid, alias sering lepas.
Aku pakai SQL server dan ga pernah pakai trigger dan selalu menghindarinya.

more 19 years ago
EkoIndri
@fafenail
cobalah anda untuk mengenalnya
cobalah anda untuk mengetahui ketidakvalid-annya
trigger tidak menyebabkan data tidak valid....
ingat mas.... mobil tidak nabrak jika tidak di tabrakkan....
begitu juga data... data tidak valid jika tidak divalidkan....
janganlah anda menghindarinya, tapi lebih baik pahamilah walupun anda tidak menggunakannya
more ...
- Pages:
- 1
reply |
Report Obsolete
AI Forward

🚀 We're thrilled to partner with Alibaba Cloud for "AI Forward - Alibaba Cloud Global Developer Summit 2025" in Jakarta! Join us and explore the future of AI. Register now:
https://int.alibabacloud.com/m/1000400772/
#AlibabaCloud #DeveloperSummit #Jakarta #AIFORWARD
Last Articles
Last Topic
- PascalTalk #6: (Podcast) Kuliah IT di luar negeri, susah gak sih?
by LuriDarmawan in Tutorial & Community Project more 4 years ago - PascalTalk #5: UX: Research, Design and Engineer
by LuriDarmawan in Tutorial & Community Project more 4 years ago - PascalTalk #4: Obrolan Ringan Seputar IT
by LuriDarmawan in Tutorial & Community Project more 4 years ago - PascalTalk #2: Membuat Sendiri SMART HOME
by LuriDarmawan in Tutorial & Community Project more 4 years ago - PascalTalk #3: RADically Fast and Easy Mobile Apps Development with Delphi
by LuriDarmawan in Tutorial & Community Project more 4 years ago - PascalTalk #1: Pemanfaatan Artificial Intelligence di Masa Covid-19
by LuriDarmawan in Tutorial & Community Project more 4 years ago - Tempat Latihan Posting
by LuriDarmawan in OOT more 5 years ago - Archive
- Looping lagi...
by idhiel in Hal umum tentang Pascal Indonesia more 12 years ago - [ask] koneksi ke ODBC user Dsn saat runtime dengan ado
by halimanh in FireBird more 12 years ago - Validasi menggunakan data tanggal
by mas_kofa in Hal umum tentang Pascal Indonesia more 12 years ago
Random Topic
- bantu untuk source code Sdk dengan delphi dong
by wary in Tutorial & Community Project more 17 years ago - lisensi M$ Access
by taruna in OOT more 18 years ago - menampilkan record (dalam DBgrid) sesuai dengan kata kunci..
by divanda in Lain-lain more 17 years ago - Tutorial delphi yang lengkap full source code only in here
by videl_87 in Delphi.NET more 17 years ago - open file scr otomatis
by nurez in Hal umum tentang Pascal Indonesia more 19 years ago - Contoh Program Penjualan + Inventory
by andip70 in Hal umum tentang Pascal Indonesia more 17 years ago - AdoConnection dan ProgressBar
by myzendcafe in Hal umum tentang Pascal Indonesia more 17 years ago - Multitier dan RemoteDataModule, pernah anda coba ?
by Akuna-Matata in Network, Files, I/O & System more 18 years ago - tanya tentang logika peminjaman
by ricky_seldjatem in Tip n Trik Pemrograman more 16 years ago - Please Help Donk ....Masalah bikin Function Ascii...
by palapetir in Tip n Trik Pemrograman more 17 years ago