To be completed (add example).
Searched the specified model for the instance id of the instance where the specified attribute has exact the specified value. If the attribute type is of string type use the attrStringValue to specify the attribute value. If the attribute type is of integer type, use the attrIntegerValue to specify the attribute value. This function returns only one insance id which implies that you only should use this function if the attribute value is defined to be unique. If the attribute value may occur in more than one instance, use edmiGetHashedAttrInstances.
If no attribute hash table is defined for the specified attribute, no sequential search is performed and the function returns an error code.
Related functions: edmiGetHashedAttrInstanceBN, edmiGetHashedAttrInstances, edmiGetHashedAttrInstancesBN, edmiHashModelInstances
Header:
#include "sdai.h"
Prototype:
EdmiError edmiGetHashedAttrInstanceEx(SdaiModel modelId, SdaiEntity entityId, SdaiEntity attrId, SdaiString attrStringValue, SdaiInteger attrIntegerValue, SdaiInstance *instance);
Arguments:
modelId | A numeric modelID that uniquely identifies the model of interest in the EDMdatabase. |
entityId | |
attrId | A numeric attributeID that uniquely identifies an attribute definition instance in the EDMdatabase. |
attrStringValue | is used to specify the hash table key for hash tables of SdaiString data type. |
attrIntegerValue | is used to specify the hash table key for hash tables of SdaiInstance, and EdmPackedDate data types. |
*instance | Address of the variable where to return the instance id of the found instance. |
Returns:
A completion code of datatype EdmiError is the returned function value. The completion code has the following values:
Completion code = 0 : Operation successfully performed.
Completion code != 0: Error in operation. Completion code is an EDMinterface error code. Use edmiGetErrorText to get the error text corresponding to the error code.
Example:
EdmiError rstat;
. . .