ProgressBar = CreateObject('Progress') && For Progress Bar SELECT(SourceWA) ProgressBar.MaxCount = RecCount() ProgressBar.ChangeText(1,'Appending ' + AllTrim(Str(RecCount())) + ' records ' ProgressBar.Update(1,0) ProgressBar.Show() lnCounter = 0 SCAN lnCounter = lnCounter + 1 ProgressBar.Update(1,lnCounter,.T.) && Update Progressbar ** Code to process data .... ENDSCAN ProgressBar.Update(1,100) && 100 % done ** ProgressBar.Hide()I use the ChangeText() method to display the action being carried out. Initially, the MaxCount property is set to RecCount() to inform the class about the number that corresponds to 100%. Within the SCAN - ENDSCAN loop, Update method updates the progress bar.