UndoRedo: IUndoRedo;
UndoRedo: Prognoz.Platform.Interop.ForeSystem.UndoRedo;
Свойство UndoRedo возвращает параметры стека изменений экспресс-отчета.
Для использования параметров стека изменений необходимо, чтобы свойство IUndoRedo.Enabled принимало значение True.
Для выполнения примера в репозитории предполагается наличие экспресс-отчета с идентификатором «EXPRESS_REPORT», содержащего пузырьковую диаграмму.
Добавьте ссылки на системные сборки: Express, Metabase.
Sub UserProc;
Var
Metabase: IMetabase;
Analyzer: IEaxAnalyzer;
UndoRedoAnalyzer: IUndoRedo;
Begin
// Получим репозиторий
Metabase := MetabaseClass.Active;
// Получим экспресс-отчёт
Analyzer := Metabase.ItemById("EXPRESS_REPORT").Edit As IEaxAnalyzer;
// Получим стек изменений экспресс-отчёта
UndoRedoAnalyzer := Analyzer.UndoRedo;
// Зададим доступность и количество изменений стека
UndoRedoAnalyzer.Enabled := True;
UndoRedoAnalyzer.Limit := 20;
//Сохраним изменения
(Analyzer As IMetabaseObject).Save;
End Sub UserProc;
После выполнения примера для экспресс-отчета будет доступен стек изменений с ограничением по количеству операций отмены/повтора, равному 20 действиям.
Необходимые требования и результат выполнения примера Fore.NET совпадают с примером Fore.
Imports Prognoz.Platform.Interop.Express;
Imports Prognoz.Platform.Interop.ForeSystem;
Public Shared Sub Main(Params: StartParams);
Var
Metabase: IMetabase;
Analyzer: IEaxAnalyzer;
UndoRedoAnalyzer: IUndoRedo;
Begin
// Получим репозиторий
Metabase := Params.Metabase;
// Получим экспресс-отчёт
Analyzer := Metabase.ItemById["EXPRESS_REPORT"].Edit() As IEaxAnalyzer;
// Получим стек изменений экспресс-отчёта
UndoRedoAnalyzer := Analyzer.UndoRedo;
// Зададим доступность и количество изменений стека
UndoRedoAnalyzer.Enabled := True;
UndoRedoAnalyzer.Limit := 20;
//Сохраним изменения
(Analyzer As IMetabaseObject).Save();
End Sub;
См. также: