edmiRemoteChangeOpenModeBN
EdmiError edmiRemoteChangeOpenModeBN(SdaiServerContext serverContextId, SdaiString repositoryName, SdaiString modelName, SdaiAccessMode openMode, SdaiInvocationId *edmiInvocationId);
Changes the open mode of a model or a repository within a locally connected EDMdatabase . This feature has been implemented to provide all EDMInterface functionality through the remote EDMInterface calls. Only applicable for the LOCAL_CONTEXT communication type.
Arguments
Error rendering macro 'excerpt-include' : User 'null' does not have permission to view the page 'US:_a_serverContextId'.
Error rendering macro 'excerpt-include' : User 'null' does not have permission to view the page 'US:_a_repositoryName_EDMI'.
Error rendering macro 'excerpt-include' : User 'null' does not have permission to view the page 'US:_a_modelName_EDMI'.
Error rendering macro 'excerpt-include' : User 'null' does not have permission to view the page 'US:_a_openMode'.
Error rendering macro 'excerpt-include' : User 'null' does not have permission to view the page 'US:_a_edmiInvocationId'.
Return Value
Error rendering macro 'excerpt-include' : User 'null' does not have permission to view the page 'US:_r_EDMInterface'.
Options
Example
EdmiError rstat; SdaiServerContext myLocalContext; SdaiModel modId; SdaiInteger index, nHits; SdaiInstance johnnysId; /* Define Remote Server Context */ rstat = edmiDefineServerContext("MyLocalContext", NULL, NULL, NULL, "LOCAL_CONTEXT", NULL, NULL, NULL, NULL, NULL, NULL, NULL, &myLocalContext); /* Get the modelId of MyModel */ rstat = edmiRemoteGetModelBN(myLocalContext, "DataRepository", "MyModel", &modId, NULL); /* Find Johnnys Id (Unique PID = 4572314) */ rstat = edmiRemoteFindInstancesBN(myLocalContext, modId, "Person", "PID = 4572314", sizeof(SdaiInstance), &index, &nHits, &johnnysId, NULL); /* If Johnny has a cellular phone, then confiscate it */ { SdaiString _attrName = "CELLULAR"; SdaiBoolean *_isSet; SdaiAccessMode _openMode; rstat = edmiRemoteTestAttrsBN(myLocalContext, johnnysId, 0, 1, &_attrName, &_isSet, NULL); if (*_isSet) { /* Get current open mode for MyMoodel */ rstat = edmiRemoteGetOpenModeBN(myLocalContext, "MyRepository", "MyModel", &_openMode, NULL); if (_openMode != sdaiRW) { /* Set write access to the model */ rstat = edmiRemoteChangeOpenMode(myLocalContext, modId, sdaiRW, NULL); } /* Confiscate the cellular */ rstat = edmiStartModelWriteTransaction(modId); rstat = edmiRemoteUnsetAttrsBN(myLocalContext, johnnysId, 1, &_attrName, NULL); rstat = edmiCommitAllTransactions(); /* Reset the initial open mode on the model */ if (_openMode != sdaiRW) { rstat = edmiRemoteChangeOpenModeBN(myLocalContext, "MyRepository", "MyModel", _openMode, NULL); } } }
See also
Filter by label
There are no items with the selected labels at this time.