Arsip: Menampilkan progress-bar saat fetch data besar

more 15 years ago
DelphiExpert
beberapa rekan banyak yg menanyakan, ada jg yg nanya via YM...
iseng2 daku explore event2 milik TADOQuery --> TADOConnection atau CodeGear menyebutnya DBGo pd Delphi2007 (BDS juga kali' ya)...
utk menampilkan progress-bar, anda bisa memanfaatkan event OnFetchProgress milik TADOQuery...
unit Unit1;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, DB, ADODB, StdCtrls, ComCtrls;
type
TForm1 = class(TForm)
ADOConnection1: TADOConnection;
ADOQuery1: TADOQuery;
ProgressBar1: TProgressBar;
Label1: TLabel;
procedure ADOQuery1FetchProgress(DataSet: TCustomADODataSet; Progress,
MaxProgress: Integer; var EventStatus: TEventStatus);
procedure ADOQuery1FetchComplete(DataSet: TCustomADODataSet;
const Error: Error; var EventStatus: TEventStatus);
private
{ Private declarations }
public
{ Public declarations }
end;
var
Form1: TForm1;
implementation
{$R *.dfm}
procedure TForm1.ADOQuery1FetchComplete(DataSet: TCustomADODataSet;
const Error: Error; var EventStatus: TEventStatus);
begin
if EventStatus <> esOK then
MessageDlg(Format('Source: %s%sDesc: %s', ), mtError, [mbOK], 0);
Close;
end;
procedure TForm1.ADOQuery1FetchProgress(DataSet: TCustomADODataSet; Progress,
MaxProgress: Integer; var EventStatus: TEventStatus);
begin
if EventStatus = esOK then
begin
ProgressBar1.Max:= MaxProgress;
ProgressBar1.Position:= Progress;
end;
Application.ProcessMessages;
end;
end.

more 15 years ago
zieborg
wah.., sering kutak-kutik ADO ga nyadar ada event ini nih...
mesti explore lagi dah, kamsia..kamsia.. :D

more 15 years ago
deLogic
btw.. bagaimana efek dari penggunaan event onFetchProgress atau sejenis.. apakah ada penurunan performance (performance penalty)? dan seberapa besar?
saya belum mencoba hal ini di ADO, tapi hal serupa juga disediakan oleh komponen middleware yg sedag daku pake, dan terdapat penurunan performance, walaupun tidak besar.
Tapi saya rasa untuk data besar, jika penalty tersebut cukup kecil, tidak mengapa, karena tujuannya lebih ke 'visual feedback'.

more 15 years ago
EkoIndri
Kalau saya sih dah tahu sejak lama......
tapi hati2 dalam penggunaan onfetchProgress
setahu saya untuk D7 hanya bisa digunakan pada ADODataset.
Kemudian untuk mendapatkan progress yang bagus, dataset jangan langsung dikoneksikan dengan Grid, lebih baik saat fetching di disconect, setelah fetching selesai baru dikoneksikan lagi datasetnya ke dbgrid.
Untuk mendapatkan performance yang bagus saat fetching, silahkan anda atur executeoptions-nya agar didapatkan fetching yang smooth

more 15 years ago
DelphiExpert
benar yg dikatakan sodara @EkoIndri...
TDataset telah menyediakan DisableControls & EnableControls utk men-disables data display in data-aware controls associated with the dataset.
tanpa perlu secara fisik men-disconnect dataset ke data-aware (DBGrid, DBEdit dll).

more 15 years ago
Kecret
Waduhhhh..... Kalo saya sich BLUM tau sejak lama...... :mrgreen:
tips2 yg bagusss...... huebat pisan oeyyyy..... tararengyu....
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
- <newbie> gmna sih bikin notice??
by tastha in Hal umum tentang Pascal Indonesia more 12 years ago - Pencocokkan String ( String Matching) Delphi DanMySQL ??
by daryl_sukma_gumilar in MySQL more 13 years ago - runtime error 217
by taruna in Tutorial & Community Project more 15 years ago - delphi-serial port
by bigsto in Enginering more 15 years ago - ngarahin penyimpanan ke server
by lela in Tip n Trik Pemrograman more 16 years ago - cara mendapatkan status component yang berada di scrollbox
by BLie2000 in Tip n Trik Pemrograman more 15 years ago - Tips : Menampilkan Dialog Koneksi
by cyber_hecker in Tip n Trik Pemrograman more 17 years ago - ODBC, ADO dan run programnya
by mssetyawati in Hal umum tentang Pascal Indonesia more 16 years ago - PlaySound untuk beberapa file *.wav sekaligus?
by gormet in Multimedia & Graphic Enhancement more 15 years ago - [STOP]netsend
by -BreWok- in Tip n Trik Pemrograman more 16 years ago