IValidationMissingMetadata.CalculationType

Синтаксис Fore

CalculationType: MsCalculationType;

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

CalculationType: Prognoz.Platform.Interop.Ms.MsCalculationType;

Описание

Свойство CalculationType определяет тип метаданных, в которых валидация выявляет отсутствие значений.

Комментарии

Возможные значения:

Пример Fore

Для выполнения примера в репозитории предполагается наличие базы данных временных рядов с идентификатором «TSDB_VALIDATION_PARAMETERS», содержащей правило валидации с идентификатором «VALIDATION».

Добавьте ссылки на системные сборки: Cubes, Dimensions, Metabase, Ms, Rds.

Sub UserProc;
Var
    Mb: IMetabase;
    RubrObj: IMetabaseObjectDescriptor;
    ValidObj: IMetabaseObject;
    ValidFilter: IValidationFilter;
    MissingMetaData: IValidationMissingMetaData;
    SelectionAttrValList: IValidationSelectionValueList;
    SelectionAttrFilter: IValidationSelectionFilter;
    Rub: IRubricator;
    MetaAttr: IMetaAttribute;
    ValidMetaAttrs: IValidationMetaAttributes;
Begin
    Mb := MetabaseClass.Active;
    // Получаем базу данных временных рядов
    RubrObj := Mb.ItemById("TSDB_VALIDATION_PARAMETERS");
    Rub := RubrObj.Bind As IRubricator;
    // Получаем правило валидации
    ValidObj := Mb.ItemByIdNamespace("VALIDATION", RubrObj.Key).Edit;
    ValidFilter := ValidObj As IValidationFilter;
    // Указываем, что валидация выполняется по всем уровням календарной динамики
    ValidFilter.Level := DimCalendarLevel.None;
    // Указываем тип валидации
    ValidFilter.Kind := ValidationDetailsKind.MissingMetaData;
    // Получаем параметры валидации «Пропуски в метаданных»
    MissingMetaData := ValidFilter.Details As IValidationMissingMetaData;
    // Задаем тип проверяемых метаданных
    MissingMetaData.CalculationType := MsCalculationType.Pointwise;
    // Задаем проверяемый атрибут
    MetaAttr := Rub.Values.Attributes.FindById("CMT");
    ValidMetaAttrs := MissingMetaData.Attributes;
    ValidMetaAttrs.Clear;
    ValidMetaAttrs.Add(MetaAttr);
    // Очищаем область выполнения и фильтр валидации
    SelectionAttrValList := MissingMetaData.SelectionTargetData;
    SelectionAttrValList.Clear;
    SelectionAttrFilter := MissingMetaData.SelectionFilter;
    SelectionAttrFilter.Clear;
    // Сохраняем изменения
    ValidObj.Save;
End Sub UserProc;

В результате выполнения примера будет настроено правило валидации типа «Пропуски в метаданных». При его выполнении проверяется наличие значения системного атрибута «CMT» у наблюдений показателей.

Пример Fore.NET

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

Imports Prognoz.Platform.Interop.Cubes;
Imports Prognoz.Platform.Interop.Dimensions;
Imports Prognoz.Platform.Interop.Ms;
Imports Prognoz.Platform.Interop.Rds;

Public Shared Sub Main(Params: StartParams);
Var
    Mb: IMetabase;
    RubrObj: IMetabaseObjectDescriptor;
    ValidObj: IMetabaseObject;
    ValidFilter: IValidationFilter;
    MissingMetaData: IValidationMissingMetaData;
    SelectionAttrValList: IValidationSelectionValueList;
    SelectionAttrFilter: IValidationSelectionFilter;
    Rub: IRubricator;
    MetaAttr: IMetaAttribute;
    ValidMetaAttrs: IValidationMetaAttributes;
Begin
    Mb := Params.Metabase;
    // Получаем базу данных временных рядов
    RubrObj := Mb.ItemById["TSDB_VALIDATION_PARAMETERS"];
    Rub := RubrObj.Bind() As IRubricator;
    // Получаем правило валидации
    ValidObj := Mb.ItemByIdNamespace["VALIDATION", RubrObj.Key].Edit();
    ValidFilter := ValidObj As IValidationFilter;
    // Указываем, что валидация выполняется по всем уровням календарной динамики
    ValidFilter.Level := DimCalendarLevel.dclNone;
    // Указываем тип валидации
    ValidFilter.Kind := ValidationDetailsKind.vdkMissingMetaData;
    // Получаем параметры валидации «Пропуски в метаданных»
    MissingMetaData := ValidFilter.Details As IValidationMissingMetaData;
    // Задаем тип проверяемых метаданных
    MissingMetaData.CalculationType := MsCalculationType.mctPointwise;
    // Задаем проверяемый атрибут
    MetaAttr := Rub.Values.Attributes.FindById("CMT");
    ValidMetaAttrs := MissingMetaData.Attributes;
    ValidMetaAttrs.Clear();
    ValidMetaAttrs.Add(MetaAttr);
    // Очищаем область выполнения и фильтр валидации
    SelectionAttrValList := MissingMetaData.SelectionTargetData;
    SelectionAttrValList.Clear();
    SelectionAttrFilter := MissingMetaData.SelectionFilter;
    SelectionAttrFilter.Clear();
    // Сохраняем изменения
    ValidObj.Save();
End Sub;

См. также:

IValidationMissingMetadata