IDimAttributeInstance.DataDomain

Syntax

DataDomain: DbDataDomain;

Description

The DataDomain property returns data type to store multibyte information in attribute.

Comments

If the DataDomain property is set to DbDataDomain.Memo and the IDimAttribute.DataType property is set to DbDataType.String, the attribute type is Long Text.

On working with the Long Text attribute keep in mind the following constraints:

Example

Executing the example requires that the repository contains an MDM dictionary with the TMDMDICT_MEMO identifier. The dictionary should contain several values.

To execute the example, add links to the Dal, Dimensions, Metabase system assemblies.

Sub UserProc;
Var
    mb: IMetabase;
    dimension: IDimInstance;
    attribute: IDimAttributeInstance;
    attributes: IDimAttributesInstance;
    i: Integer;
Begin
    // Get current repository
    mb := MetabaseClass.Active;
    // Get MDM dictionary
    dimension := mb.ItemById("TMDMDICT_MEMO").Open(NullAs IDimInstance;
    // Get dictionary attributes
    attributes := dimension.Attributes;
    // Parse obtained attributes
    For i := 0 To attributes.Count - 1 Do
        attribute := attributes.Item(i);
        // If attribute is of the Long Text type, display its value
        If (attribute.DataDomain = DbDataDomain.Memo) And
            (attribute.Attribute.DataType = DbDataType.String) Then
            Debug.WriteLine("Value of the first element: " + attribute.Value(0));
        End If;
    End For;
End Sub UserProc;

After executing the example for the first dictionary element, the console displays value of the Long Text attribute type, if it exists in the MDM dictionary.

See also:

IDimAttributeInstance