Doduše ja radim s IBDAC kontrolama, no mislim da je smisao isti.
Kod mene:
Code:
... isječak
with bs1 do
begin
Server := Config.dbCon.Server;
Database := Config.dbCon.Database;
Username := Config.dbCon.Username;
Password := Config.dbCon.Password;
ClientLibrary := Config.dbCon.ClientLibrary;
LoginPrompt := Config.dbCon.LoginPrompt;
BackupFile.Clear;
BackupFile.Add( TITHelper.addslash( Config.Path.BackupTemp ) + dbn + '.FBK' );
Verbose := True;
Attach;
end;
try
bs1.ServiceStart;
while not bs1.Eof do
begin
meProgress.Lines.Add( bs1.GetNextLine );
if pbProgress.Position >= pbProgress.Max
then
pbProgress.Position := pbProgress.Min;
pbProgress.StepIt;
Application.ProcessMessages;
end;
finally
bs1.Detach;
CodeSite.SendNote( 'BACKUP STOP SVC' );
end;
Kroz ovu petlju backup service vraća poruke koliko i što je odradio i napredak, odnosno šalje poruke.
Nisam gleda, postoji li i kakav recordcount, zadovoljio sam se samo hvatanjem poruka u log i kakvim-takvim progressom.
Inače imam složen mehanizam za gbak i nbackup, kroz TIBCBackupService i lokalno na svakom klijentu mogu pamtiti podatke o inkrementalnim backupovima na nivou svake baze i generaciji kopija, a kod gbak-a. održavam maksimum n generacija backupova, a prijašnje brišem. Plus dodatno mogućnost zipanja backupova. Nbackup mi je draži jer za izradu backupova na klijent ne moram koristiti zavrzlame sa sheranim backup folderom na serveru.
Realno ne možeš znati koliko on ima posla za odraditi. Primjer iz posta gore također ne riješava taj problem. U tom primjeru prati po ključnim riječima i segmentima backupa; koliko je odradio (koliko sam na brzinu bacio oko na kod). Najviše će vremena trošiti na backup tablica, a taj korak vrednuje jednako kao i backup svih ostalih db objekata što je nerealno.
U obradama za koje ne znam koliko traju i kolika im je krajnja vrijednost stavljam kružni progressbar i samo obavještavam koliko proces traje (razna kopiranja, obrade i sl.) i uglavnom ih radim kroz threadove i sinhroniziram podatke na forme.
Kako vi imate riješen backup IB/FB baza?
God is real unless is declared as integer.