GetDormantDIMDestCollection - Teradata Meta Data Services

Teradata Meta Data Services Programmer Guide

Product
Teradata Meta Data Services
Release Number
15.00
Language
English (United States)
Last Update
2018-09-28
Product Category
Teradata Tools and Utilities

GetDormantDIMDestCollection

Purpose

GetDormantDIMDestCollection returns the collection of dormant objects of the destination class associated with this CMetaObject for the specified relationship that matches the selection criteria.

Description

The calling object can be dormant or active.

The property id, property value and comparison operator on which to perform the search can all be specified. The search is performed on the list of objects in the collection. If multiple properties are specified for the search, the logical operator between the property searches must be specified. The name of the property upon which to sort the returned list can also be specified.

Requirements

You must be initialized as an MDS Administrator (superuser) to use this function.

The class ID (internal or globally unique) must be set.

The propFilter list may contain zero or more CMetaFilterInfo objects.

The PropertyID (SetPropertyID()) or PropertyName (SetName()) of the value attribute in each CMetaFilterInfo object must contain a valid Relative Property Id or name of a property description in the class.

The value attribute in each CMetaFilterInfo object must also be set to the value on which the search will be made. This value must be of the same type as the property description. For example, if the search is to be made on Relative Property ID = 1 and Relative Property ID 1 is defined as an integer, Value must be set to an integer (SetInt()). If relative Property ID 1 is a string, Value must be set to a string (SetString()).

The default ComparisonOperator in each CMetaFilterInfo object is EQUAL and the default LogicalOperator is META_AND.

If the propFilter list contains zero objects, the function will perform a search by strObjName only. If strObjName is also NULL, the API will return all the objects in the collection.

If the propFilter list contains objects and strObjName is set, the logical operator between the properties and the name will the “AND”. To perform a search of a name “OR” a property, set strObjName to NULL and add a CMetaFilterInfo object to the propFilter list for a name search.

Syntax

HRESULTGetDormantDIMDestCollection(
vector<CMetaObject>& objectList,
const MetaFilterInfoVector& propFilter,
const MetaObjectKeyVector& sortList,
const GUID& gRelID,
const OBJECTID_t lRelID = NULLLOID,
LPCTSTR strObjName = NULL,
const bool withLock = false,
const OBJECTID_t returnClass = NULLLOID,
const bool allClasses = false,
const bool skipValidation = false);
 

Argument

In/Out

Description

objectList

In/Out

Reference to the list of CMetaObjects that will hold the collection returned. The list is cleared before adding the return collection

propFilter

In

List of FilterInfo objects containing the property id and value to use to perform the search

sortList

In

List of property identifiers (relative property id or name) to sort the collection by. The return list will be returned in ascending order and the sort will not be case specific

gRelID

In

Relationship GUID

IRelID

In

Relationship internal ID

StrObjName

In
(Optional)

Search string for names of objects in the class to be returned.

WithLock

In

WithLock=true keeps the class table locked for WRITE. Use within an explicit transaction. Set WithLock to true when one of the class objects will subsequently be updated within the transaction. Prevents deadlocks caused by Teradata promotional locks.

returnClass

In

If the allClasses parameter is = true, the returnClass parameter is ignored. If the allClasses parameter = false:

  • If returnClass = 0, the destination class defined in the relationship is returned.
  • If the destination class in the relationship is a superclass, return class defines the class type of object to return (the superclass or one of its subclasses)
  • If the destination class in the relationship is not a superclass and return class specifies a classid other than the destination class, an error will be returned

    allClasses

    In

    If the destination class in the relationship is a superclass, setting allClasses = true will return all class types (superclass and subclasses).

    If allClasses = false, the destination class returned is determined by the returnClass parameter.

    If allClasses = true and the destination class in the relationship is not a superclass, only objects of the destination class defined in the relationship are returned.

    If allClasses = true, the return list is sorted first by class and then by the sort properties specified.

    SkipValidation

    In

    The function validates that the id of the object is an object in the origin class (or subclass) of the relationship. If returnClass is specified, the function will validate that the returnClass is the destination class (or subclass) of the relationship. If skipValidation is true, this validation is not performed. If the validation is not performed and the validation would have returned an error, the function will return zero objects in the ObjectList.