Progress Bar
[edit]Introduction
A progress bar is a graphical representation of a job's progress and is used extensively in the standard application. By using a progress bar, users can follow the job's progress. It is best practice to always display a progress bar during a lengthy process.
[edit]Progress Bar within a batchable class
The RunBase framework has methods which will initialize the progress bar so that you can focus on coding the process.
// progress bar Runbase demo public void run() { str text; int percent; int counter; int64 progressTotal = 200; // hard coded for demo purpose (this is normally calculated) ; this.progressInit("Processing", progressTotal, #AviFormLetter); progress.setText("Item"); for (counter = 1; counter <= progressTotal; counter ++) { // // processing happens here // sleep(10); // // progress bar text for the current 'item' // percent = decRound((counter / progressTotal) * 100, 0); text = strFmt("Item %1 of %2 (%3%)", counter, progressTotal, percent); progress.setText(text); progress.incCount(); } progress = null; }
[edit]Progress Bar within a Method
On occasion you may want to show a progress bar from a method, whether that be inside a class or just a job. You can show it as follows:
#AviFiles SysOperationProgress progress = new SysOperationProgress(); ; progress.setAnimation(#....); // from AviFiles macro progress.setCaption("<caption text>"); //99 Steps to perform progress.setTotal(99); progress.incCount(); progress.setCount(2); progress.setCaption("<caption text>"); progress.kill();