Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

Code Block
languagecpp
themeConfluence
EdmiError edmiRemoteUnsetAttrs(SdaiServerContext serverContextId,
                                SdaiInstance      instanceId, 
                                SdaiInteger       attributes, 
                                SdaiAttr          attributeIds[], 
                                SdaiInvocationId  *edmiInvocationId);;
 


Unsets one ore more attributes, identified by their attributeIds, of a specified instance, identified by its instanceId. The attributeIds are specified in the input buffer argument <attributeIds>. This operation is only applicable on the explicit attributes of application instances.

...

Arguments

...

TypeNameComment
SdaiServerContext

serverContextId

Context identification, from edmiDefineServerContext

SdaiInstance

instanceId

A numeric instanceID that uniquely identifies the instance of interrest interest in the remote _EDMdatabase{_}.remote  EDMdatabase

SdaiInteger

attributes

The number of attribute names in the <attributeIds> argument.

SdaiAttr

attributeIds[]

A buffer containing the attributeIds of all the attributes to be unset.

SdaiInvocationId

edmiInvocationId

Currently not used.

...

Return Value

...

Insert excerpt
US:_r_EDMInterface
US:_r_EDMInterface
nopaneltrue

 

Options

...

  

 

Example

...

 

Code Block
languagecpp
EdmiError rstat;
 SdaiServerContext myContext;
 SdaiInteger index, nHits;
 SdaiQueryResult qexRes;
 char condition[1024], *pCond;

...


 SdaiOptions options;

...


  
 /* Create Server Context */

...


 rstat = edmiDefineServerContext("MyContext",

...


 "Johnny", "Supervisor", "cf37ftr",

...

 
 "TCP", "9090", "MyServerHost",

...

 
 NULL, NULL, NULL, NULL, NULL, &myContext);

...

 
  
 /* Get Johnnys instance Id */

...


 nHits = 2;

...


 index = 0;

...


 options = ONLY_INSTANCE_IDS | SUBTYPES;

...


 pCond = &condition[0];

...


 pCond += sprintf(pCond, "(LAST_NAME = 'Jackson')");

...


 pCond += sprintf(pCond, " AND (FIRST_NAME = 'Johnny')");

...


 pCond += sprintf(pCond, " AND (BIRTH_DATE = '19631216)')");

...


 rstat = edmiRemoteSelectInstances(myContext, "DataRepository",

...


 "SocialRelations", "Person", condition, options,

...

 
 NULL, NULL, NULL, &index, &nHits, &qexRes,

...

 
 NULL, NULL, NULL, NULL);

...

 
 if (nHits != 1) {

...


 printf("\n%s", nHits ? "Ambigious" : "Not found");

...

 
 } else {

...

 
 SdaiInstance _johnnysId = qexRes->instanceIds[0];

...

 
 SdaiAttr _attrIds[2];

...

 
 SdaiEntity _manEID;

...

 
 SdaiModel _modelId;

...

 
  
 /* Johnny was recently divorced.

...

  
 His wife left him in his car. */ 
  
 /* Get the model Id */ 
 rstat = edmiRemoteGetModelBN(myContext, "DataRepository",

...

  
 "SocialRelations", &_modelId, NULL);

...

 
  
 /* Get Man entity Id */

...

 
 rstat = edmiRemoteGetEntity(myContext, _modelId,

...

  
 "Man", &_manEID, NULL);

...


  
 /* Get Man.Wife attribute Id */

...


 rstat = edmiRemoteGetAttrDefinitionBN(myContext,

...

  
 "SocialRelations", "Man", "Wife",

...

 
 &_attrIds[0], NULL);

...

 
  
 /* Get Man.Car attribute Id */

...

 
 rstat = edmiRemoteGetAttrDefinitionBN(myContext,

...

  
 "SocialRelations", "Man", "Car",

...

 
 &_attrIds[1], NULL);

...

 
  
 /* Unset Johnnys Wife and Car attributes */

...

 
 rstat = edmiRemoteUnsetAttrs(myContext,

...

  
 _johnnysId, 2, _attrIds, NULL);

...

 
 }
 edmiFreeQueryResult(qexRes);

...


 . . .

 

See also

Filter by label (Content by label)
showLabelsfalse
showSpacefalse
cqllabel = "model" and parent = "6062220"