Execute;
Метод Execute осуществляет преобразование данных, необходимое при изменении позиции измерений в кубе.
Для выполнения примера предполагается наличие в репозитории автоматического куба с идентификатором «AUTO_CUBE». В кубе содержится более одного измерения.
Sub Main;
Var
MB: IMetabase;
AutoCub: IAutoCube;
Dims: IAutoCubeDimensions;
Dim: IAutoCubeDimension;
Transf: IAutoCubeTransform;
b: Boolean;
Begin
MB := MetabaseClass.Active;
AutoCub := MB.ItemById("AUTO_CUBE").Edit As IAutoCube;
Dims := AutoCub.Dimensions;
Dims.Move(0, 1);
Transf := AutoCub.Transform;
Debug.WriteLine("Исходный список измерений");
For Each Dim In Transf.MapDimensions Do
Debug.WriteLine((Dim.Dimension As IMetabaseObject).Name)
End For;
Debug.WriteLine("Список измерений после перестановки");
For Each Dim In Transf.Dimensions Do
Debug.WriteLine((Dim.Dimension As IMetabaseObject).Name)
End For;
If Transf.GetChanged(b) Then
Transf.Execute;
End If;
(AutoCub As IMetabaseObject).Save;
End Sub Main;
После выполнения примера в списке измерений автоматического куба будут переставлены местами первые два измерения. Если изменения коснулись измерений с данными, то будет осуществлено соответствующее преобразование данных куба. В консоль будут выведены списки наименований измерений до и после перестановки.
См. также: