StringPositionEnd: Integer;
Свойство StringPositionEnd определяет конечную позицию границы поля, в которых содержится составной атрибут. Задавать значения следует, начиная с нуля. В случае если граница не определена, то следует выставлять значение «-1».
Примечание. Свойство является устаревшим, используйте ICubeMetaLoaderBindingParser.StringPositionEnd.
Для выполнения примера предполагается наличие базы данных временных рядов с идентификатором «OBJ_RUBRICATOR» и файла экспорта показателей «C:\result_exp.txt».
Sub Main;
Var
MB: IMetabase;
CrInfo: IMetabaseObjectCreateInfo;
Obj: IMetabaseObject;
ObjDesc: IMetabaseObjectDescriptor;
Loader: ICubeMetaLoader;
Bindings: ICubeMetaLoaderBindings;
Binding: ICubeMetaLoaderBinding;
TextProvider: IDtTextProvider;
Begin
MB := MetabaseClass.Active;
CrInfo := Mb.CreateCreateInfo;
CrInfo.ClassId := MetabaseObjectClass.KE_CLASS_CUBEMETALOADER;
CrInfo.Parent := Mb.ItemById("OBJ_RUBRICATOR").Bind;
CrInfo.Id := Mb.GenerateId("CUBEMETALOADER", CrInfo.Parent.Key);
CrInfo.Permanent := False;
ObjDesc := Mb.CreateObject(CrInfo);
Obj := ObjDesc.Edit;
Loader := Obj As ICubeMetaLoader;
// Источник данных для импорта из текстового формата
TextProvider := New DtTextProvider.Create;
TextProvider.File := "C:\result_exp.txt";
TextProvider.FormatType := DtTextFormatType.Delimited;
TextProvider.DelimitedColumnDelimiter := ";";
TextProvider.DelimitedTextQualifier := """";
TextProvider.Encoding := "WIN";
TextProvider.RangeHasHeader := True;
TextProvider.Open;
Loader.Data := (TextProvider As IDatasetDataProvider);
Loader.ImportObjectKey := Obj.Key;
Loader.NewRevisionName := "Мета импорт";
Loader.LoadType := CubeMetaLoaderLoadType.CreateAndUpdate;
Loader.Rubricator := Mb.ItemById("OBJ_RUBRICATOR").Bind As IRubricator;
Bindings := Loader.Bindings;
Binding := Bindings.Add;
Binding.BindingType := CubeMetaLoaderBindingType.Attribute;
Binding.Attribute := "COUNTRY";
Binding.FieldType := CubeMetaLoaderFieldType.Name;
Binding.Field := "Country_Ind";
Binding.StringPositionStart := 0;
Binding.StringPositionEnd := 2;
Binding := Bindings.Add;
Binding.BindingType := CubeMetaLoaderBindingType.Attribute;
Binding.Attribute := "INDICATOR";
Binding.FieldType := CubeMetaLoaderFieldType.Name;
Binding.Field := "Country_Ind";
Binding.StringPositionStart := 4;
Binding.StringPositionEnd := -1;
End Sub Main;
После выполнения примера будет создан объект импорта показателей из текстового файла «C:\result_exp.txt». В данном объекте будет настроена привязка импорта составного атрибута.
См. также: