Versions Compared

Key

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

...

  SYNTAX:
 
xpfConditionalDeepCopyInstance (instanceId      : GENERIC;                                 modelId         : GENERIC;                                 options         : INTEGER;                                 include_exclude : SET OF GENERIC)                                 newInstance     : GENERIC
 
To be completed.
The xpfConditionalDeepCopyInstance

Code Block
languagecpp
themeConfluence
FUNCTION xpfConditionalDeepCopyInstance (instanceId      : GENERIC;
                                         modelId         : GENERIC;  
                                         options         : INTEGER; 
                                         include_exclude : SET OF GENERIC) 
                                         newInstance     : GENERIC
                

This function returns the numeric instanceID that will uniquely identify the created instance (target instance) in the EDMdatabase.
This operation copies an instance graph within one data model or from one data model to another. The source instance graph consists of all instances that are directly or indirectly used by the source instance. The target instance(s) will implicitly be created, hence copy between existing instances cannot be performed by this operation.
Optionally this operation can copy a partial instance graph, one complete or one partial instance.
The data model locating the source instance must be open for read access and the target data model must be open for write access, before this operation can be successfully performed. The argument <instanceId> specifies a numeric instanceID that uniquely identifies the instance to be copied in the EDMdatabase.
The argument <modelId> specifies the numeric modelID that uniquely identifies the data model locating the target instance(s).This target model must be a population of the same schema as the model that locates the <sourceInstanceId>.
The <options> argument specifies the options to be used in the invocation of the xpfConditionalDeepCopyInstance function. The <options> value can be specified as a bitwise OR between the actual options to enable. All option names are defined on the header file sdai.h. See the edmiConditionalDeepCopyInstance function for options description.
The argument <include_exclude> specifies the address of an array of instances or instance types (entities). The content is dependent of the value of the <options> argument. An instanceID = 0 terminates the <exclude_or_include> array.
This function is equivalent to the EDMinterface function edmiConditionalDeepCopyInstance.
See also xpxConditionalDeepCopyInstance.
 
Remarks:

Info

When copying objects (entity instances & aggregate instances)

...

from  one model to another model, the actual objects must be "copied" from the source model into the target model. Copied in this context means that new entity instances/aggregate instances have to be created in the target model and then the "primitive attribute/aggregate values" have to be assigned from the source objects to the new created objects in the target model. Hence, "normal" assignment statements cannot be used for this purpose. An assignment operation will only "copy" the InstanceId of the actual object resulting in "invalid InstanceId in target model".

 

Arguments

...

TypeNameComment
GENERICinstanceIdspecifies a numeric instanceID that uniquely identifies the instance to be copied in the EDMdatabase
GENERICmodelIdspecifies the numeric modelID that uniquely identifies the data model locating the target instance(s).This target model must be a population of the same schema as the model that locates the <sourceInstanceId>.
INTEGERoptions see below
SET OF GENERICinclude_excludespecifies the address of an array of instances or instance types (entities). The content is dependent of the value of the <options> argument. An instanceID = 0 terminates the <exclude_or_include> array

Return Value

...

 

TypeNameComment
GENERICnewInstancenumeric id of the created instance

Options

...

OptionComment
xpxINCLUDE_TYPEScomment
xpxEXCLUDE_TYPES 
xpxEXCLUDE_INSTANCES 
xpxCOPY_SHALLOW 
xpxUSE_MAPPED_INSTANCES 
xpxEXCLUDE_ALL_INSTANCES 

 

Example

...

Code Block
languagecpp
<Missing Example>

 

See also

Filter by label (Content by label)
showLabelsfalse
showSpacefalse
cqllabel = "extension_schema" and parent = "5636522"