ISourceDataImportDestinationInfo.Destination

Синтаксис

Destination: ICubeModelDestination;

Описание

Свойство Destination возвращает вариант отображения, для которого задаются настройки индексации.

Пример

Для выполнения примера предполагается наличие в репозитории контейнера запланированных задач с идентификатором «TASK_CONTAINER». В контейнере создана одна задача, осуществляющая обновление поискового индекса. Задача настроена на обновление поискового индекса для нескольких источников. Подключите системные сборки: BiSearch, Cubes, Fore, Metabase.

Sub UserProc;
Var
    MB: IMetabase;
    Container: IScheduledTasksContainer;
    Task: ISearchEngineImportScheduledTask;
    EngineSchema: ISolrSearchEngineSchema;
    ImportContext: ISourceDataImportContext;
    SourceInfos: ISourceDataImportInfos;
    SourceInfo: ISourceDataImportInfo;
    DestinationInfos: ISourceDataImportDestinationInfos;
    CubeDest: ICubeModelDestination;
    i, j: Integer;
Begin
    MB := MetabaseClass.Active;
    //Получение задачи
    Container := MB.ItemById("TASK_CONTAINER").Bind As IScheduledTasksContainer;
    Task := Container.Tasks.Item(0).Bind As ISearchEngineImportScheduledTask;
    //Контекст для индексации объектов
    EngineSchema := Task.Engine.SearchEngineSchema As ISolrSearchEngineSchema;
    ImportContext := Task.ImportContext(SearchEngineTargetType.SourceData) As ISourceDataImportContext;
    //Получение индексируемых объектов
    SourceInfos := ImportContext.SourceInfos;
    //Просмотр информации
    For i := 0 To SourceInfos.Count - 1 Do
        SourceInfo := SourceInfos.Item(i);
        Debug.WriteLine("Источник: " + MB.Item(SourceInfo.Key).Name + "(Ключ: " + SourceInfo.Key.ToString + ')');
        Debug.WriteLine("Индексируемые варианты отображения:");
        Debug.Indent;
        DestinationInfos := SourceInfo.DestinationInfos;
        For j := 0 To DestinationInfos.Count - 1 Do
            CubeDest := DestinationInfos.Item(j).Destination;
            Debug.WriteLine(CubeDest.Name + '(' + CubeDest.Id + ')');
        End For;
        Debug.Unindent;
    End For;
End Sub UserProc;

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

См. также:

ISourceDataImportDestinationInfo