Product
Inheritance hierarchy
	| Hierarchy type | 
	None | 
	| Is abstract | 
	False | 
Relationships
The Product entity is part of the following relationships 
	| Related Entity | 
	Full description | 
	| Category | 
	Product.Category - Category.Products (m:1) | 
	| Supplier | 
	Product.Suppliers - Supplier.Products (m:1) | 
	| TCTester | 
	TCTester.Product - Product.TCTester (m:1) | 
	| TestGroup.Order | 
	Product.Orders - TestGroup.Order.Products (m:n) (via TestGroup.OrderDetails) | 
	| TestGroup.OrderDetails | 
	TestGroup.OrderDetails.Products - Product.OrderDetails (m:1) | 
Fields
The following fields are defined in the Product entity 
	| Name | 
	Type | 
	Is PK | 
	Is FK | 
	Optional | 
	Read-only | 
	Max. length | 
	Precision | 
	Scale | 
	| CategoryId | 
	int (System.Int32) | 
	 | 
	Yes | 
	Yes | 
	 | 
	0 | 
	0 | 
	0 | 
	| Discontinued | 
	bool (System.Boolean) | 
	 | 
	 | 
	 | 
	 | 
	0 | 
	0 | 
	0 | 
	| PreferredProduct | 
	bool (System.Boolean) | 
	 | 
	 | 
	Yes | 
	 | 
	0 | 
	0 | 
	0 | 
	| ProductId | 
	int (System.Int32) | 
	Yes | 
	 | 
	 | 
	Yes | 
	0 | 
	0 | 
	0 | 
	| ProductName | 
	string (System.String) | 
	 | 
	 | 
	 | 
	 | 
	40 | 
	0 | 
	0 | 
	| QuantityPerUnit | 
	string (System.String) | 
	 | 
	 | 
	Yes | 
	 | 
	20 | 
	0 | 
	0 | 
	| ReorderLevel | 
	short (System.Int16) | 
	 | 
	 | 
	Yes | 
	 | 
	0 | 
	0 | 
	0 | 
	| SupplierId | 
	int (System.Int32) | 
	 | 
	Yes | 
	Yes | 
	 | 
	0 | 
	0 | 
	0 | 
	| UnitPrice | 
	decimal (System.Decimal) | 
	 | 
	 | 
	Yes | 
	 | 
	0 | 
	19 | 
	4 | 
	| UnitsInStock | 
	short (System.Int16) | 
	 | 
	 | 
	Yes | 
	 | 
	0 | 
	0 | 
	0 | 
	| UnitsOnOrder | 
	short (System.Int16) | 
	 | 
	 | 
	Yes | 
	 | 
	0 | 
	0 | 
	0 | 
Unique Constraints
None.
None.
Mappings
	| Aspect | 
	Value | 
	| Type of target | 
	Table | 
	| Actions allowed | 
	Create / Retrieve / Update / Delete | 
	| Entity Field | 
	Target field | 
	Nullable | 
	Type | 
	Length | 
	Precision | 
	Scale | 
	Sequence | 
	Type converter | 
	| CategoryId | 
	CategoryID | 
	Yes | 
	int | 
	0 | 
	10 | 
	0 | 
	 | 
	 | 
	| Discontinued | 
	Discontinued | 
	 | 
	bit | 
	0 | 
	0 | 
	0 | 
	 | 
	 | 
	| PreferredProduct | 
	PreferredProduct | 
	Yes | 
	bit | 
	0 | 
	0 | 
	0 | 
	 | 
	 | 
	| ProductId | 
	ProductID | 
	 | 
	int | 
	0 | 
	10 | 
	0 | 
	SCOPE_IDENTITY() | 
	 | 
	| ProductName | 
	ProductName | 
	 | 
	nvarchar | 
	40 | 
	0 | 
	0 | 
	 | 
	 | 
	| QuantityPerUnit | 
	QuantityPerUnit | 
	Yes | 
	nvarchar | 
	20 | 
	0 | 
	0 | 
	 | 
	 | 
	| ReorderLevel | 
	ReorderLevel | 
	Yes | 
	smallint | 
	0 | 
	5 | 
	0 | 
	 | 
	 | 
	| SupplierId | 
	SupplierID | 
	Yes | 
	int | 
	0 | 
	10 | 
	0 | 
	 | 
	 | 
	| UnitPrice | 
	UnitPrice | 
	Yes | 
	money | 
	0 | 
	19 | 
	4 | 
	 | 
	 | 
	| UnitsInStock | 
	UnitsInStock | 
	Yes | 
	smallint | 
	0 | 
	5 | 
	0 | 
	 | 
	 | 
	| UnitsOnOrder | 
	UnitsOnOrder | 
	Yes | 
	smallint | 
	0 | 
	5 | 
	0 | 
	 | 
	 | 
Setting values
Product (Entity)
	| Setting name | 
	Value | 
	| Entity base class name | 
	CommonEntityBase | 
CategoryId (NormalField)
	| Setting name | 
	Value | 
	| Generate as nullable type | 
	True | 
	| Field property is public | 
	True | 
Discontinued (NormalField)
	| Setting name | 
	Value | 
	| Generate as nullable type | 
	True | 
	| Field property is public | 
	True | 
PreferredProduct (NormalField)
	| Setting name | 
	Value | 
	| Generate as nullable type | 
	True | 
	| Field property is public | 
	True | 
ProductId (NormalField)
	| Setting name | 
	Value | 
	| Generate as nullable type | 
	True | 
	| Field property is public | 
	True | 
ProductName (NormalField)
	| Setting name | 
	Value | 
	| Generate as nullable type | 
	True | 
	| Field property is public | 
	True | 
QuantityPerUnit (NormalField)
	| Setting name | 
	Value | 
	| Generate as nullable type | 
	True | 
	| Field property is public | 
	True | 
ReorderLevel (NormalField)
	| Setting name | 
	Value | 
	| Generate as nullable type | 
	True | 
	| Field property is public | 
	True | 
SupplierId (NormalField)
	| Setting name | 
	Value | 
	| Generate as nullable type | 
	True | 
	| Field property is public | 
	True | 
UnitPrice (NormalField)
	| Setting name | 
	Value | 
	| Generate as nullable type | 
	True | 
	| Field property is public | 
	True | 
UnitsInStock (NormalField)
	| Setting name | 
	Value | 
	| Generate as nullable type | 
	True | 
	| Field property is public | 
	True | 
UnitsOnOrder (NormalField)
	| Setting name | 
	Value | 
	| Generate as nullable type | 
	True | 
	| Field property is public | 
	True | 
Category (NavigatorSingleValue)
	| Setting name | 
	Value | 
	| Navigator property is public | 
	True | 
OrderDetails (NavigatorCollection)
	| Setting name | 
	Value | 
	| Navigator property is public | 
	True | 
Orders (NavigatorCollection)
	| Setting name | 
	Value | 
	| Navigator property is public | 
	True | 
Suppliers (NavigatorSingleValue)
	| Setting name | 
	Value | 
	| Navigator property is public | 
	True | 
TCTester (NavigatorCollection)
	| Setting name | 
	Value | 
	| Navigator property is public | 
	True | 
Attribute definitions per element
ProductName (NormalField)
QuantityPerUnit (NormalField)
Category (NavigatorSingleValue)
Suppliers (NavigatorSingleValue)
Additional interface definitions per element
None.
Additional namespace definitions per element
None.