Crm.SalesPersons Entity
Namespace: Crm
Sales persons (or representatives) are sellers inside the enterprise company who sell the products to customers. Entity: Crm_Sales_Persons
Default Visualization
Default Display Text Format:
{Person.PartyName:T}
Default Search Members:
Person.PartyName
Name Data Member:
Person.PartyName
Category: Definitions
Show in UI: ShownByDefault
Aggregate
An aggregate is a cluster of domain objects that can be treated as a single unit.
Aggregate Parent:
General.Contacts.Persons
Aggregate Root:
General.Contacts.Persons
Attributes
Name | Type | Description |
---|---|---|
CommissionPercent | decimal (7, 6) nullable | The percentage (0..1) of commission percent. null means that there is no commission percent. |
CommissionPolicyId | guid nullable | Current commission policy for the sales person. null means there is no commission policy. Filter(multi eq) |
ContractEndDate | datetime nullable | The ending date of the contract with the sales person. null when the sales person is still active. Filter(ge;le) |
ContractStartDate | datetime nullable | The starting date of the contract with the sales person. null when it is unknown. Filter(ge;le) |
DisplayText | string | Uses the repository DisplayTextFormat to build the display text from the attributes and references of current object. |
Id | guid | |
IsActive | boolean | Specifies whether the sales person is active and should be included in the list when choosing sales person through drop-downs, lists, etc. Required Default(true) Filter(eq) |
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. |
References
Name | Type | Description |
---|---|---|
EnterpriseCompany | EnterpriseCompanies (nullable) | The Enterprise Company to which this SalesPerson applies, or null if it is for all enterprise companies. Filter(multi eq) |
EnterpriseCompanyLocation | CompanyLocations (nullable) | The enterprise company location, to which the sales person is assigned. The sales person is allowed to sell to other locations, but this is the default location. null means that the sales person is not assigned to any enterprise location. Filter(multi eq) |
Person | Persons | Base personal record. Required Filter(multi eq) Owner |
SalesPersonGroup | SalesPersonGroups | The sales person group to which this sales person is assigned. Required Filter(multi eq) |
Attribute Details
CommissionPercent
The percentage (0..1) of commission percent. null means that there is no commission percent.
Type: decimal (7, 6) nullable
Category: System
Supported Filters: NotFilterable
Supports Order By: False
Show in UI: ShownByDefault
CommissionPolicyId
Current commission policy for the sales person. null means there is no commission policy. Filter(multi eq)
Type: guid nullable
Category: System
Supported Filters: Equals, EqualsIn
Show in UI: CannotBeShown
ContractEndDate
The ending date of the contract with the sales person. null when the sales person is still active. Filter(ge;le)
Type: datetime nullable
Category: System
Supported Filters: GreaterThanOrLessThan
Supports Order By: False
Show in UI: ShownByDefault
ContractStartDate
The starting date of the contract with the sales person. null when it is unknown. Filter(ge;le)
Type: datetime nullable
Category: System
Supported Filters: GreaterThanOrLessThan
Supports Order By: False
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
IsActive
Specifies whether the sales person is active and should be included in the list when choosing sales person through drop-downs, lists, etc. Required
Default(true)
Filter(eq)
Type: boolean
Category: System
Supported Filters: Equals
Supports Order By: False
Default Value: True
Show in UI: ShownByDefault
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
Reference Details
EnterpriseCompany
The Enterprise Company to which this SalesPerson applies, or null if it is for all enterprise companies. Filter(multi eq)
Type: EnterpriseCompanies (nullable)
Category: System
Supported Filters: Equals, EqualsIn
Show in UI: HiddenByDefault
EnterpriseCompanyLocation
The enterprise company location, to which the sales person is assigned. The sales person is allowed to sell to other locations, but this is the default location. null means that the sales person is not assigned to any enterprise location. Filter(multi eq)
Type: CompanyLocations (nullable)
Category: System
Supported Filters: Equals, EqualsIn
Show in UI: ShownByDefault
Person
Base personal record. Required
Filter(multi eq)
Owner
Type: Persons
Indexed: True
Category: System
Supported Filters: Equals, EqualsIn
Filterable Reference: True
Show in UI: ShownByDefault
SalesPersonGroup
The sales person group to which this sales person is assigned. Required
Filter(multi eq)
Type: SalesPersonGroups
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: stringsearch
The search text - searches by value or description. Can contain wildcard character %.
Type: string
Optional: True
Default Value: nullexactMatch
If true the search text should be equal to the property value
Type: boolean
Optional: True
Default Value: FalseorderByDescription
If true the result is ordered by Description instead of Value. Note that ordering is not always possible.
Type: boolean
Optional: True
Default Value: Falsetop
The top clause - default is 10
Type: int32
Optional: True
Default Value: 10skip
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: UsersnotificationClass
The notification class.
Type: stringsubject
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
- R32656 ExternalApplications - Check Entity Name
- R35471 SalesPerson - Check Enterprise Company Location
Front-End Business Rules
API
Domain API Query: https://demodb.my.erp.net/api/domain/odata/Crm_SalesPersons?$top=10
Domain API Query Builder: https://demodb.my.erp.net/api/domain/querybuilder#Crm_SalesPersons?$top=10