Table of Contents

Applications.Service.ServiceAgreementMaterials Entity

Namespace: Applications.Service

Contains the free materials, included in the service agreement. Entity: Srv_Service_Agreement_Materials

Default Visualization

Default Display Text Format:
{LineNo}. {ServiceAgreement.DocumentNo} {ServiceAgreement.DocumentType.TypeName:T}
Default Search Members:
ServiceAgreement.DocumentNo
Category: Definitions
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:
Applications.Service.ServiceAgreements
Aggregate Root:
Applications.Service.ServiceAgreements

Attributes

Name Type Description
CurrentBalanceBase Quantity The current balance of the product in the selected store and enterprise company. If lot, serial number or product variant are specified the quantity is calculated accordingly.
DisplayText string Uses the repository DisplayTextFormat to build the display text from the attributes and references of current object.
EndDate datetime nullable End date to which the agreedment for the material is valid. For the agreement period, the material could be used free of charge in service activities. Filter(ge;le)
Id guid
LineNo int32 Consecutive line number, unique within the document. Usually is increasing in steps of 10, like in 10, 20, 30, etc. Required
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.
Quantity Quantity (18, 3) Quantity of the agreed material. Unit: QuantityUnit Required
QuantityBase Quantity (18, 3) The equivalence of Quantity in the base measurement category of the product. Unit: Product.BaseMeasurementCategory.BaseUnit Required ReadOnly
StandardQuantityBase Quantity (18, 3) The theoretical quantity in base measurement unit according to the current measurement dimensions for the product. Used to measure the execution. Unit: Product.BaseMeasurementCategory.BaseUnit Required ReadOnly Introduced in version 18.2
StartDate datetime nullable Start date from which the agreedment for the material is valid. For the agreement period, the material could be used free of charge in service activities. Filter(ge;le)

References

Name Type Description
Document ServiceAgreements The to which this ServiceAgreementMaterial belongs. Required Filter(multi eq)
Product Products Paid or agreed in advance material that won't be invoiced after service activities. Required Filter(multi eq)
QuantityUnit MeasurementUnits The measurement unit of Quantity. Required Filter(multi eq)
ServiceAgreement ServiceAgreements The to which this ServiceAgreementMaterial belongs. Required Filter(multi eq) Owner

Attribute Details

CurrentBalanceBase

The current balance of the product in the selected store and enterprise company. If lot, serial number or product variant are specified the quantity is calculated accordingly.

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

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

EndDate

End date to which the agreedment for the material is valid. For the agreement period, the material could be used free of charge in service activities. Filter(ge;le)

Type: datetime nullable
Category: System
Supported Filters: GreaterThanOrLessThan
Supports Order By: False
Show in UI: HiddenByDefault

Id

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

LineNo

Consecutive line number, unique within the document. Usually is increasing in steps of 10, like in 10, 20, 30, etc. Required

Type: int32
Category: System
Supported Filters: NotFilterable
Supports Order By: False
Show in UI: ShownByDefault

Back-End Default Expression:
( obj.ServiceAgreement.Materials.Select( c => c.LineNo).DefaultIfEmpty( 0).Max( ) + 10)

Front-End Recalc Expressions:
( obj.ServiceAgreement.Materials.Select( c => c.LineNo).DefaultIfEmpty( 0).Max( ) + 10)

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

Quantity

Quantity of the agreed material. Unit: QuantityUnit Required

Type: Quantity (18, 3)
Category: System
Supported Filters: NotFilterable
Supports Order By: False
Show in UI: ShownByDefault

QuantityBase

The equivalence of Quantity in the base measurement category of the product. Unit: Product.BaseMeasurementCategory.BaseUnit Required ReadOnly

Type: Quantity (18, 3)
Category: System
Supported Filters: NotFilterable
Supports Order By: False
Show in UI: HiddenByDefault

Back-End Default Expression:
IIF( ( ( ( obj.Quantity == null) OrElse ( obj.QuantityUnit == null)) OrElse ( obj.Product == null)), obj.QuantityBase, obj.Quantity.ConvertTo( obj.Product.BaseUnit, obj.Product))

Front-End Recalc Expressions:
IIF( ( ( ( obj.Quantity == null) OrElse ( obj.QuantityUnit == null)) OrElse ( obj.Product == null)), obj.QuantityBase, obj.Quantity.ConvertTo( obj.Product.BaseUnit, obj.Product))

StandardQuantityBase

The theoretical quantity in base measurement unit according to the current measurement dimensions for the product. Used to measure the execution. Unit: Product.BaseMeasurementCategory.BaseUnit Required ReadOnly Introduced in version 18.2

Type: Quantity (18, 3)
Category: System
Supported Filters: NotFilterable
Supports Order By: False
Show in UI: HiddenByDefault

Back-End Default Expression:
IIF( ( ( ( obj.Quantity == null) OrElse ( obj.QuantityUnit == null)) OrElse ( obj.Product == null)), obj.StandardQuantityBase, obj.Quantity.ConvertTo( obj.Product.BaseUnit, obj.Product))

Front-End Recalc Expressions:
IIF( ( ( ( obj.Quantity == null) OrElse ( obj.QuantityUnit == null)) OrElse ( obj.Product == null)), obj.StandardQuantityBase, obj.Quantity.ConvertTo( obj.Product.BaseUnit, obj.Product))

StartDate

Start date from which the agreedment for the material is valid. For the agreement period, the material could be used free of charge in service activities. Filter(ge;le)

Type: datetime nullable
Category: System
Supported Filters: GreaterThanOrLessThan
Supports Order By: False
Show in UI: HiddenByDefault

Reference Details

Document

The to which this ServiceAgreementMaterial belongs. Required Filter(multi eq)

Type: ServiceAgreements
Indexed: True
Category: System
Supported Filters: Equals, EqualsIn
Show in UI: ShownByDefault

Product

Paid or agreed in advance material that won't be invoiced after service activities. Required Filter(multi eq)

Type: Products
Category: System
Supported Filters: Equals, EqualsIn
Show in UI: ShownByDefault

QuantityUnit

The measurement unit of Quantity. Required Filter(multi eq)

Type: MeasurementUnits
Category: System
Supported Filters: Equals, EqualsIn
Show in UI: ShownByDefault

Front-End Recalc Expressions:
obj.Product.MeasurementUnit.IfNullThen( obj.QuantityUnit)

ServiceAgreement

The to which this ServiceAgreementMaterial belongs. Required Filter(multi eq) Owner

Type: ServiceAgreements
Indexed: True
Category: System
Supported Filters: Equals, EqualsIn
Filterable Reference: True
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

None

Front-End Business Rules

API

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

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