Attribute Manager


To have an overview what the attributes are, and how they fit into the entire database please refer to the Attribute_Overview chapter.

In this papers only the handler functions are explained in full details.

 

Handler Functions

All of the attribute handler functions begins with the ACAPI_Attribute_ prefix. This function family gives support to query the attribute database, to modify the existing items, and also to create new instances. Refer to the functions below to have details on these topics.

ACAPI_Attribute_GetNum
ACAPI_Attribute_Search
ACAPI_Attribute_Get
ACAPI_Attribute_GetDef
ACAPI_Attribute_GetDefExt
ACAPI_Attribute_Create
ACAPI_Attribute_CreateExt
ACAPI_Attribute_Delete
ACAPI_Attribute_DeleteMore
ACAPI_Attribute_Modify
ACAPI_Attribute_ModifyExt

Controlling the user data assigned to an attribute:

ACAPI_Attribute_GetUserData
ACAPI_Attribute_SetUserData

Controlling the classifications and properties assigned to an attribute:

ACAPI_Attribute_GetClassificationItems  API 23 feature
ACAPI_Attribute_GetClassificationInSystem  API 23 feature
ACAPI_Attribute_AddClassificationItem  API 23 feature
ACAPI_Attribute_RemoveClassificationItem  API 23 feature
ACAPI_Attribute_IsClassificationItemVisible  API 23 feature
ACAPI_Attribute_GetPropertyDefinitions  API 23 feature
ACAPI_Attribute_GetPropertyValue  API 23 feature
ACAPI_Attribute_GetPropertyValues  API 23 feature
ACAPI_Attribute_GetPropertyValuesByGuid  API 23 feature
ACAPI_Attribute_SetProperty  API 23 feature
ACAPI_Attribute_SetProperties  API 23 feature
ACAPI_Attribute_IsPropertyDefinitionValueEditable  API 23 feature
ACAPI_Attribute_IsPropertyDefinitionAvailable  API 23 feature
ACAPI_Attribute_IsPropertyDefinitionVisible  API 23 feature

General Error Codes

APIERR_BADID

invalid reference;
the attribute type is invalid or the operation cannot apply that type

APIERR_BADINDEX

invalid reference;
the supplied attribute index is out of range

APIERR_DELETED

invalid reference;
the attribute does not exist in the database (deleted)

APIERR_NOTMINE

permission denied;
the attribute is out of the users workspace

 

Notes

There are certain rules which effect the attribute operations; i.e. they may be refused for some reason. The most important rules are:

  • certain attribute types have a fixed number of instances (e.g. pens),
  • certain attribute types must have at least one instance (e.g. line types),
  • any type of modification is allowed only in the case when the target attribute instance is in the user’s workspace