IRepositoryObjectVersion::FreezeVersion

See Also

Disallows further modification of the (non-annotational) property values or origin collections of the current object version.

HRESULT FreezeVersion(void);

Return Value

S_OK

The method completed successfully.

Error

Values

This method failed to complete successfully.

Remarks

After you freeze an object version, you cannot change its non-annotational property values. However, you can change the value of any of its annotational properties.

After you freeze an object, you cannot enlarge or shrink any of its origin collections. You cannot pin, unpin, rename or resequence any of the items in any of its origin collections. Furthermore, you cannot change any of the individual versioned relationships in any of the origin collections. That is, you cannot enlarge an item's set of target object versions; pin a target object version, and you cannot unpin the pinned target object version.

If you call this method for an item currently checked out to any workspace (including the workspace in which you are working), it returns an error.

If the to-be-frozen object version includes any non-null origin collection whose corresponding collection type has the COLLECTION_REQUIRESFREEZE flag set, and that non-null collection includes an item whose TargetVersions collection contains a non-frozen object version, the method fails.