Skip to end of metadata
Go to start of metadata

You are viewing an old version of this page. View the current version.

Compare with Current View Page History

Version 1 Next »


 
To be completed
Related function: edmiPutprotectedAttrBN
Header:
#include "sdai.h"
Prototype:
EdmiError edmiRemotePutProtectedAttr(SdaiServerContext  serverContextId,
                                      SdaiInstance       instanceId, 
                                      SdaiString         attributeName, 
                                      SdaiInvocationId   *edmiInvocationId, 
                                      SdaiPrimitiveType  valueType, 
                                      ...);  
 
Arguments:

serverContextId

Context identification, from edmiDefineServerContext

instanceId

A numeric instanceID that uniquely identifies the instance of interrest in the remote EDMdatabase.

attributeName

For each attribute value to assign the two following arguments in the following order have to be specified:

  1. <attributeName> : Name of the actual attribute. Attribute names are case insensitive. The attribute name must be qualified with the entity name when the attribute name is not unique within the actual entity.
  2. <valueType> : The specified primitive type <valueType> must be the same or a compatible data type of the actual attribute domain as defined in the attribute declaration in the related EXPRESS schema.

    All data types except sdaiAGGR can be handled by this operation. Aggregates cannot be assigned as attribute data value by this operation. Aggregates must be assigned to attributes by either sdaiCreateAggr or sdaiCreateAggrBN operations. The primitive type sdaiSELECT can be used to write all data types. The primitive type sdaiADB can be used to write all data types except typed values.
    The primitive type sdaiINTEGER is compatible with sdaiREAL, and sdaiBOOLEAN is compatible with sdaiLOGICAL, hence conversion between these compatible data types will be performed when required.
    An aggregate, i.e. data type sdaiAGGR is illegal in this operation.

edmiInvocationId

Not yet used. When the edmiInvocationId is specified unequal NULL, the actual operation will be asynchronous and a handle (identifier) of the call will be returned in the edmiInvocationId argument.
This handle can be used in later operations for requesting the status (waiting, running, finished ..) and the result of the avtual operation.

valueType

The data type, i.e. the primitive type of the elements in the aggregate.
Legal data types are: sdaiINTEGER, sdaiREAL, sdaiSTRING, sdaiBOOLEAN, sdaiLOGICAL, sdaiBINARY, sdaiENUMERATION, sdaiAGGR, sdaiINSTANCE, sdaiADB .

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;
. . .

  • No labels