...
Code Block | ||||
---|---|---|---|---|
| ||||
EdmiError edmiDeleteProtectedElement(SdaiAggr aggrId,
SdaiPrimitiveType valueType,
...);
|
Deletes all elements with a given value from an aggregate in a protected attribute.
...
Some system models are created and maintained by EDM and therefore the users need no write access to them. However, in these system models, some attributes may still be manipulated by selected users even if the model it self is open for read only. The ordinary operations such as e.g sdaiAdd and sdaiDelete, would return an error code if used on these attributes. To manipulate protected attributes one must use the protected-versions of the operations.
...
Arguments
...
Type | Name | Comment |
SdaiAggr | aggrId | A numeric aggregateID that uniquely identifies the protected aggregate of interest in the EDMdatabase. |
SdaiPrimitiveType | valueType | The primitive type of the data value to be deleted from the protected aggregate. |
value | The value to delete from the protected aggregate. |
...
Return Value
...
Insert excerpt | ||||||
---|---|---|---|---|---|---|
|
Options
...
Example
...
Code Block | ||
---|---|---|
| ||
EdmiError rstat; SdaiModel modId, edmModId; SdaiAggr adminAggrId; SdaiInstance johnnyId, lucyId; /* Get the sdaiModel Id */ modId = edmiGetModelBN("MyRepository", "MyModel"); |
...
/* Get Johnnys and lucys user Ids */ |
...
rstat = edmiGetUser("johnny", &johnnyId); |
...
rstat = edmiGetUser("lucy", &lucyId); |
...
/* Get the edm_model Id in the ExpressDataManager Model */ |
...
sdaiGetAttrBN(modId, "edm_model", sdaiINSTANCE, &edmModId); |
...
/* Get the model administrator aggregate */ |
...
sdaiGetAttrBN(edmModId, "ADMINISTRATORS", sdaiAGGR, &adminAggrId); |
...
/* Remove Lucy from list of model administrators */ |
...
rstat = edmiDeleteProtectedElement(adminAggrId, sdaiINSTANCE, lucyId); |
...
/* Add Johnny to list of model administrators */ |
...
rstat = edmiAddProtectedElement(adminAggrId, sdaiINSTANCE, johnnyId); |
...
/* Grant create_repository_rights to Johnny */ |
...
rstat = edmiPutProtectedAttrBN(johnnyId, "creating_repository_permission", |
...
sdaiBOOLEAN, sdaiTRUE); |
...
/* Remove the description of MyModel */ |
...
rstat = edmiUnsetProtectedAttrBN(edmModId, "description"); |
...
. . . |
See also
Filter by label (Content by label) | ||||||
---|---|---|---|---|---|---|
|