Getting Properties of Objects - 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

Getting Properties of Objects

This section shows example code to get properties of objects. The example code uses:

CMetaObject::GetPropertyValue

/////////////////////////////////////////////////////////////////////
// GetAutoProp function
//
// Read Auto Object and Get Auto Properties.
/////////////////////////////////////////////////////////////////////
HRESULT GetAutoProp()
{
	CMetaObject	obj;
	CMetaProperty PropObj;
	String		CarID;
	unsigned char	CarIDBuf[4];
	int			Bufsz = 4;
	short		Price;
	String		DesignDate;
	float		FuelTank;
	double		Height;
	int			Weight;
	String		VehicleType;
	String		Review;
	HRESULT		result = S_OK;
 
	// Read by ClassGUID and Name
	obj.SetClassGUID(CLSGUID_Auto);
	obj.SetObjectName(_T("Yearling"));
	if (SUCCEEDED(result = obj.ReadObject()))
	{
		if (SUCCEEDED(result = 
			obj.GetPropertyValue(PID_AUTO_CARID, PropObj)))
		{
				result = PropObj.GetBinaryAsString(CarID);
				result = PropObj.GetBinary((void*)CarIDBuf, Bufsz);
		}
	}
	if (SUCCEEDED(result))
	{
		if (SUCCEEDED(result = 
			obj.GetPropertyValue(PID_AUTO_BASEPRICE, PropObj)))
				result = PropObj.GetShort(Price);
	}
	if (SUCCEEDED(result))
	{
		if (SUCCEEDED(result = 
			obj.GetPropertyValue(PID_AUTO_DESIGNDATE, PropObj)))
				result = PropObj.GetString(DesignDate);
	}
	if (SUCCEEDED(result))
	{
		if (SUCCEEDED(result = 
			obj.GetPropertyValue(PID_AUTO_FUELTANK, PropObj)))
				result = PropObj.GetFloat(FuelTank);
	}
	if (SUCCEEDED(result))
	{
		if (SUCCEEDED(result = 
			obj.GetPropertyValue(PID_AUTO_HEIGHT, PropObj)))
				result = PropObj.GetDouble(Height);
	}
	if (SUCCEEDED(result))
	{
		if (SUCCEEDED(result = 
			obj.GetPropertyValue(PID_AUTO_WEIGHT, PropObj)))
				result = PropObj.GetInt(Weight);
	}
	if (SUCCEEDED(result))
	{
		if (SUCCEEDED(result = 
			obj.GetPropertyValue(PID_AUTO_VEHICLETYPE, PropObj)))
				result = PropObj.GetString(VehicleType);
	}
	if (SUCCEEDED(result))
	{
		if (SUCCEEDED(result = 
			obj.GetPropertyValue(PID_AUTO_REVIEW, PropObj)))
				result = PropObj.GetString(Review);
	}
	return(result);
}