UndoRedo: IUndoRedo;
UndoRedo : Prognoz.Platform.Interop.ForeSystem.IUndoRedo;
Свойство UndoRedo определяет параметры стека изменений (отмены/повтора) объекта регламентного отчета - «Форматированный текст».
Для выполнения примера предполагается наличие текстового блока в регламентном отчете с идентификатором «REGULAR_REPORT». Подключите системные сборки: Metabase, Report, Tab, ForeSystem (для Fore.NET).
Sub UserProc;
Var
MB: IMetabase;
MObj: IMetabaseObject;
Report: IPrxReport;
DUnRed: IUndoRedo;
TS: ITabSheet;
FlowDocument: IPrxFlowDocument;
Begin
MB := MetabaseClass.Active;
MObj := MB.ItemById("REGULAR_REPORT").Edit;
Report := MObj As IPrxReport;
TS := (Report.ActiveSheet As IPrxTable).TabSheet;
FlowDocument := TS.Objects.Item(0).Extension As IPrxFlowDocument;
DUnRed := FlowDocument.UndoRedo;
DUnRed.Enabled := True;
DUnRed.Limit := 3;
MObj.Save;
End Sub UserProc;
После выполнения примера для текстового блока будет доступен стек изменений с ограничением по количеству операций отмены/повтора = 3 действия.
Необходимые требования и результат выполнения примера Fore.NET совпадают с примером Fore.
Imports Prognoz.Platform.Interop.Metabase;
Imports Prognoz.Platform.Interop.Report;
Imports Prognoz.Platform.Interop.ForeSystem;
Imports Prognoz.Platform.Interop.Tab;
Public Shared Sub Main(Params: StartParams);
Var
MB: IMetabase;
MObj: IMetabaseObject;
Report: IPrxReport;
DUnRed: IUndoRedo;
TS: ITabSheet;
FlowDocument: IPrxFlowDocument;
Begin
MB := Params.Metabase;
MObj := MB.ItemById["REGULAR_REPORT"].Edit();
Report := MObj As IPrxReport;
TS := (Report.ActiveSheet As IPrxTable).TabSheet;
FlowDocument := TS.Objects.Item[0].Extension As IPrxFlowDocument;
DUnRed := FlowDocument.UndoRedo;
DUnRed.Enabled := True;
DUnRed.Limit := 3;
MObj.Save();
End Sub;
См. также: