Deletes the model in a remote EDMdatabase.
The model is uniquely identified in the remote EDMdatabase by its name and the name of the repository in which it is contained. The model must be closed before it may be deleted. Only the owner of a model may delete it.
A Dictionary model is a compiled Express Schema and may not be deleted from an EDMdatabase if there exists one or more data models that use that particular schema as its underlying Express Schema. Neither may it be deleted if there exist Express-X dictionary models that use it as its source or target model. However, any belonging EDMquerySchema, EDMruleSchema and STEP Identifier model will be deleted.
Related functions: edmiRemoteCreateModel.
Header:
#include "sdai.h"
Prototype:
EdmiError edmiRemoteDeleteModel(SdaiServerContext serverContextId,
SdaiString repositoryName,
SdaiString modelName,
SdaiInvocationId *edmiInvocationId);
Arguments:
serverContextId |
Context identification, from edmiDefineServerContext |
repositoryName |
The name of the remote data repository that contains the model to be deleted. Repository names are case sensitive |
modelName |
The name of the model to delete. Model names are case sensitive. |
edmiInvocationId |
Currently not used. |
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;
SdaiServerContext myContext;
/* Create Server Context */
rstat = edmiDefineServerContext("MyContext",
"Johnny", "Supervisor", "cf37ftr",
"TCP", "9090", "MyServerHost",
NULL, NULL, NULL, NULL, NULL, &myContext);
/* Delete MyModel */
rstat = edmiRemoteDeleteModel(myContext, "DataRepository",
"MyModel", NULL);
. . .