SEDRIS Reference Manual
APPENDIX A - LEVEL 0 READ and WRITE API
Functions
SE RemoveComponentRelationship
extern SE_Status_Code
SE_RemoveComponentRelationship
(
SE_Object aggregate_object, (notes)
SE_Object component_object, (notes)
SE_Object link_object (notes)
);

Definition

Breaks the relationship between aggregate_object and component_object (and link_object, if given). Does notremove any of the objects involved from the transmittal (see SE_RemoveFromTransmittal()).

The transmittal whose object is to be edited must be explicitly opened in UPDATE mode for this operation to succeed.

Note that the relationship being removed may be 1-way or 2-way. If it is 2-way, both connections are removed, unless the component is unresolved.


Returns

SE_STAT_CODE_SUCCESS and the specified relationship is removed, if valid parameters were passed in and all operations succeeded.
SE_STAT_CODE_INVALID_OR_NULL_OBJECT and no changes are made, if
  1. aggregate_object is not a valid, saved object belonging to a valid DRM class,
  2. component_object is not a valid, saved object belonging to a valid DRM class, or
  3. link_object is provided, but is not a valid, saved object belonging to a valid DRM class.
SE_STAT_CODE_UNRESOLVED_START_OBJECT and no changes are made, if aggregate_object is unresolved, or link_object is provided but unresolved.
SE_STAT_CODE_UNRESOLVED_OBJECT and no changes are made, if the DRM defines the relationship as bidirectional, but component_object is unresolved, so the relationship from component_object to aggregate_object cannot be removed.
SE_STAT_CODE_INVALID_ACCESS_MODE and no changes are made, if
  1. aggregate_object is in a transmittal that not opened for update,
  2. link_object is provided, but is in a transmittal that is not open for update, or
  3. component_object is resolved and has a relationship back to aggregate_object, but is in a transmittal that is not open in open for update.
SE_STAT_CODE_FAILURE and no changes are made, if
  1. aggregate_object and component_object are not related by a component relationship,
  2. link_object is provided but is not the link object for the relationship, or
  3. the API implementation specified does not provide this function in its shared library, and dynamic binding is specified at compile time.


Parameters Notes


aggregate_object

 object whose relationship to one of its components
    is being broken.

component_object

 object whose relationship to one of its aggregators
    (1-way or 2-way) is being broken

link_object

 if specified, link object for the component
    relationship being removed.


Prev: SE_RemoveAssociateRelationship. Next: SE_RemoveFromTransmittal. Up:Index.

Last updated: May 15, 2003 Copyright © 2003 SEDRIS™