Table of Contents

General.Products.ProductVariants Entity

Namespace: General.Products

Contains definitions of different variants of a product. The variants are differentiated by color, size and style. Entity: Gen_Product_Variants

Default Visualization

Default Display Text Format:
{Name:T}
Default Search Members:
Code; Name
Code Data Member:
Code
Name Data Member:
Name
Category: Settings
Show in UI: ShownByDefault

Track Changes

Min level: 0 - Do not track changes
Max level: 4 - Track object attribute and blob changes

Aggregate

An aggregate is a cluster of domain objects that can be treated as a single unit.

Aggregate Parent:
General.Products.Products
Aggregate Root:
General.Products.Products

Attributes

Name Type Description
BarCode string (16) nullable When specified, it contains a bar code which uniquely identifies the product variant. Filter(eq;like) ORD
Code string (16) The code of the variant. The code is unique within the Product. It is the concatenation of the codes of the color, size and style. Required Filter(eq;like) ReadOnly
DisplayText string Uses the repository DisplayTextFormat to build the display text from the attributes and references of current object.
Id guid
Name MultilanguageString (512) nullable Product variant name. It is the concatenation of the names of the color, size and style. ReadOnly
ObjectVersion int32 The latest version of the extensible data object for the aggregate root for the time the object is loaded from the database. Can be used for optimistic locking.
ShortCode string (32) nullable Short code of the variant, that is unique within the Product. Usually used as a data element in data encoded barcodes (e.g., GS1-128 barcodes). Filter(eq;like) Introduced in version 23.1.1.19

References

Name Type Description
Product Products The product for which this variant is defined. Required Filter(multi eq) Owner
VariantColor VariantColors (nullable) The color of the variant. null means that the variant does not have a specific color. Filter(multi eq)
VariantSize VariantSizes (nullable) The size of the variant. null means that the variant does not have a specific size. Filter(multi eq)
VariantStyle VariantStyles (nullable) The style of the variant. null means that the variant does not have a specific style. Filter(multi eq)

Attribute Details

BarCode

When specified, it contains a bar code which uniquely identifies the product variant. Filter(eq;like) ORD

Type: string (16) nullable
Indexed: True
Category: System
Supported Filters: Equals, Like
Supports Order By: True
Maximum Length: 16
Show in UI: ShownByDefault

Code

The code of the variant. The code is unique within the Product. It is the concatenation of the codes of the color, size and style. Required Filter(eq;like) ReadOnly

Type: string (16)
Category: System
Supported Filters: Equals, Like
Supports Order By: False
Maximum Length: 16
Show in UI: ShownByDefault

DisplayText

Uses the repository DisplayTextFormat to build the display text from the attributes and references of current object.

Type: string
Category: Calculated Attributes
Supported Filters: NotFilterable
Supports Order By: ****
Show in UI: HiddenByDefault

Id

Type: guid
Indexed: True
Category: System
Supported Filters: Equals, EqualsIn
Default Value: NewGuid
Show in UI: CannotBeShown

Name

Product variant name. It is the concatenation of the names of the color, size and style. ReadOnly

Type: MultilanguageString (512) nullable
Category: System
Supported Filters: NotFilterable
Supports Order By: False
Show in UI: ShownByDefault

Back-End Default Expression:
Join( " ", new [] {obj.VariantColor.Name, obj.VariantSize.Name, obj.VariantStyle.Name})

Front-End Recalc Expressions:
Join( " ", new [] {obj.VariantColor.Name, obj.VariantSize.Name, obj.VariantStyle.Name})

ObjectVersion

The latest version of the extensible data object for the aggregate root for the time the object is loaded from the database. Can be used for optimistic locking.

Type: int32
Category: Extensible Data Object
Supported Filters: NotFilterable
Supports Order By: ****
Show in UI: HiddenByDefault

ShortCode

Short code of the variant, that is unique within the Product. Usually used as a data element in data encoded barcodes (e.g., GS1-128 barcodes). Filter(eq;like) Introduced in version 23.1.1.19

Type: string (32) nullable
Category: System
Supported Filters: Equals, Like
Supports Order By: False
Maximum Length: 32
Show in UI: ShownByDefault

Reference Details

Product

The product for which this variant is defined. Required Filter(multi eq) Owner

Type: Products
Indexed: True
Category: System
Supported Filters: Equals, EqualsIn
Filterable Reference: True
Show in UI: ShownByDefault

VariantColor

The color of the variant. null means that the variant does not have a specific color. Filter(multi eq)

Type: VariantColors (nullable)
Category: System
Supported Filters: Equals, EqualsIn
Show in UI: ShownByDefault

VariantSize

The size of the variant. null means that the variant does not have a specific size. Filter(multi eq)

Type: VariantSizes (nullable)
Category: System
Supported Filters: Equals, EqualsIn
Show in UI: ShownByDefault

VariantStyle

The style of the variant. null means that the variant does not have a specific style. Filter(multi eq)

Type: VariantStyles (nullable)
Category: System
Supported Filters: Equals, EqualsIn
Show in UI: ShownByDefault

API Methods

Methods that can be invoked in public APIs.

GetAllowedCustomPropertyValues

Gets the allowed values for the specified custom property for this entity object. If supported the result is ordered by property value. Some property value sources do not support ordering - in that case the result is not ordered.
Return Type: Collection Of CustomPropertyValue
Declaring Type: EntityObject
Domain API Request: GET

Parameters

  • customPropertyCode
    The code of the custom property
    Type: string

  • search
    The search text - searches by value or description. Can contain wildcard character %.
    Type: string
    Optional: True
    Default Value: null

  • exactMatch
    If true the search text should be equal to the property value
    Type: boolean
    Optional: True
    Default Value: False

  • orderByDescription
    If true the result is ordered by Description instead of Value. Note that ordering is not always possible.
    Type: boolean
    Optional: True
    Default Value: False

  • top
    The top clause - default is 10
    Type: int32
    Optional: True
    Default Value: 10

  • skip
    The skip clause - default is 0
    Type: int32
    Optional: True
    Default Value: 0

CreateNotification

Create a notification immediately in a separate transaction, and send a real-time event to the user.
Return Type: void
Declaring Type: EntityObject
Domain API Request: POST

Parameters

  • user
    The user.
    Type: Users

  • notificationClass
    The notification class.
    Type: string

  • subject
    The notification subject.
    Type: string

CreateCopy

Duplicates the object and its child objects belonging to the same aggregate. The duplicated objects are not saved to the data source but remain in the same transaction as the original object.
Return Type: EntityObject
Declaring Type: EntityObject
Domain API Request: POST

Business Rules

Front-End Business Rules

None

API

Domain API Query: https://demodb.my.erp.net/api/domain/odata/General_Products_ProductVariants?$top=10

Domain API Query Builder: https://demodb.my.erp.net/api/domain/querybuilder#General_Products_ProductVariants?$top=10