Arsip: Bagaimana caranya handling onpostError dengan ADO

more 16 years ago
surip
Gimana ada yang bisa bantu caranya handling onposterror ADOTable ato ADOQuery
Jika ada dupliate entry....
Bantu yah... pusing neh...

more 16 years ago
jayadi888
@surip: Gimana ada yang bisa bantu caranya handling onposterror ADOTable ato ADOQuery Jika ada dupliate entry.... Bantu yah... pusing neh...kalau konsep aku, check dulu data yang mau di entry/post sudah ada atau belom kan lebih safe :)

more 16 years ago
kaka-delphi
hehe ... bendul ... diriku juga pake metode yang sama ... :)
Sebelumnya kamu cari dulu apakah data yang akan kamu masukkan sudah ada apa blom .... ?
Metodenya bisa menggunakan Locate ataupun dengan menggunakan skrip SQL
Semoga membantu yang lagi pusing ....
Semangat !!!

more 16 years ago
bangfauzan
Ada cara yang lebih mudah, yang mungkin berguna.
Perlu diingat bahwa setiap setiap dataset sudah memiliki handling
untuk setiap kemungkinan kesalahan, termasuk OnPostError.
Khususnya OnPostError, semua dataset mempublish event ini.
Kesalahan PostError ini biasanya meliputi:
1. Data kosong yang seharusnya isi, baik di database (not null) maupun di dataset (required=true),
apabila constraint ini dilanggar maka akan terjadi posterror.
2. Terjadi duplikasi pada primary key (constraint pada database).
3. Data tidak valid, baik tipenya maupun rangenya.
4. Referential Integrity constraint violation, yaitu kesalahan karena foreign key dilanggar dalam database relatinship.
5. Kesalahan-kesalahan lain selain yang di atas.
Apapun jenis kesalahannya, pasti akan akan ditangkap baik oleh dataset maupun database system, dan exception dimunculkan.
Oleh karena itu, pengecekan data secara manual (script kita) tidak perlu dilakukan. tapi ini juga masalah preference,
ada yg lebih suka pake script sendiri untuk menguji semua kemungkinan kesalahan, tapi ada juga (seperti saya) yang
lebih percaya sama error handlernya database maupun dataset.
apabila anda termasuk yang kedua, maka yang perlu dilakukan hanyalah menambah sedikit script pada OnPostError.
misalnya kita menggunakan ADO:
procedure TForm1.ADOTable1PostError(DataSet: TDataSet; E: EDatabaseError;
var Action: TDataAction);
begin
showmessage("Gagal menyimpan data");
Action:=daAbort;
end;
atau kalo mo lebih detail:
procedure TForm1.ADOTable1PostError(DataSet: TDataSet; E: EDatabaseError;
var Action: TDataAction);
begin
//cek jenis kesalahan melalui ErrorCode atau yang lebih mudah pake ErrorDescription (E.Message)
if Pos('Must', E.Message)>0 then
showmessage("Field belum diisi")
else if Pos('duplicate', E.Message)>0 then
showmessage("Terjadi duplikasi data")
else if Pos('foreign',E.Message)>0 then
showmessage("Kesalahan referential integrity")
else
showmessage("Gagal menyimpan data, kesalahan: " + E.Message);
Action:=daAbort
end;
semoga bermanfaat

more 16 years ago
bangfauzan
Satu lagi,
Enaknya, handler tersebut kan bisa dipake rame, arahkan saja OnPostEror setiap dataset pada prosedur di atas.

more 16 years ago
jayadi888
aneh kok aku pake method onposterror gak keluar message-nya ?, ADOQuery+MySQL ODBC ?, ada sesuatu yang harus keketahui ?, thx b4

more 16 years ago
bangfauzan
OnPostError terjadi kalo ada constraint tertentu yang dilanggar,
kalo semuanya ok ya ga muncul (tidak terjadi exception).

more 16 years ago
surip
Wah Metode yang gak kepikiran ma aku, aku udah pake E.message sebenernya tapi males ndeteksi stringnya kepanjangan,jadi gak kepikiran pake fungsi POS ngirit string :mrgreen:
thank's 4 u sharing...
more ...
- Pages:
- 1
reply |
Report Obsolete
Last Articles
Last Topic
- PascalTalk #6: (Podcast) Kuliah IT di luar negeri, susah gak sih?
by LuriDarmawan in Tutorial & Community Project more 2 years ago - PascalTalk #5: UX: Research, Design and Engineer
by LuriDarmawan in Tutorial & Community Project more 2 years ago - PascalTalk #4: Obrolan Ringan Seputar IT
by LuriDarmawan in Tutorial & Community Project more 2 years ago - PascalTalk #2: Membuat Sendiri SMART HOME
by LuriDarmawan in Tutorial & Community Project more 2 years ago - PascalTalk #3: RADically Fast and Easy Mobile Apps Development with Delphi
by LuriDarmawan in Tutorial & Community Project more 2 years ago - PascalTalk #1: Pemanfaatan Artificial Intelligence di Masa Covid-19
by LuriDarmawan in Tutorial & Community Project more 2 years ago - Tempat Latihan Posting
by LuriDarmawan in OOT more 3 years ago - Archive
- Looping lagi...
by idhiel in Hal umum tentang Pascal Indonesia more 10 years ago - [ask] koneksi ke ODBC user Dsn saat runtime dengan ado
by halimanh in FireBird more 10 years ago - Validasi menggunakan data tanggal
by mas_kofa in Hal umum tentang Pascal Indonesia more 10 years ago
Random Topic
- error unable to execute query
by lela in MySQL more 17 years ago - Tips Atasi gagal koneksi ketika menggunakan ADOConnection...
by EkoIndri in Tip n Trik Pemrograman more 16 years ago - Pertanyaan Tentang komponen ADO pada delphi7 dan mysql
by gustove in Hal umum tentang Pascal Indonesia more 12 years ago - membuat new form/window dari komponen menu.......
by pits_its in Form Enhancement & Graphical Controls more 16 years ago - List Index out of bounds
by vandy in Enginering more 15 years ago - Mengambil nama file dan menggandakan file melalui jaringan
by ashfarsadewa in Network, Files, I/O & System more 14 years ago - ReportBuilder + Teechart Support
by wildan_m in Reporting more 14 years ago - LAZARUS
by akhadi in Free dan Gratis more 16 years ago - VCL for Video For Windows
by chipmunk in Multimedia & Graphic Enhancement more 16 years ago - aplikasi gak bisa dibongkar
by delphi_tikuzz in Enginering more 15 years ago