IMetabaseObjectParamValuesEx.StateOptions

Синтаксис Fore

StateOptions: Integer;

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

StateOptions: integer;

Описание

Свойство StateOptions определяет дополнительное состояние, используемое при открытии регламентного отчета на просмотр.

Комментарии

При задании StateOptions установка свойства IPrxReportOptions.NoRecalcOnOpen будет игнорироваться и:

Пример Fore

Для выполнения примера предполагается наличие регламентного отчета с идентификатором «REGULAR_REPORT».

Добавьте ссылки на системные сборки Metabase, Report.

Sub UserProc;
Var
    MB: IMetabase;
    MBobj : IMetabaseObjectDescriptor;
    Param : IMetabaseObjectParamValues;
    ParamEx : IMetabaseObjectParamValuesEx; 
    Report: IPrxReport;
    Recalc: Boolean;
Begin
    MB := MetabaseClass.Active;
    MBobj := MB.ItemById("REGULAR_REPORT").Bind;
    Param := MBobj.Params.CreateEmptyValues;
    Param.Item(0).Value := DateTime.Today;
    ParamEx := Param As IMetabaseObjectParamValuesEx;
    Report := MBobj.Open(Param) As IPrxReport;
    Recalc := Report.Options.NoRecalcOnOpen;
    If Recalc Then
        ParamEx.StateOptions := 2;
        Else
            ParamEx.StateOptions := 1;
    End If;
End Sub UserProc;

При выполнении примера будет выполнена проверка на значение, установленное в свойстве IPrxReportOptions.NoRecalcOnOpen. В зависимости от этого значения будет установлено значение свойства StateOptions.

Пример Fore.NET

Необходимые требования и результат выполнения примера Fore.NET совпадают с примером Fore.

Imports Prognoz.Platform.Interop.Metabase;
Imports Prognoz.Platform.Interop.Report;

Public Shared Sub Main(Params: StartParams);
Var
    MB: IMetabase;
    MBobj : IMetabaseObjectDescriptor;
    Param : IMetabaseObjectParamValues;
    ParamEx : IMetabaseObjectParamValuesEx; 
    Report: IPrxReport;
    Recalc: Boolean;
Begin
    MB := Params.Metabase;
    MBobj := MB.ItemById["REGULAR_REPORT"].Bind();
    Param := MBobj.Params.CreateEmptyValues();
    Param.Item[0].Value := DateTime.Today;
    ParamEx := Param As IMetabaseObjectParamValuesEx;
    Report := MBobj.Open(Param) As IPrxReport;
    Recalc := Report.Options.NoRecalcOnOpen;
    If Recalc Then
        ParamEx.StateOptions := 2;
        Else
            ParamEx.StateOptions := 1;
    End If;
End Sub;

См. также:

IMetabaseObjectParamValuesEx