SheetRecalc(Sheet: IPrxSheet): Boolean;
SheetRecalc[Sheet: Prognoz.Platform.Interop.Report.IPrxSheet]: boolean;
Sheet. Лист регламентного отчета.
Свойство SheetRecalc определяет признак вычисления листа, указанного в качестве параметра, при изменении значения элемента управления.
Укажите «Null» в качестве значения параметра Sheet для вычисления всех листов регламентного отчета.
Для выполнения примера предполагается наличие регламентного отчета с идентификатором «Rep1» и наличием хотя бы четырех листов. Добавьте в отчет куб в качестве источника, срез куба и разрез среза в качестве элемента управления в отчете. Создайте форму, добавьте на нее кнопку с наименованием «Button1», компонент ReportControlPanel с наименованием «ReportControlPanel1», компонент UiReport с наименованием «UiReport1», укажите последний в качестве объекта компонента ReportControlPanel. Добавьте ссылку на системную сборку Metabase.
Rep: IPrxReport;
Sub OBJ1FormOnShow(Sender: Object; Args: IEventArgs);
Begin
Rep := MetabaseClass.Active.ItemById("Rep1").Edit As IPrxReport;
UiReport1.Instance := Rep;
End Sub OBJ1FormOnShow;
Sub Button1OnClick(Sender: Object; Args: IMouseEventArgs);
Var
ControlAppearance: IPrxControlAppearance;
Begin
ControlAppearance:= Rep.Controls.Item(0).Appearance;
ControlAppearance.SpecificRecalc := True;
ControlAppearance.SheetRecalc(Null) := False;
ControlAppearance.SheetRecalc(Rep.Sheets.Item(0)) := True;
ControlAppearance.SheetRecalc(Rep.Sheets.Item(1)) := True;
ControlAppearance.SheetRecalc(Rep.Sheets.Item(2)) := True;
ControlAppearance.SheetRecalc(Rep.Sheets.Item(3)) := True;
End Sub Button1OnClick;
После нажатия на кнопку при изменении значения элемента управления будут вычислены первые четыре листа регламентного отчета, весь отчет вычисляться не будет.
Для выполнения примера предполагается наличие регламентного отчета с идентификатором «Rep1» и наличием хотя бы четырех листов. Добавьте в отчет куб в качестве источника, срез куба и разрез среза в качестве элемента управления в отчете. Создайте .NET форму, добавьте на нее кнопку с наименованием «Button1», компонент ReportControlPanelNet с наименованием «ReportControlPanelNet1», компонент UiReportNet с наименованием «UiReportNet1», укажите последний в качестве объекта компонента ReportControlPanelNet. Добавьте ссылку на системную сборку Metabase.
Imports Prognoz.Platform.Forms.NET;
Imports Prognoz.Platform.Interop.Metabase;
Imports Prognoz.Platform.Interop.Report;
Public Partial Class OBJ1Form: Prognoz.Platform.Forms.NET.ForeNetForm
Report: IprxReport;
Private Sub OBJ1Form_Load(sender: System.Object; e: System.EventArgs);
Var
Mb: IMetabase;
Desc: IMetabaseObjectDescriptor;
Begin
MB := ReportBoxNet1.Metabase;
Desc:= MB.ItemById["Rep1"];
UiReportNet1.Object:= Desc;
UiReportNet1.Active := True;
End Sub;
Private Sub button1_Click(sender: System.Object; e: System.EventArgs);
Var
ControlAppearance: IPrxControlAppearance;
Begin
Report:= UiReportNEt1.Object.Edit() As IPrxReport;
ControlAppearance := Report.Controls.Item[0].Appearance;
ControlAppearance.SpecificRecalc := True;
ControlAppearance.SheetRecalc[Null] := False;
ControlAppearance.SheetRecalc[Report.Sheets.Item[0]] := True;
ControlAppearance.SheetRecalc[Report.Sheets.Item[1]] := True;
ControlAppearance.SheetRecalc[Report.Sheets.Item[2]] := True;
ControlAppearance.SheetRecalc[Report.Sheets.Item[3]] := True;
uiReportNet1.ReportUi.Report := Report;
End Sub;
После нажатия на кнопку при изменении значения элемента управления будут вычислены первые четыре листа регламентного отчета, весь отчет вычисляться не будет.
См. также: