CommsDat::CMDBRecordLink Class Reference

class CommsDat::CMDBRecordLink : public CommsDat::CMDBRecordLinkBase

This container expresses a 'soft-link' to a record in another table.

The value of a CMDBRecordLink field as stored in the database is the ElementId (
) of the linked record.

The linked record itself can be viewed via the iLinkedRecord member and its accessors

If a record is loaded then the iLinkedRecord must be created explicitly by the client - either on construction, or by use of the CreateLinkL or SetLinkL functions. Often the linked record is not required by a caller. So creating it automatically would just waste memory

However in the case of an explicit load of a LinkedRecord field the ILinkedRecord is created.

When instantiating iLinkedRecord directly take care to match the object's type to the Type ID that will be found at the linking element. It is better to use the CreateLinkL or SetLinkL functions to ensure type safety

Calling MMetaDatabase functions on a CMDRecordLink field directly will perform the operation on the field and also the linked record if it is present

Public Member Functions
CMDBRecordLink()
CMDBRecordLink(TMDBElementId)
CMDBRecordLink(TMDBElementId, RECORD_TYPE *)
voidSetL(const TMDBElementId)
operator RECORD_TYPE *()
CMDBRecordLink &operator=(const TMDBElementId)
Inherited Functions
CBase::CBase()
CBase::Delete(CBase *)
CBase::Extension_(TUint,TAny *&,TAny *)
CBase::operator new(TUint)
CBase::operator new(TUint,TAny *)
CBase::operator new(TUint,TLeave)
CBase::operator new(TUint,TLeave,TUint)
CBase::operator new(TUint,TUint)
CBase::~CBase()
CommsDat::CMDBElement::Attributes()const
CommsDat::CMDBElement::CMDBElement()
CommsDat::CMDBElement::CMDBElement(TMDBElementId)
CommsDat::CMDBElement::ClearAttributes(TMDBAttributeFlags)
CommsDat::CMDBElement::Data()
CommsDat::CMDBElement::ElementId()const
CommsDat::CMDBElement::IsNull()const
CommsDat::CMDBElement::IsSetAttribute(TMDBAttributeFlags)const
CommsDat::CMDBElement::RecordId()const
CommsDat::CMDBElement::SetAttributes(TMDBAttributeFlags)
CommsDat::CMDBElement::SetElementId(TMDBElementId)
CommsDat::CMDBElement::SetRecordId(TInt)
CommsDat::CMDBElement::SetTypeId(TMDBElementId)
CommsDat::CMDBElement::TableId()const
CommsDat::CMDBElement::TypeId()const
CommsDat::CMDBElement::~CMDBElement()
CommsDat::CMDBNumFieldBase::CMDBNumFieldBase()
CommsDat::CMDBNumFieldBase::CMDBNumFieldBase(TMDBElementId)
CommsDat::CMDBNumFieldBase::GetL()
CommsDat::CMDBNumFieldBase::SetMaxLengthL(TInt)
CommsDat::CMDBNumFieldBase::operator=(const TInt)
CommsDat::CMDBRecordLinkBase::CMDBRecordLinkBase()
CommsDat::CMDBRecordLinkBase::CMDBRecordLinkBase(TMDBElementId)
CommsDat::CMDBRecordLinkBase::CMDBRecordLinkBase(TMDBElementId,CMDBElement *)
CommsDat::CMDBRecordLinkBase::operator TMDBElementId()
CommsDat::CMDBRecordLinkBase::~CMDBRecordLinkBase()
Inherited Attributes
CommsDat::CMDBElement::iElementId
CommsDat::CMDBElement::iValue
CommsDat::CMDBRecordLinkBase::iLinkedRecord

Constructor & Destructor Documentation

CMDBRecordLink()

CMDBRecordLink()[inline]

Constructor/Destructor

CMDBRecordLink(TMDBElementId)

CMDBRecordLink(TMDBElementIdaLinkingFieldId)[inline]

Constructor

Parameters

TMDBElementId aLinkingFieldId

CMDBRecordLink(TMDBElementId, RECORD_TYPE *)

CMDBRecordLink(TMDBElementIdaLinkingFieldId,
RECORD_TYPE *aLinkedRecord
)[inline]

Constructor

Parameters

TMDBElementId aLinkingFieldId
RECORD_TYPE * aLinkedRecord

Member Functions Documentation

SetL(const TMDBElementId)

voidSetL(const TMDBElementIdaValue)[inline]

Set the field value (this will be validated on StoreL)

Parameters

const TMDBElementId aValue

operator RECORD_TYPE *()

operator RECORD_TYPE *()[inline]

conversion operator for linked record of this type

operator=(const TMDBElementId)

CMDBRecordLink &operator=(const TMDBElementIdaValue)[inline]

Assignment operator for field value which sets the id of the element list

Parameters

const TMDBElementId aValue