anchor.diff:  {$I mDefines.inc}
   
   uses
  -  DB, Classes, {$ifdef gui}Forms,{$endif}
  +  DB, Classes, CustApp, {$IFDEF GUI}Forms,{$ENDIF}
     mDatabaseConnection, mDatabaseConnectionClasses,
     mProgress, mThreads, mPerformedOperationResults,
     mDataPumpConfiguration;
  
positive.code:   TReplicaEngine = class
    strict private
      FCanTerminate : boolean;
  
      procedure InternalReplicaTable (aProgress: ImProgress; aData : TObject; aJobResult : TJobResult);
      procedure DoTerminate(const aJobsResult : TJobResults);
    public
      function ProcessTables ({$ifdef gui}aParentForm : TForm;{$endif} const aTables : TDataReplicaTables; const aResults : IPerformedOperationResults = nil; const aMaxConcurrentThreads : integer = -1) : boolean;
    end;
  
    function DoReplicaTable (const aTable : TDataReplicaTableToTable; aProgress: ImProgress; aResults : IPerformedOperationResults) : boolean;
  
negative.code:   FCanTerminate:= true;
  end;
  
  function TReplicaEngine.ProcessTables({$ifdef gui}aParentForm : TForm;{$endif} aApplication : TCustomApplication; const aTables: TDataReplicaTables; const aResults : IPerformedOperationResults; const aMaxConcurrentThreads: integer): boolean;
  var
    batchexec : TmBatchExecutor;
    newjob : TmJob;
  