ICubeMetaExporter.ExportMode

Синтаксис Fore

ExportMode: CubeLoadClearMode;

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

ExportMode: Prognoz.Platform.Interop.Cubes.CubeLoadClearMode;

Описание

Свойство ExportMode определяет режим экспорта временных рядов.

Комментарии

Если задан период экспорта временных рядов, то на него влияет значение свойства ExportMode. Подробнее см. в описании свойства ICubeMetaExporter.AutoPeriod.

Пример Fore

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

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

Sub UserProc;
Var
    TextConsumer: IDtTextConsumer;
    MB: IMetabase;
    Exporter: ICubeMetaExporter;
    Binding: ICubeMetaExporterBinding;
Begin
    // Создаем приемник данных для экспорта в текстовый файл
    TextConsumer := New DtTextConsumer.Create;
    TextConsumer.File := "C:\result_meta_exp.txt";
    TextConsumer.FormatType := DtTextFormatType.Delimited;
    TextConsumer.DelimitedColumnDelimiter := ";";
    TextConsumer.DelimitedTextQualifier := """";
    TextConsumer.Encoding := "WIN";
    TextConsumer.WriteHeader := True;
    // Создаем объект для экспорта
    Exporter := New CubeMetaExporterClass.Create;
    // Получаем текущий репозиторий
    MB := MetabaseClass.Active;
    // Указываем источник и приёмник данных
    Exporter.Rubricator := MB.ItemById("TSDB").Bind As IRubricator;
    Exporter.Consumer := TextConsumer As IDtConsumer;
    // Добавляем привязку календаря
    Binding := Exporter.Bindings.Add;
    Binding.FieldName := "Year";
    Binding.DataType := DbDataType.String;
    Binding.BindingType := CubeMetaExporterBindingType.Calendar;
    Binding.DateFormat := "$Year$";
    Binding.ValueFieldName := "Value";
    Binding.ValueDataType := DbDataType.Float;
    // Указываем, что будут экспортироваться только значения точек
    Exporter.ExportMode := CubeLoadClearMode.DataOnly;
    // Выполняем экспорт
    Exporter.ClearBeforeExport := True;
    Exporter.Export;
End Sub UserProc;

В результате выполнения примера в файл «C:\result_meta_exp.txt» будут выгружены только значения точек.

Пример Fore.NET

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

Imports Prognoz.Platform.Interop.Cubes;
Imports Prognoz.Platform.Interop.Dal;
Imports Prognoz.Platform.Interop.Dt;

Public Shared Sub Main(Params: StartParams);
Var
    TextConsumer: IDtTextConsumer;
    MB: IMetabase;
    Exporter: ICubeMetaExporter;
    Binding: ICubeMetaExporterBinding;
Begin
    // Создаем приемник данных для экспорта в текстовый файл
    TextConsumer := New DtTextConsumer.Create();
    TextConsumer.File := "C:\result_meta_exp.txt";
    TextConsumer.FormatType := DtTextFormatType.tftDelimited;
    TextConsumer.DelimitedColumnDelimiter := ";";
    TextConsumer.DelimitedTextQualifier := """";
    TextConsumer.Encoding := "WIN";
    TextConsumer.WriteHeader := True;
    // Создаем объект для экспорта
    Exporter := New CubeMetaExporterClass.Create();
    // Получаем текущий репозиторий
    MB := Params.Metabase;
    // Указываем источник и приёмник данных
    Exporter.Rubricator := MB.ItemById["TSDB"].Bind() As IRubricator;
    Exporter.Consumer := TextConsumer As IDtConsumer;
    // Добавляем привязку календаря
    Binding := Exporter.Bindings.Add();
    Binding.FieldName := "Year";
    Binding.DataType := DbDataType.ddtString;
    Binding.BindingType := CubeMetaExporterBindingType.cmebtCalendar;
    Binding.DateFormat := "$Year$";
    Binding.ValueFieldName := "Value";
    Binding.ValueDataType := DbDataType.ddtFloat;
    // Указываем, что будут экспортироваться только значения точек
    Exporter.ExportMode := CubeLoadClearMode.clcmDataOnly;
    // Выполняем экспорт
    Exporter.ClearBeforeExport := True;
    Exporter.Export();
End Sub;

См. также:

ICubeMetaExporter