IPrxSlice.GetRecentChanges

Синтаксис Fore

GetRecentChanges: IMatrix;

Синтаксис Fore.NET

GetRecentChanges: Prognoz.Platform.Interop.Matrix.IMatrix;

Описание

Метод GetRecentChanges возвращает матрицу измененных значений среза регламентного отчета.

Комментарии

Метод после каждого изменения данных в регламентном отчете возвращает новую матрицу, в которой зафиксированы текущие изменения для среза.

После сохранения данных отчета или области метод будет возвращать пустую матрицу.

Пример Fore

Для выполнения примера предполагается наличие формы, расположенной на ней кнопки с идентификатором «Button1», компонента ReportBox и компонента UiReport с наименованием «UiReport1», являющегося источником данных для ReportBox  и регламентного отчета с идентификатором «Rep_1». В инспекторе сборок должны быть указаны ссылки на системные сборки  Report, Metabase, Forms, Matrix, ForeSystem.

Пример является обработчиком события OnClick для кнопки.

Sub OBJ46841FormOnShow(Sender: Object; Args: IEventArgs);
Begin
    mb:= MetabaseClass.Active;
    report:= mb.ItemById("Rep_1").Open(NullAs Iprxreport;
    UiReport1.Instance:= report;
End Sub OBJ46841FormOnShow;

Sub Button1OnClick(Sender: Object; Args: IMouseEventArgs);
Var
    m_s :IMatrix;
    Iter: IMatrixIterator;
Begin
    m_s:= report.DataSources.Item(0).Slices.Item(0).GetRecentChanges;
    Iter := m_s.CreateIterator;
    Iter.Move(IteratorDirection.First);
    While Iter.Valid Do
        Debug.Write(Iter.Value + " ");
        Iter.Move(IteratorDirection.Next);
    End While;
End Sub Button1OnClick;

После выполнения примера при изменении данных и нажатии кнопки, измененные значения будут выведены в консоль.

Пример Fore.NET

Для выполнения примера предполагается наличие формы, расположенной на ней кнопки с идентификатором «Button1», компонента ReportBoxNet, компонента UiReportNet с наименованием «UiReportNet1», являющегося источником данных для ReportBoxNet и регламентного отчета с идентификатором «Rep_1». В инспекторе сборок должны быть указаны ссылки на системные сборки  Report, Forms, Matrix, ForeSystem.

Пример является обработчиком события Click для кнопки.

Imports Prognoz.Platform.Forms.NET;
Imports Prognoz.Platform.Interop.Metabase;
Imports Prognoz.Platform.Interop.Report;
Imports Prognoz.Platform.Interop.Forms;
Imports Prognoz.Platform.Interop.Matrix;
Imports Prognoz.Platform.Interop.ForeSystem;
Imports System.Diagnostics;

Private Sub OBJ46886Form_Shown(sender: System.Object; e: System.EventArgs);
Var
    mb:IMetabase;
    report:IPrxReport;
Begin
    mb:= Self.Metabase;
    report:= mb.ItemById["Rep_1"].Open(NullAs Iprxreport;
    UiReportNet1.ReportUi.Instance:= report;
End Sub;
    
Private Sub button1_Click(sender: System.Object; e: System.EventArgs);
Var
    m_s: IMatrix;
    Iter: IMatrixIterator;
    report:IPrxReport;
Begin
    report:= UiReportNet1.ReportUi.Instance As Iprxreport;
    m_s:= report.DataSources.Item(0).Slices.Item(0).GetRecentChanges;
    Iter := m_s.CreateIterator();
    Iter.Move(IteratorDirection.itdFirst);
    While Iter.Valid Do
        System.Diagnostics.Debug.Write(Iter.Value + " ");
        Iter.Move(IteratorDirection.itdNext);
    End While;
End Sub;

После выполнения примера при изменении данных и нажатии кнопки, измененные значения будут выведены в консоль.

См. также:

IPrxSlice