IMetabaseObject.FlushInstance

Синтаксис

FlushInstance(Value: IMetabaseObjectParamValues): Boolean;

FlushInstance(Value: Prognoz.Platform.Interop.Metabase.IMetabaseObjectParamValues): boolean;

Параметры

Value. Значения параметров объекта.

Описание

Метод FlushInstance осуществляет очистку кэшированных данных объекта по заданным значениям параметров.

Комментарии

FlushInstance возвращает значение True, если очистка кэша прошла успешно.

Использование данного метода увеличивает производительность при работе с объектами, имеющими параметры, например: куб, управляющий параметрами своих измерений. Если используется метод FlushInstance, то при открытии куба возможна очистка кэша по выбранному измерению, а не по всем. Для очистки кэша данных объекта по всем измерениям используйте метод IMetabaseObject.FlushInstances.

Пример

Для выполнения примера предполагается наличие в репозитории параметрического табличного справочника с идентификатором «OBJ_TBL_DICT». Первый параметр данного справочника должен быть вещественного типа.

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

Sub UserSub;
   Var
       Mb: IMetabase;
       Obj: IMetabaseObject;
       ParamVals: IMetabaseObjectParamValues;
   Begin
       Mb := MetabaseClass.Active;
       Obj := Mb.ItemById("OBJ_TBL_DICT").Bind;
       ParamVals := Obj.Params.CreateEmptyValues;
       ParamVals.Item(0).Value := 66;
       Obj.FlushInstance(ParamVals);
End Sub UserSub;

Public Shared Sub Main(Params: StartParams);
Var
    Mb: IMetabase;
    Obj: IMetabaseObject;
    ParamVals: IMetabaseObjectParamValues;
Begin
    Mb := Params.Metabase;
    Obj := Mb.ItemById["OBJ_TBL_DICT"].Bind();
    ParamVals := Obj.Params.CreateEmptyValues();
    ParamVals.Item[0].Value := 66;
    Obj.FlushInstance(ParamVals);
End Sub;

После выполнения примера кэш табличного справочника будет очищен только по первому параметру.

См. также:

IMetabaseObject