xpxCopyAggrToNewAggr

FUNCTION xpxCopyAggrToNewAggr (options                  : INTEGER;  
                               sourceAggrId             : AGGREGATE OF GENERIC;
                               aggrOrInstanceId         : GENERIC;
                               attrIdOrAttrIntsance     : GENERIC;
                               aggrIndex                : INTEGER;
                               VAR newAggrId            : AGGREGATE OF GENERIC) 
                               status                   : INTEGER;

The xpxCopyAggrToNewAggr function creates a new aggregate and copies the content of the source aggregate into the new created aggregate.

Arguments


TypeNameComment
INTEGERoptionscomment
AGGREGATE OF GENERICsourceAggrId 
GENERICaggrOrInstanceId 
GENERICattrIdOrAttrIntsance 
INTEGERaggrIndex 
AGGREGATE OF GENERICnewAggrId 

Return Value


Error rendering macro 'excerpt-include' : User 'null' does not have permission to view the page 'US:_r_XPX_Return_Value'.

Options


OptionComment
xpxASSIGN_TO_ATTRIBUTEThe new aggregate will be assigned to the attribute specified by the "attrIdOrAttrName" argument of the instance specified by the "aggrOrInstanceId" argument. The "attrIdOrAttrName" argument can be specified as an attribute name or as an attrId (InstanceId of the actual attribute). The arguments "aggrIndex" and "newAggrId" are optional for this options value.
xpxASSIGN_TO_AGGREGATE_BY_INDEXThe new created aggregate will be inserted in the (parent) aggregate specified in the "aggrOrInstanceId" argumen at the position (index) specified by the "aggrIndex" argument. This operation is legal for parent aggregates of type ARRAY and LIST. The arguments "attrIdOrAttrName", "aggrIndex" and "newAggrId" are optional for this options value.
xpxADD_TO_AGGREGATE

The new created aggregate will be added to the (parent) aggregate specified in the "aggrOrInstanceId" argument. The parent aggregate must be SET, BAG or LIST. Hence, this option value is illegal when the "aggrOrInstanceId" aggregate is an ARRAY. When the parent aggregate is LIST, the actual operation will be APPEND.
The arguments "attrIdOrAttrName", "aggrIndex" and "newAggrId" are optional for this options value.

xpxINSERT_BEFORE_LIST_ELEMENTThe new created aggregate will be inserted in the (parent) aggregate specified in the "aggrOrInstanceId" argument at the position before the element specified by the "aggrIndex" argument. This operation is legal only for parent aggregates of type LIST. The arguments "attrIdOrAttrName", and "newAggrId" are optional for this options value.
xpxNEW_SCRATCH_AGGREGATEThe new aggregate will be a scratch aggregate (located in the scratch model). The InstanceId of the new created aggregate will be returned in the  "newAggrId" argument. The arguments "aggrOrInstanceId", "attrIdOrAttrName" and  "aggrIndex" are optional for this options value.
xpxASSIGN_VOLATILE_AGGR_TO_GLOBAL_VARIABLEThe new aggregate will be a volatile aggregate located in the "heap of the EDMexpressVM", i.e., will not be "out of scope" before the actual EDMexpressVM process is terminated. The InstanceId of the new created aggregate will be returned in the  "newAggrId" argument. The arguments "aggrOrInstanceId", "attrIdOrAttrName" and  "aggrIndex" are optional for this options value.

 

Example


<Missing Example>

 

See also

Filter by label

There are no items with the selected labels at this time.