Field-Map Scripting

4.1.1.4.10 Example

Example (Progress bar):


Using progress bar procedures is demonstrated below on an extended example.

In this simple example script, all trees (1) and regeneration records (2) are listed for each plot. Therefore number of cycles is set to "number of plots x 2". Maximum value for the  trees progress bar cycle is set to number of trees, maximum value for the regeneration progress bar cycle is set to number of records in the regeneration layer.


var i:integer;
Begin
  PrepareProgressBar(Plots.RecordCount*2);   //set number of cycles
  OpenLog('List of trees and regeneration');   
  
  Plots.First;
  while not Plots.EOF do begin
    Log(format('Plot number: (%d) %s',[integer(Plots['ID']),Plots['Name']]));
    StartProgressBarCycle(Trees.RecordCount);      
    Trees.First;
    while not Trees.EOF do begin
      StepProgressBar;
      log(format('Tree number:',[Trees['ID']]));
      Trees.Next;
    end;

    StartProgressBarCycle(Regeneration.RecordCount);  
    Regeneration.First;
    while not Regeneration.EOF do begin
      StepProgressBar;
      log(format('Regeneration number:',[Regeneration['ID']]));
      Regeneration.Next;
    end; 
    
    Plots.Next;
  end;
End.



See also:

PrepareProgressBar; StartProgressBarCycle; StepProgressBar; ResetProgressBar; PerformOneStepCycle;SetProgressBarMin; SetProgressBarMax; SetProgressBarPosition; SetProgressBarStep


Example