These C Outline functions are for varying attributes.
Function | Description |
---|---|
EssOtlQueryVaryingAttributes | Queries the outline for member varying attribute information |
EssOtlDetailQueryVaryingAttributes | Similar to EssOtlQueryVaryingAttributes. |
EssOtlVaryingAssociateAttribute | Associates a varying attribute member with a base dimension member |
EssOtlVaryingAssociateAttributeDimension | Associates a varying attribute dimension with a base dimension |
EssOtlVaryingDisassociateAttribute | Disassociates a varying attribute dimension from a base dimension |
EssOtlVaryingGetAssociatedAttributes | Returns all varying attribute members that are associated with a base dimension member or base dimension |
EssOtlVaryingGetAttributeIndepDims | Returns the independent dimensions, if any, for the dimension containing the specified varying attribute member |
These APIs may not be fully compatible with future implementations.
See C Main API Attributes Functions .
Attribute associations can depend on outside factors. For example
Over time a client can have different sales representatives assigned to it.
Over time or based on market territory, packaging for a product can be different.
The varying attributes feature enables you to keep track of values for each factor. For example, consider the situation where the sales representative attribute association for Customer A gets changed in May. Customer sales totals and sales representative assignments over the first six months look like this:
Jan Feb Mar Apr May Jun 5540 2190 1580 300 2455 3255 Jones Jones Jones Jones Smith Smith
Using the varying attributes feature, retrievals can reflect that Jones sold Customer A $9610 (sum of Jan, Feb, and Mar) and Smith sold $5680 (sum of May and Jun). Without this feature, the only known representative is the current representative, Smith, and all sales ($15290) get attributed to him.
Term | Definition |
---|---|
independent dimensions | The dimension upon which varying attributes depend; in the above example, the Year dimension. |
perspective | A combination of independent dimension members that is used when querying for associations. Defined in ESS_PERSPECTIVE_T. |
validity set | The collection of independent dimension members for which an association is true. Defined in ESS_VALIDITYSET_T. |
Varying attributes are constructed in the API with the following flow:
Item | Outline API Call |
---|---|
1. Set the outline type to accept varying attributes | EssOtlSetOutlineInfo, where pOutlineinfo->fEnableVaryingAttrs = ESS_TRUE. |
2. Identify the independent dimension | EssOtlSetMemberInfo, where pMemberInfo->fIndependentDim = ESS_TRUE |
3. Associate the attribute dimension to the base dimension and identify independent dimensions | EssOtlVaryingAssociateAttributeDimension |
4. Associate attribute dimension members independent dimension members with base dimension members | EssOtlVaryingAssociateAttribute |
5. Save and restructure the outline. | The same as when making other outline changes. |
Item | Outline API Call |
---|---|
Add a new association to independent members. | EssOtlVaryingAssociateAttribute |
Remove independent member associations | EssOtlVaryingDisassociateAttribute |
View existing independent dimension member associations | EssOtlQueryVaryingAttributes or EssOtlVaryingGetAssociatedAttributes |
Disassociate attribute dimensions from base dimensions | EssOtlDisassociateAttributeDimension (disassociates all attribute dimensions). |