This is a description of the CRM module
This is the multi-page printable view of this section. Click here to print.
CRM module
- 1: Batch
- 2: CRM Domain
1 - Batch
Batch
Batch Properties
A batch can have a set of other properties, some of which you need to enable directly on the batch generator:
1. Name-Value Pairs
These are a set of extra information fields that will be applied to every pricing on the batch. They are used to set the properties that define the batch as a group.
Examples include:
- Indicated start-, sourcing-, or delivery time
- Sales channel
- Sales batch version
2. Strategies
Strategies contain information that later processes (such as the portfolio management module) can use to source, purchase, or hedge volumes for these specific pricings. The resulting trades will also often impact parts of the price.
- To enable: Toggle the ‘Use Strategy’ button on the batch generator.
-
⚠️ TODO: Clarify how they become available for pricings here.
3. Supported Volume Forecast Types
The system supports three different volume forecast types:
- Model Client
- Time Series To create these time series, select a script of the type ‘Sales batch forecast time series’
-
⚠️ TODO: Have the BRE linked somewhere and make sure the Sales batch forecast time series output is also in there This script will output either a result message, or a set of time series that can then be used by the pricings. Pricings cannot be generated without a forecast script that has run successfully. Use the script to do validations and give proper warning/error results in case the results are not as intended.
- Aggregation Tree
2 - CRM Domain
This page presents the ERD for each AggregateRoot, grouping related entities into domain boundaries. Each AggregateRoot enforces business rules, processes commands synchronously, and defines consistency borders within a single transactional scope. An indicative json schema is created to how the export of a aggregate root will approximitly look like
Brand
Aggregate Root: Brand
Represents a brand entity in the CRM system. Brands are used to categorize and organize products and services.
erDiagram
"CRM.Brands" {
uniqueidentifier Id PK
nvarchar Name
uniqueidentifier Tenant
datetimeoffset EntityCreatedDateTime
datetimeoffset EntityUpdatedDateTime
uniqueidentifier EntityCreatedAuthToken
uniqueidentifier EntityUpdatedAuthToken
bit Concealed
}
"CRM.ProductComponentModelPricingRequest_Brand" }o--|| "CRM.Brands" : "BrandId"
"CRM.PropositionModelPricingRequest_Brand" }o--|| "CRM.Brands" : "BrandId"
erDiagram
"CRM.Brands" {
uniqueidentifier Id PK
nvarchar Name
uniqueidentifier Tenant
datetimeoffset EntityCreatedDateTime
datetimeoffset EntityUpdatedDateTime
uniqueidentifier EntityCreatedAuthToken
uniqueidentifier EntityUpdatedAuthToken
bit Concealed
}
"CRM.ProductComponentModelPricingRequest_Brand" }o--|| "CRM.Brands" : "BrandId"
"CRM.PropositionModelPricingRequest_Brand" }o--|| "CRM.Brands" : "BrandId"
{
"definitions": {
"CRM.Brands": {
"properties": {
"Concealed": {
"type": "boolean",
"description": "bit"
},
"EntityUpdatedAuthToken": {
"format": "uuid",
"description": "uniqueidentifier",
"type": "string"
},
"Id": {
"format": "uuid",
"description": "uniqueidentifier",
"type": "string"
},
"EntityCreatedDateTime": {
"format": "date-time",
"description": "datetimeoffset",
"type": "string"
},
"Name": {
"type": "string",
"description": "nvarchar"
},
"EntityUpdatedDateTime": {
"format": "date-time",
"description": "datetimeoffset",
"type": "string"
},
"EntityCreatedAuthToken": {
"format": "uuid",
"description": "uniqueidentifier",
"type": "string"
},
"Tenant": {
"format": "uuid",
"description": "uniqueidentifier",
"type": "string"
}
},
"type": "object"
}
},
"title": "CRM.Brand",
"$comment": "Generated from Mermaid ERD with property-level descriptions",
"$schema": "http://json-schema.org/draft-07/schema#",
"type": "object"
}Collective
Aggregate Root: Collective
Represents a collective group of customers or entities that share common characteristics or relationships.
erDiagram
"CRM.Collectives" {
uniqueidentifier Id PK
nvarchar Name
uniqueidentifier Tenant
datetimeoffset EntityCreatedDateTime
datetimeoffset EntityUpdatedDateTime
uniqueidentifier EntityCreatedAuthToken
uniqueidentifier EntityUpdatedAuthToken
bit Concealed
}
"CRM.Customers" }o--|| "CRM.Collectives" : "CollectiveId"
erDiagram
"CRM.Collectives" {
uniqueidentifier Id PK
nvarchar Name
uniqueidentifier Tenant
datetimeoffset EntityCreatedDateTime
datetimeoffset EntityUpdatedDateTime
uniqueidentifier EntityCreatedAuthToken
uniqueidentifier EntityUpdatedAuthToken
bit Concealed
}
"CRM.Customers" }o--|| "CRM.Collectives" : "CollectiveId"
{
"definitions": {
"CRM.Collectives": {
"properties": {
"Concealed": {
"type": "boolean",
"description": "bit"
},
"EntityUpdatedAuthToken": {
"format": "uuid",
"description": "uniqueidentifier",
"type": "string"
},
"Id": {
"format": "uuid",
"description": "uniqueidentifier",
"type": "string"
},
"EntityCreatedDateTime": {
"format": "date-time",
"description": "datetimeoffset",
"type": "string"
},
"Name": {
"type": "string",
"description": "nvarchar"
},
"EntityUpdatedDateTime": {
"format": "date-time",
"description": "datetimeoffset",
"type": "string"
},
"EntityCreatedAuthToken": {
"format": "uuid",
"description": "uniqueidentifier",
"type": "string"
},
"Tenant": {
"format": "uuid",
"description": "uniqueidentifier",
"type": "string"
}
},
"type": "object"
}
},
"title": "CRM.Collective",
"$comment": "Generated from Mermaid ERD with property-level descriptions",
"$schema": "http://json-schema.org/draft-07/schema#",
"type": "object"
}Contact
Aggregate Root: Contact
Represents contact information for customers and other entities, including email addresses and telephone numbers.
erDiagram
"CRM.Contacts" {
uniqueidentifier Id PK
nvarchar FirstName
nvarchar LastName
int Gender
nvarchar Initials
nvarchar JobTitle
nvarchar Note
uniqueidentifier Tenant
datetimeoffset EntityCreatedDateTime
datetimeoffset EntityUpdatedDateTime
uniqueidentifier EntityCreatedAuthToken
uniqueidentifier EntityUpdatedAuthToken
nvarchar Organization
nvarchar LastNamePrefix
bit Concealed
}
"CRM.Customer_Contact" {
uniqueidentifier Id PK
uniqueidentifier CustomerId FK
uniqueidentifier ContactId FK
bit IsPrimary
uniqueidentifier Tenant
datetimeoffset EntityCreatedDateTime
datetimeoffset EntityUpdatedDateTime
uniqueidentifier EntityCreatedAuthToken
uniqueidentifier EntityUpdatedAuthToken
bit Concealed
bit IsAuthorizedToSign
}
"CRM.EmailAddresses" {
uniqueidentifier Id PK
uniqueidentifier ContactId FK
nvarchar Email
int EmailType
bit IsPrimary
uniqueidentifier Tenant
datetimeoffset EntityCreatedDateTime
datetimeoffset EntityUpdatedDateTime
uniqueidentifier EntityCreatedAuthToken
uniqueidentifier EntityUpdatedAuthToken
bit Concealed
}
"CRM.TelephoneNumbers" {
uniqueidentifier Id PK
uniqueidentifier ContactId FK
nvarchar PhoneNumber
int TelephoneNumberType
bit IsPrimary
uniqueidentifier Tenant
datetimeoffset EntityCreatedDateTime
datetimeoffset EntityUpdatedDateTime
uniqueidentifier EntityCreatedAuthToken
uniqueidentifier EntityUpdatedAuthToken
bit Concealed
}
"CRM.TelephoneNumbers" }o--|| "CRM.Contacts" : "ContactId"
"CRM.ContractDocuments" }o--|| "CRM.Contacts" : "AddresseeId"
"CRM.Customer_Contact" }o--|| "CRM.Contacts" : "ContactId"
"CRM.EmailAddresses" }o--|| "CRM.Contacts" : "ContactId"
"CRM.Customer_Contact" }o--|| "CRM.Customers" : "CustomerId"
erDiagram
"CRM.Contacts" {
uniqueidentifier Id PK
nvarchar FirstName
nvarchar LastName
int Gender
nvarchar Initials
nvarchar JobTitle
nvarchar Note
uniqueidentifier Tenant
datetimeoffset EntityCreatedDateTime
datetimeoffset EntityUpdatedDateTime
uniqueidentifier EntityCreatedAuthToken
uniqueidentifier EntityUpdatedAuthToken
nvarchar Organization
nvarchar LastNamePrefix
bit Concealed
}
"CRM.Customer_Contact" {
uniqueidentifier Id PK
uniqueidentifier CustomerId FK
uniqueidentifier ContactId FK
bit IsPrimary
uniqueidentifier Tenant
datetimeoffset EntityCreatedDateTime
datetimeoffset EntityUpdatedDateTime
uniqueidentifier EntityCreatedAuthToken
uniqueidentifier EntityUpdatedAuthToken
bit Concealed
bit IsAuthorizedToSign
}
"CRM.EmailAddresses" {
uniqueidentifier Id PK
uniqueidentifier ContactId FK
nvarchar Email
int EmailType
bit IsPrimary
uniqueidentifier Tenant
datetimeoffset EntityCreatedDateTime
datetimeoffset EntityUpdatedDateTime
uniqueidentifier EntityCreatedAuthToken
uniqueidentifier EntityUpdatedAuthToken
bit Concealed
}
"CRM.TelephoneNumbers" {
uniqueidentifier Id PK
uniqueidentifier ContactId FK
nvarchar PhoneNumber
int TelephoneNumberType
bit IsPrimary
uniqueidentifier Tenant
datetimeoffset EntityCreatedDateTime
datetimeoffset EntityUpdatedDateTime
uniqueidentifier EntityCreatedAuthToken
uniqueidentifier EntityUpdatedAuthToken
bit Concealed
}
"CRM.TelephoneNumbers" }o--|| "CRM.Contacts" : "ContactId"
"CRM.ContractDocuments" }o--|| "CRM.Contacts" : "AddresseeId"
"CRM.Customer_Contact" }o--|| "CRM.Contacts" : "ContactId"
"CRM.EmailAddresses" }o--|| "CRM.Contacts" : "ContactId"
"CRM.Customer_Contact" }o--|| "CRM.Customers" : "CustomerId"
{
"definitions": {
"CRM.TelephoneNumbers": {
"properties": {
"PhoneNumber": {
"type": "string",
"description": "nvarchar"
},
"EntityUpdatedAuthToken": {
"format": "uuid",
"description": "uniqueidentifier",
"type": "string"
},
"Id": {
"format": "uuid",
"description": "uniqueidentifier",
"type": "string"
},
"IsPrimary": {
"type": "boolean",
"description": "bit"
},
"EntityCreatedAuthToken": {
"format": "uuid",
"description": "uniqueidentifier",
"type": "string"
},
"Concealed": {
"type": "boolean",
"description": "bit"
},
"ContactId": {
"type": "string",
"description": "FK to CRM.Contacts"
},
"EntityUpdatedDateTime": {
"format": "date-time",
"description": "datetimeoffset",
"type": "string"
},
"TelephoneNumberType": {
"type": "integer",
"description": "int"
},
"EntityCreatedDateTime": {
"format": "date-time",
"description": "datetimeoffset",
"type": "string"
},
"Tenant": {
"format": "uuid",
"description": "uniqueidentifier",
"type": "string"
}
},
"type": "object"
},
"CRM.Contacts": {
"properties": {
"Note": {
"type": "string",
"description": "nvarchar"
},
"LastNamePrefix": {
"type": "string",
"description": "nvarchar"
},
"EntityUpdatedAuthToken": {
"format": "uuid",
"description": "uniqueidentifier",
"type": "string"
},
"Concealed": {
"type": "boolean",
"description": "bit"
},
"Tenant": {
"format": "uuid",
"description": "uniqueidentifier",
"type": "string"
},
"EntityCreatedAuthToken": {
"format": "uuid",
"description": "uniqueidentifier",
"type": "string"
},
"FirstName": {
"type": "string",
"description": "nvarchar"
},
"Initials": {
"type": "string",
"description": "nvarchar"
},
"EntityUpdatedDateTime": {
"format": "date-time",
"description": "datetimeoffset",
"type": "string"
},
"LastName": {
"type": "string",
"description": "nvarchar"
},
"Gender": {
"type": "integer",
"description": "int"
},
"Id": {
"format": "uuid",
"description": "uniqueidentifier",
"type": "string"
},
"Organization": {
"type": "string",
"description": "nvarchar"
},
"JobTitle": {
"type": "string",
"description": "nvarchar"
},
"EntityCreatedDateTime": {
"format": "date-time",
"description": "datetimeoffset",
"type": "string"
}
},
"type": "object"
},
"CRM.EmailAddresses": {
"properties": {
"Tenant": {
"format": "uuid",
"description": "uniqueidentifier",
"type": "string"
},
"EntityUpdatedAuthToken": {
"format": "uuid",
"description": "uniqueidentifier",
"type": "string"
},
"Id": {
"format": "uuid",
"description": "uniqueidentifier",
"type": "string"
},
"IsPrimary": {
"type": "boolean",
"description": "bit"
},
"EmailType": {
"type": "integer",
"description": "int"
},
"EntityCreatedAuthToken": {
"format": "uuid",
"description": "uniqueidentifier",
"type": "string"
},
"Concealed": {
"type": "boolean",
"description": "bit"
},
"ContactId": {
"type": "string",
"description": "FK to CRM.Contacts"
},
"EntityUpdatedDateTime": {
"format": "date-time",
"description": "datetimeoffset",
"type": "string"
},
"EntityCreatedDateTime": {
"format": "date-time",
"description": "datetimeoffset",
"type": "string"
},
"Email": {
"type": "string",
"description": "nvarchar"
}
},
"type": "object"
},
"CRM.Customer_Contact": {
"properties": {
"Concealed": {
"type": "boolean",
"description": "bit"
},
"EntityUpdatedAuthToken": {
"format": "uuid",
"description": "uniqueidentifier",
"type": "string"
},
"Id": {
"format": "uuid",
"description": "uniqueidentifier",
"type": "string"
},
"IsPrimary": {
"type": "boolean",
"description": "bit"
},
"CustomerId": {
"type": "string",
"description": "FK to CRM.Customers"
},
"EntityCreatedAuthToken": {
"format": "uuid",
"description": "uniqueidentifier",
"type": "string"
},
"ContactId": {
"type": "string",
"description": "FK to CRM.Contacts"
},
"EntityUpdatedDateTime": {
"format": "date-time",
"description": "datetimeoffset",
"type": "string"
},
"IsAuthorizedToSign": {
"type": "boolean",
"description": "bit"
},
"EntityCreatedDateTime": {
"format": "date-time",
"description": "datetimeoffset",
"type": "string"
},
"Tenant": {
"format": "uuid",
"description": "uniqueidentifier",
"type": "string"
}
},
"type": "object"
}
},
"title": "CRM.Contact",
"$comment": "Generated from Mermaid ERD with property-level descriptions",
"$schema": "http://json-schema.org/draft-07/schema#",
"type": "object"
}Contract
Aggregate Root: Contract
Represents customer contracts with all their versions, documents, and associated metering points and sites.
erDiagram
"CRM.ContractDocuments" {
uniqueidentifier Id PK
uniqueidentifier ContractVersionId FK
uniqueidentifier ContractTypeDocumentTypeId FK
uniqueidentifier AddresseeId FK
uniqueidentifier DocumentId
uniqueidentifier Tenant
datetimeoffset EntityCreatedDateTime
datetimeoffset EntityUpdatedDateTime
uniqueidentifier EntityCreatedAuthToken
uniqueidentifier EntityUpdatedAuthToken
bit Concealed
}
"CRM.ContractVersionDetailSetValues" {
uniqueidentifier Id PK
uniqueidentifier ContractVersionDetailSetId FK
uniqueidentifier ContractTemplateDetailId FK
nvarchar Value
uniqueidentifier Tenant
datetimeoffset EntityCreatedDateTime
datetimeoffset EntityUpdatedDateTime
uniqueidentifier EntityCreatedAuthToken
uniqueidentifier EntityUpdatedAuthToken
bit Concealed
}
"CRM.ContractVersionDetailSets" {
uniqueidentifier Id PK
uniqueidentifier ContractVersionId FK
uniqueidentifier ContractTemplateId FK
int DetailSetNumber
uniqueidentifier Tenant
datetimeoffset EntityCreatedDateTime
datetimeoffset EntityUpdatedDateTime
uniqueidentifier EntityCreatedAuthToken
uniqueidentifier EntityUpdatedAuthToken
bit Concealed
}
"CRM.ContractVersionOptionPhase_ContractVersionDetailSet" {
uniqueidentifier Id PK
uniqueidentifier ContractVersionOptionPhaseId FK
uniqueidentifier ContractVersionDetailSetId FK
uniqueidentifier Tenant
datetimeoffset EntityCreatedDateTime
datetimeoffset EntityUpdatedDateTime
uniqueidentifier EntityCreatedAuthToken
uniqueidentifier EntityUpdatedAuthToken
bit Concealed
}
"CRM.ContractVersionOptionPhases" {
uniqueidentifier Id PK
uniqueidentifier ContractVersionOptionId FK
uniqueidentifier ContractTypePhaseId FK
datetimeoffset StartDate
datetimeoffset EndDate
uniqueidentifier ContractDurationCustomEnumComponentId
uniqueidentifier Tenant
datetimeoffset EntityCreatedDateTime
datetimeoffset EntityUpdatedDateTime
uniqueidentifier EntityCreatedAuthToken
uniqueidentifier EntityUpdatedAuthToken
bit Concealed
}
"CRM.ContractVersionOptions" {
uniqueidentifier Id PK
uniqueidentifier ContractVersionId FK
int OptionNumber
uniqueidentifier Tenant
datetimeoffset EntityCreatedDateTime
datetimeoffset EntityUpdatedDateTime
uniqueidentifier EntityCreatedAuthToken
uniqueidentifier EntityUpdatedAuthToken
bit Concealed
}
"CRM.ContractVersion_MeteringPoint" {
uniqueidentifier Id PK
uniqueidentifier ContractVersionId FK
uniqueidentifier MeteringPointId
uniqueidentifier Tenant
datetimeoffset EntityCreatedDateTime
datetimeoffset EntityUpdatedDateTime
uniqueidentifier EntityCreatedAuthToken
uniqueidentifier EntityUpdatedAuthToken
bit Concealed
}
"CRM.ContractVersion_Site" {
uniqueidentifier Id PK
uniqueidentifier ContractVersionId FK
uniqueidentifier SiteId FK
uniqueidentifier Tenant
datetimeoffset EntityCreatedDateTime
datetimeoffset EntityUpdatedDateTime
uniqueidentifier EntityCreatedAuthToken
uniqueidentifier EntityUpdatedAuthToken
bit Concealed
}
"CRM.ContractVersions" {
uniqueidentifier Id PK
uniqueidentifier ContractId FK
int VersionNumber
int ContractVersionStatus
uniqueidentifier Tenant
datetimeoffset EntityCreatedDateTime
datetimeoffset EntityUpdatedDateTime
uniqueidentifier EntityCreatedAuthToken
uniqueidentifier EntityUpdatedAuthToken
nvarchar StatusReason
uniqueidentifier GeneralContractVersionDetailSetId FK
bit Concealed
}
"CRM.Contract_CategoryLabel" {
uniqueidentifier Id PK
uniqueidentifier ContractId FK
uniqueidentifier CategoryId
uniqueidentifier CategoryLabelId
uniqueidentifier Tenant
datetimeoffset EntityCreatedDateTime
datetimeoffset EntityUpdatedDateTime
uniqueidentifier EntityCreatedAuthToken
uniqueidentifier EntityUpdatedAuthToken
bit Concealed
}
"CRM.Contracts" {
uniqueidentifier Id PK
uniqueidentifier CustomerId FK
uniqueidentifier ContractTypeId FK
uniqueidentifier Tenant
datetimeoffset EntityCreatedDateTime
datetimeoffset EntityUpdatedDateTime
uniqueidentifier EntityCreatedAuthToken
uniqueidentifier EntityUpdatedAuthToken
nvarchar InternalReference
nvarchar ExternalReference
uniqueidentifier SignedContractVersionId FK
uniqueidentifier MostRelevantContractVersionId FK
bit Concealed
uniqueidentifier SignedContractVersionOptionId FK
}
"CRM.ContractDocuments" }o--|| "CRM.Contacts" : "AddresseeId"
"CRM.ContractDocuments" }o--|| "CRM.ContractTypeDocumentTypes" : "ContractTypeDocumentTypeId"
"CRM.ContractDocuments" }o--|| "CRM.ContractVersions" : "ContractVersionId"
"CRM.ContractVersionDetailSetValues" }o--|| "CRM.ContractTemplateDetails" : "ContractTemplateDetailId"
"CRM.ContractVersionDetailSetValues" }o--|| "CRM.ContractVersionDetailSets" : "ContractVersionDetailSetId"
"CRM.ContractVersionDetailSets" }o--|| "CRM.ContractTemplates" : "ContractTemplateId"
"CRM.ContractVersionDetailSets" }o--|| "CRM.ContractVersions" : "ContractVersionId"
"CRM.ContractVersionOptionPhase_ContractVersionDetailSet" }o--|| "CRM.ContractVersionDetailSets" : "ContractVersionDetailSetId"
"CRM.ContractVersions" }o--|| "CRM.ContractVersionDetailSets" : "GeneralContractVersionDetailSetId"
"CRM.ContractVersionOptionPhase_ContractVersionDetailSet" }o--|| "CRM.ContractVersionOptionPhases" : "ContractVersionOptionPhaseId"
"CRM.ContractVersionOptionPhases" }o--|| "CRM.ContractTypePhases" : "ContractTypePhaseId"
"CRM.ContractVersionOptionPhases" }o--|| "CRM.ContractVersionOptions" : "ContractVersionOptionId"
"CRM.Contracts" }o--|| "CRM.ContractVersionOptions" : "SignedContractVersionOptionId"
"CRM.ContractVersionOptions" }o--|| "CRM.ContractVersions" : "ContractVersionId"
"CRM.ContractVersion_MeteringPoint" }o--|| "CRM.ContractVersions" : "ContractVersionId"
"CRM.ContractVersion_Site" }o--|| "CRM.ContractVersions" : "ContractVersionId"
"CRM.ContractVersion_Site" }o--|| "CRM.Sites" : "SiteId"
"CRM.Contracts" }o--|| "CRM.ContractVersions" : "MostRelevantContractVersionId"
"CRM.Contracts" }o--|| "CRM.ContractVersions" : "SignedContractVersionId"
"CRM.ContractVersions" }o--|| "CRM.Contracts" : "ContractId"
"CRM.Contract_CategoryLabel" }o--|| "CRM.Contracts" : "ContractId"
"CRM.Contracts" }o--|| "CRM.ContractTypes" : "ContractTypeId"
"CRM.Contracts" }o--|| "CRM.Customers" : "CustomerId"
erDiagram
"CRM.ContractDocuments" {
uniqueidentifier Id PK
uniqueidentifier ContractVersionId FK
uniqueidentifier ContractTypeDocumentTypeId FK
uniqueidentifier AddresseeId FK
uniqueidentifier DocumentId
uniqueidentifier Tenant
datetimeoffset EntityCreatedDateTime
datetimeoffset EntityUpdatedDateTime
uniqueidentifier EntityCreatedAuthToken
uniqueidentifier EntityUpdatedAuthToken
bit Concealed
}
"CRM.ContractVersionDetailSetValues" {
uniqueidentifier Id PK
uniqueidentifier ContractVersionDetailSetId FK
uniqueidentifier ContractTemplateDetailId FK
nvarchar Value
uniqueidentifier Tenant
datetimeoffset EntityCreatedDateTime
datetimeoffset EntityUpdatedDateTime
uniqueidentifier EntityCreatedAuthToken
uniqueidentifier EntityUpdatedAuthToken
bit Concealed
}
"CRM.ContractVersionDetailSets" {
uniqueidentifier Id PK
uniqueidentifier ContractVersionId FK
uniqueidentifier ContractTemplateId FK
int DetailSetNumber
uniqueidentifier Tenant
datetimeoffset EntityCreatedDateTime
datetimeoffset EntityUpdatedDateTime
uniqueidentifier EntityCreatedAuthToken
uniqueidentifier EntityUpdatedAuthToken
bit Concealed
}
"CRM.ContractVersionOptionPhase_ContractVersionDetailSet" {
uniqueidentifier Id PK
uniqueidentifier ContractVersionOptionPhaseId FK
uniqueidentifier ContractVersionDetailSetId FK
uniqueidentifier Tenant
datetimeoffset EntityCreatedDateTime
datetimeoffset EntityUpdatedDateTime
uniqueidentifier EntityCreatedAuthToken
uniqueidentifier EntityUpdatedAuthToken
bit Concealed
}
"CRM.ContractVersionOptionPhases" {
uniqueidentifier Id PK
uniqueidentifier ContractVersionOptionId FK
uniqueidentifier ContractTypePhaseId FK
datetimeoffset StartDate
datetimeoffset EndDate
uniqueidentifier ContractDurationCustomEnumComponentId
uniqueidentifier Tenant
datetimeoffset EntityCreatedDateTime
datetimeoffset EntityUpdatedDateTime
uniqueidentifier EntityCreatedAuthToken
uniqueidentifier EntityUpdatedAuthToken
bit Concealed
}
"CRM.ContractVersionOptions" {
uniqueidentifier Id PK
uniqueidentifier ContractVersionId FK
int OptionNumber
uniqueidentifier Tenant
datetimeoffset EntityCreatedDateTime
datetimeoffset EntityUpdatedDateTime
uniqueidentifier EntityCreatedAuthToken
uniqueidentifier EntityUpdatedAuthToken
bit Concealed
}
"CRM.ContractVersion_MeteringPoint" {
uniqueidentifier Id PK
uniqueidentifier ContractVersionId FK
uniqueidentifier MeteringPointId
uniqueidentifier Tenant
datetimeoffset EntityCreatedDateTime
datetimeoffset EntityUpdatedDateTime
uniqueidentifier EntityCreatedAuthToken
uniqueidentifier EntityUpdatedAuthToken
bit Concealed
}
"CRM.ContractVersion_Site" {
uniqueidentifier Id PK
uniqueidentifier ContractVersionId FK
uniqueidentifier SiteId FK
uniqueidentifier Tenant
datetimeoffset EntityCreatedDateTime
datetimeoffset EntityUpdatedDateTime
uniqueidentifier EntityCreatedAuthToken
uniqueidentifier EntityUpdatedAuthToken
bit Concealed
}
"CRM.ContractVersions" {
uniqueidentifier Id PK
uniqueidentifier ContractId FK
int VersionNumber
int ContractVersionStatus
uniqueidentifier Tenant
datetimeoffset EntityCreatedDateTime
datetimeoffset EntityUpdatedDateTime
uniqueidentifier EntityCreatedAuthToken
uniqueidentifier EntityUpdatedAuthToken
nvarchar StatusReason
uniqueidentifier GeneralContractVersionDetailSetId FK
bit Concealed
}
"CRM.Contract_CategoryLabel" {
uniqueidentifier Id PK
uniqueidentifier ContractId FK
uniqueidentifier CategoryId
uniqueidentifier CategoryLabelId
uniqueidentifier Tenant
datetimeoffset EntityCreatedDateTime
datetimeoffset EntityUpdatedDateTime
uniqueidentifier EntityCreatedAuthToken
uniqueidentifier EntityUpdatedAuthToken
bit Concealed
}
"CRM.Contracts" {
uniqueidentifier Id PK
uniqueidentifier CustomerId FK
uniqueidentifier ContractTypeId FK
uniqueidentifier Tenant
datetimeoffset EntityCreatedDateTime
datetimeoffset EntityUpdatedDateTime
uniqueidentifier EntityCreatedAuthToken
uniqueidentifier EntityUpdatedAuthToken
nvarchar InternalReference
nvarchar ExternalReference
uniqueidentifier SignedContractVersionId FK
uniqueidentifier MostRelevantContractVersionId FK
bit Concealed
uniqueidentifier SignedContractVersionOptionId FK
}
"CRM.ContractDocuments" }o--|| "CRM.Contacts" : "AddresseeId"
"CRM.ContractDocuments" }o--|| "CRM.ContractTypeDocumentTypes" : "ContractTypeDocumentTypeId"
"CRM.ContractDocuments" }o--|| "CRM.ContractVersions" : "ContractVersionId"
"CRM.ContractVersionDetailSetValues" }o--|| "CRM.ContractTemplateDetails" : "ContractTemplateDetailId"
"CRM.ContractVersionDetailSetValues" }o--|| "CRM.ContractVersionDetailSets" : "ContractVersionDetailSetId"
"CRM.ContractVersionDetailSets" }o--|| "CRM.ContractTemplates" : "ContractTemplateId"
"CRM.ContractVersionDetailSets" }o--|| "CRM.ContractVersions" : "ContractVersionId"
"CRM.ContractVersionOptionPhase_ContractVersionDetailSet" }o--|| "CRM.ContractVersionDetailSets" : "ContractVersionDetailSetId"
"CRM.ContractVersions" }o--|| "CRM.ContractVersionDetailSets" : "GeneralContractVersionDetailSetId"
"CRM.ContractVersionOptionPhase_ContractVersionDetailSet" }o--|| "CRM.ContractVersionOptionPhases" : "ContractVersionOptionPhaseId"
"CRM.ContractVersionOptionPhases" }o--|| "CRM.ContractTypePhases" : "ContractTypePhaseId"
"CRM.ContractVersionOptionPhases" }o--|| "CRM.ContractVersionOptions" : "ContractVersionOptionId"
"CRM.Contracts" }o--|| "CRM.ContractVersionOptions" : "SignedContractVersionOptionId"
"CRM.ContractVersionOptions" }o--|| "CRM.ContractVersions" : "ContractVersionId"
"CRM.ContractVersion_MeteringPoint" }o--|| "CRM.ContractVersions" : "ContractVersionId"
"CRM.ContractVersion_Site" }o--|| "CRM.ContractVersions" : "ContractVersionId"
"CRM.ContractVersion_Site" }o--|| "CRM.Sites" : "SiteId"
"CRM.Contracts" }o--|| "CRM.ContractVersions" : "MostRelevantContractVersionId"
"CRM.Contracts" }o--|| "CRM.ContractVersions" : "SignedContractVersionId"
"CRM.ContractVersions" }o--|| "CRM.Contracts" : "ContractId"
"CRM.Contract_CategoryLabel" }o--|| "CRM.Contracts" : "ContractId"
"CRM.Contracts" }o--|| "CRM.ContractTypes" : "ContractTypeId"
"CRM.Contracts" }o--|| "CRM.Customers" : "CustomerId"
{
"definitions": {
"CRM.ContractVersionOptionPhases": {
"properties": {
"Id": {
"format": "uuid",
"description": "uniqueidentifier",
"type": "string"
},
"EntityUpdatedAuthToken": {
"format": "uuid",
"description": "uniqueidentifier",
"type": "string"
},
"Concealed": {
"type": "boolean",
"description": "bit"
},
"EntityCreatedAuthToken": {
"format": "uuid",
"description": "uniqueidentifier",
"type": "string"
},
"EndDate": {
"format": "date-time",
"description": "datetimeoffset",
"type": "string"
},
"EntityUpdatedDateTime": {
"format": "date-time",
"description": "datetimeoffset",
"type": "string"
},
"ContractVersionOptionId": {
"type": "string",
"description": "FK to CRM.ContractVersionOptions"
},
"Tenant": {
"format": "uuid",
"description": "uniqueidentifier",
"type": "string"
},
"EntityCreatedDateTime": {
"format": "date-time",
"description": "datetimeoffset",
"type": "string"
},
"ContractTypePhaseId": {
"type": "string",
"description": "FK to CRM.ContractTypePhases"
},
"StartDate": {
"format": "date-time",
"description": "datetimeoffset",
"type": "string"
},
"ContractDurationCustomEnumComponentId": {
"format": "uuid",
"description": "uniqueidentifier",
"type": "string"
}
},
"type": "object"
},
"CRM.ContractVersions": {
"properties": {
"Id": {
"format": "uuid",
"description": "uniqueidentifier",
"type": "string"
},
"ContractId": {
"type": "string",
"description": "FK to CRM.Contracts"
},
"EntityUpdatedAuthToken": {
"format": "uuid",
"description": "uniqueidentifier",
"type": "string"
},
"Concealed": {
"type": "boolean",
"description": "bit"
},
"EntityCreatedAuthToken": {
"format": "uuid",
"description": "uniqueidentifier",
"type": "string"
},
"StatusReason": {
"type": "string",
"description": "nvarchar"
},
"EntityUpdatedDateTime": {
"format": "date-time",
"description": "datetimeoffset",
"type": "string"
},
"ContractVersionStatus": {
"type": "integer",
"description": "int"
},
"Tenant": {
"format": "uuid",
"description": "uniqueidentifier",
"type": "string"
},
"GeneralContractVersionDetailSetId": {
"type": "string",
"description": "FK to CRM.ContractVersionDetailSets"
},
"EntityCreatedDateTime": {
"format": "date-time",
"description": "datetimeoffset",
"type": "string"
},
"VersionNumber": {
"type": "integer",
"description": "int"
}
},
"type": "object"
},
"CRM.Contracts": {
"properties": {
"MostRelevantContractVersionId": {
"type": "string",
"description": "FK to CRM.ContractVersions"
},
"SignedContractVersionId": {
"type": "string",
"description": "FK to CRM.ContractVersions"
},
"Id": {
"format": "uuid",
"description": "uniqueidentifier",
"type": "string"
},
"SignedContractVersionOptionId": {
"type": "string",
"description": "FK to CRM.ContractVersionOptions"
},
"EntityUpdatedAuthToken": {
"format": "uuid",
"description": "uniqueidentifier",
"type": "string"
},
"ContractTypeId": {
"type": "string",
"description": "FK to CRM.ContractTypes"
},
"EntityCreatedAuthToken": {
"format": "uuid",
"description": "uniqueidentifier",
"type": "string"
},
"CustomerId": {
"type": "string",
"description": "FK to CRM.Customers"
},
"EntityUpdatedDateTime": {
"format": "date-time",
"description": "datetimeoffset",
"type": "string"
},
"Tenant": {
"format": "uuid",
"description": "uniqueidentifier",
"type": "string"
},
"InternalReference": {
"type": "string",
"description": "nvarchar"
},
"ExternalReference": {
"type": "string",
"description": "nvarchar"
},
"EntityCreatedDateTime": {
"format": "date-time",
"description": "datetimeoffset",
"type": "string"
},
"Concealed": {
"type": "boolean",
"description": "bit"
}
},
"type": "object"
},
"CRM.ContractVersionDetailSetValues": {
"properties": {
"Concealed": {
"type": "boolean",
"description": "bit"
},
"ContractTemplateDetailId": {
"type": "string",
"description": "FK to CRM.ContractTemplateDetails"
},
"Id": {
"format": "uuid",
"description": "uniqueidentifier",
"type": "string"
},
"ContractVersionDetailSetId": {
"type": "string",
"description": "FK to CRM.ContractVersionDetailSets"
},
"EntityCreatedAuthToken": {
"format": "uuid",
"description": "uniqueidentifier",
"type": "string"
},
"EntityUpdatedAuthToken": {
"format": "uuid",
"description": "uniqueidentifier",
"type": "string"
},
"Value": {
"type": "string",
"description": "nvarchar"
},
"EntityUpdatedDateTime": {
"format": "date-time",
"description": "datetimeoffset",
"type": "string"
},
"EntityCreatedDateTime": {
"format": "date-time",
"description": "datetimeoffset",
"type": "string"
},
"Tenant": {
"format": "uuid",
"description": "uniqueidentifier",
"type": "string"
}
},
"type": "object"
},
"CRM.ContractVersionOptionPhase_ContractVersionDetailSet": {
"properties": {
"Concealed": {
"type": "boolean",
"description": "bit"
},
"EntityUpdatedAuthToken": {
"format": "uuid",
"description": "uniqueidentifier",
"type": "string"
},
"Id": {
"format": "uuid",
"description": "uniqueidentifier",
"type": "string"
},
"ContractVersionDetailSetId": {
"type": "string",
"description": "FK to CRM.ContractVersionDetailSets"
},
"EntityCreatedDateTime": {
"format": "date-time",
"description": "datetimeoffset",
"type": "string"
},
"EntityUpdatedDateTime": {
"format": "date-time",
"description": "datetimeoffset",
"type": "string"
},
"ContractVersionOptionPhaseId": {
"type": "string",
"description": "FK to CRM.ContractVersionOptionPhases"
},
"EntityCreatedAuthToken": {
"format": "uuid",
"description": "uniqueidentifier",
"type": "string"
},
"Tenant": {
"format": "uuid",
"description": "uniqueidentifier",
"type": "string"
}
},
"type": "object"
},
"CRM.ContractVersionOptions": {
"properties": {
"Concealed": {
"type": "boolean",
"description": "bit"
},
"EntityUpdatedAuthToken": {
"format": "uuid",
"description": "uniqueidentifier",
"type": "string"
},
"OptionNumber": {
"type": "integer",
"description": "int"
},
"Id": {
"format": "uuid",
"description": "uniqueidentifier",
"type": "string"
},
"EntityCreatedAuthToken": {
"format": "uuid",
"description": "uniqueidentifier",
"type": "string"
},
"EntityCreatedDateTime": {
"format": "date-time",
"description": "datetimeoffset",
"type": "string"
},
"EntityUpdatedDateTime": {
"format": "date-time",
"description": "datetimeoffset",
"type": "string"
},
"ContractVersionId": {
"type": "string",
"description": "FK to CRM.ContractVersions"
},
"Tenant": {
"format": "uuid",
"description": "uniqueidentifier",
"type": "string"
}
},
"type": "object"
},
"CRM.ContractVersionDetailSets": {
"properties": {
"ContractTemplateId": {
"type": "string",
"description": "FK to CRM.ContractTemplates"
},
"EntityUpdatedAuthToken": {
"format": "uuid",
"description": "uniqueidentifier",
"type": "string"
},
"Id": {
"format": "uuid",
"description": "uniqueidentifier",
"type": "string"
},
"DetailSetNumber": {
"type": "integer",
"description": "int"
},
"EntityCreatedAuthToken": {
"format": "uuid",
"description": "uniqueidentifier",
"type": "string"
},
"Concealed": {
"type": "boolean",
"description": "bit"
},
"EntityCreatedDateTime": {
"format": "date-time",
"description": "datetimeoffset",
"type": "string"
},
"EntityUpdatedDateTime": {
"format": "date-time",
"description": "datetimeoffset",
"type": "string"
},
"ContractVersionId": {
"type": "string",
"description": "FK to CRM.ContractVersions"
},
"Tenant": {
"format": "uuid",
"description": "uniqueidentifier",
"type": "string"
}
},
"type": "object"
},
"CRM.ContractVersion_Site": {
"properties": {
"Concealed": {
"type": "boolean",
"description": "bit"
},
"EntityUpdatedAuthToken": {
"format": "uuid",
"description": "uniqueidentifier",
"type": "string"
},
"Id": {
"format": "uuid",
"description": "uniqueidentifier",
"type": "string"
},
"SiteId": {
"type": "string",
"description": "FK to CRM.Sites"
},
"EntityCreatedAuthToken": {
"format": "uuid",
"description": "uniqueidentifier",
"type": "string"
},
"EntityCreatedDateTime": {
"format": "date-time",
"description": "datetimeoffset",
"type": "string"
},
"EntityUpdatedDateTime": {
"format": "date-time",
"description": "datetimeoffset",
"type": "string"
},
"ContractVersionId": {
"type": "string",
"description": "FK to CRM.ContractVersions"
},
"Tenant": {
"format": "uuid",
"description": "uniqueidentifier",
"type": "string"
}
},
"type": "object"
},
"CRM.ContractDocuments": {
"properties": {
"Concealed": {
"type": "boolean",
"description": "bit"
},
"EntityUpdatedAuthToken": {
"format": "uuid",
"description": "uniqueidentifier",
"type": "string"
},
"Id": {
"format": "uuid",
"description": "uniqueidentifier",
"type": "string"
},
"AddresseeId": {
"type": "string",
"description": "FK to CRM.Contacts"
},
"DocumentId": {
"format": "uuid",
"description": "uniqueidentifier",
"type": "string"
},
"EntityCreatedAuthToken": {
"format": "uuid",
"description": "uniqueidentifier",
"type": "string"
},
"EntityCreatedDateTime": {
"format": "date-time",
"description": "datetimeoffset",
"type": "string"
},
"ContractTypeDocumentTypeId": {
"type": "string",
"description": "FK to CRM.ContractTypeDocumentTypes"
},
"EntityUpdatedDateTime": {
"format": "date-time",
"description": "datetimeoffset",
"type": "string"
},
"ContractVersionId": {
"type": "string",
"description": "FK to CRM.ContractVersions"
},
"Tenant": {
"format": "uuid",
"description": "uniqueidentifier",
"type": "string"
}
},
"type": "object"
},
"CRM.Contract_CategoryLabel": {
"properties": {
"Concealed": {
"type": "boolean",
"description": "bit"
},
"EntityUpdatedAuthToken": {
"format": "uuid",
"description": "uniqueidentifier",
"type": "string"
},
"Id": {
"format": "uuid",
"description": "uniqueidentifier",
"type": "string"
},
"CategoryLabelId": {
"format": "uuid",
"description": "uniqueidentifier",
"type": "string"
},
"ContractId": {
"type": "string",
"description": "FK to CRM.Contracts"
},
"EntityCreatedDateTime": {
"format": "date-time",
"description": "datetimeoffset",
"type": "string"
},
"EntityUpdatedDateTime": {
"format": "date-time",
"description": "datetimeoffset",
"type": "string"
},
"CategoryId": {
"format": "uuid",
"description": "uniqueidentifier",
"type": "string"
},
"EntityCreatedAuthToken": {
"format": "uuid",
"description": "uniqueidentifier",
"type": "string"
},
"Tenant": {
"format": "uuid",
"description": "uniqueidentifier",
"type": "string"
}
},
"type": "object"
},
"CRM.ContractVersion_MeteringPoint": {
"properties": {
"Concealed": {
"type": "boolean",
"description": "bit"
},
"EntityUpdatedAuthToken": {
"format": "uuid",
"description": "uniqueidentifier",
"type": "string"
},
"Id": {
"format": "uuid",
"description": "uniqueidentifier",
"type": "string"
},
"EntityCreatedAuthToken": {
"format": "uuid",
"description": "uniqueidentifier",
"type": "string"
},
"MeteringPointId": {
"format": "uuid",
"description": "uniqueidentifier",
"type": "string"
},
"EntityCreatedDateTime": {
"format": "date-time",
"description": "datetimeoffset",
"type": "string"
},
"EntityUpdatedDateTime": {
"format": "date-time",
"description": "datetimeoffset",
"type": "string"
},
"ContractVersionId": {
"type": "string",
"description": "FK to CRM.ContractVersions"
},
"Tenant": {
"format": "uuid",
"description": "uniqueidentifier",
"type": "string"
}
},
"type": "object"
}
},
"title": "CRM.Contract",
"$comment": "Generated from Mermaid ERD with property-level descriptions",
"$schema": "http://json-schema.org/draft-07/schema#",
"type": "object"
}Contract Template
Aggregate Root: ContractTemplate
Represents templates for creating contracts with predefined structures and details.
erDiagram
"CRM.ContractTemplateDetails" {
uniqueidentifier Id PK
uniqueidentifier ContractTemplateId FK
nvarchar Key
nvarchar DefaultValue
int FormatType
uniqueidentifier CustomEnumId FK
bit IsFixed
bit IsRequired
bit IsActive
uniqueidentifier Tenant
datetimeoffset EntityCreatedDateTime
datetimeoffset EntityUpdatedDateTime
uniqueidentifier EntityCreatedAuthToken
uniqueidentifier EntityUpdatedAuthToken
bit Concealed
}
"CRM.ContractTemplates" {
uniqueidentifier Id PK
nvarchar Name
uniqueidentifier Tenant
datetimeoffset EntityCreatedDateTime
datetimeoffset EntityUpdatedDateTime
uniqueidentifier EntityCreatedAuthToken
uniqueidentifier EntityUpdatedAuthToken
bit Concealed
}
"CRM.ContractTemplateDetails" }o--|| "CRM.ContractTemplates" : "ContractTemplateId"
"CRM.ContractTemplateDetails" }o--|| "CRM.CustomEnums" : "CustomEnumId"
"CRM.ContractTemplateDetails" }o--|| "Pricing.CustomEnums" : "CustomEnumId"
"CRM.ContractTemplateDetails" }o--|| "ApplicationCore.CustomEnums" : "CustomEnumId"
"CRM.ContractTemplateDetails" }o--|| "PM.CustomEnums" : "CustomEnumId"
"CRM.ContractVersionDetailSetValues" }o--|| "CRM.ContractTemplateDetails" : "ContractTemplateDetailId"
"CRM.ContractTypePhase_ContractTemplate" }o--|| "CRM.ContractTemplates" : "ContractTemplateId"
"CRM.ContractTypes" }o--|| "CRM.ContractTemplates" : "GeneralContractTemplateId"
"CRM.ContractVersionDetailSets" }o--|| "CRM.ContractTemplates" : "ContractTemplateId"
erDiagram
"CRM.ContractTemplateDetails" {
uniqueidentifier Id PK
uniqueidentifier ContractTemplateId FK
nvarchar Key
nvarchar DefaultValue
int FormatType
uniqueidentifier CustomEnumId FK
bit IsFixed
bit IsRequired
bit IsActive
uniqueidentifier Tenant
datetimeoffset EntityCreatedDateTime
datetimeoffset EntityUpdatedDateTime
uniqueidentifier EntityCreatedAuthToken
uniqueidentifier EntityUpdatedAuthToken
bit Concealed
}
"CRM.ContractTemplates" {
uniqueidentifier Id PK
nvarchar Name
uniqueidentifier Tenant
datetimeoffset EntityCreatedDateTime
datetimeoffset EntityUpdatedDateTime
uniqueidentifier EntityCreatedAuthToken
uniqueidentifier EntityUpdatedAuthToken
bit Concealed
}
"CRM.ContractTemplateDetails" }o--|| "CRM.ContractTemplates" : "ContractTemplateId"
"CRM.ContractTemplateDetails" }o--|| "CRM.CustomEnums" : "CustomEnumId"
"CRM.ContractTemplateDetails" }o--|| "Pricing.CustomEnums" : "CustomEnumId"
"CRM.ContractTemplateDetails" }o--|| "ApplicationCore.CustomEnums" : "CustomEnumId"
"CRM.ContractTemplateDetails" }o--|| "PM.CustomEnums" : "CustomEnumId"
"CRM.ContractVersionDetailSetValues" }o--|| "CRM.ContractTemplateDetails" : "ContractTemplateDetailId"
"CRM.ContractTypePhase_ContractTemplate" }o--|| "CRM.ContractTemplates" : "ContractTemplateId"
"CRM.ContractTypes" }o--|| "CRM.ContractTemplates" : "GeneralContractTemplateId"
"CRM.ContractVersionDetailSets" }o--|| "CRM.ContractTemplates" : "ContractTemplateId"
{
"definitions": {
"CRM.ContractTemplateDetails": {
"properties": {
"IsRequired": {
"type": "boolean",
"description": "bit"
},
"Id": {
"format": "uuid",
"description": "uniqueidentifier",
"type": "string"
},
"EntityUpdatedAuthToken": {
"format": "uuid",
"description": "uniqueidentifier",
"type": "string"
},
"Concealed": {
"type": "boolean",
"description": "bit"
},
"IsActive": {
"type": "boolean",
"description": "bit"
},
"EntityCreatedAuthToken": {
"format": "uuid",
"description": "uniqueidentifier",
"type": "string"
},
"DefaultValue": {
"type": "string",
"description": "nvarchar"
},
"IsFixed": {
"type": "boolean",
"description": "bit"
},
"EntityUpdatedDateTime": {
"format": "date-time",
"description": "datetimeoffset",
"type": "string"
},
"ContractTemplateId": {
"type": "string",
"description": "FK to CRM.ContractTemplates"
},
"Tenant": {
"format": "uuid",
"description": "uniqueidentifier",
"type": "string"
},
"Key": {
"type": "string",
"description": "nvarchar"
},
"EntityCreatedDateTime": {
"format": "date-time",
"description": "datetimeoffset",
"type": "string"
},
"FormatType": {
"type": "integer",
"description": "int"
},
"CustomEnumId": {
"type": "string",
"description": "FK to PM.CustomEnums"
}
},
"type": "object"
},
"CRM.ContractTemplates": {
"properties": {
"Concealed": {
"type": "boolean",
"description": "bit"
},
"EntityUpdatedAuthToken": {
"format": "uuid",
"description": "uniqueidentifier",
"type": "string"
},
"Id": {
"format": "uuid",
"description": "uniqueidentifier",
"type": "string"
},
"EntityCreatedDateTime": {
"format": "date-time",
"description": "datetimeoffset",
"type": "string"
},
"Name": {
"type": "string",
"description": "nvarchar"
},
"EntityUpdatedDateTime": {
"format": "date-time",
"description": "datetimeoffset",
"type": "string"
},
"EntityCreatedAuthToken": {
"format": "uuid",
"description": "uniqueidentifier",
"type": "string"
},
"Tenant": {
"format": "uuid",
"description": "uniqueidentifier",
"type": "string"
}
},
"type": "object"
}
},
"title": "CRM.ContractTemplate",
"$comment": "Generated from Mermaid ERD with property-level descriptions",
"$schema": "http://json-schema.org/draft-07/schema#",
"type": "object"
}Contract Type
Aggregate Root: ContractType
Represents different types of contracts with their associated document types and phases.
erDiagram
"CRM.ContractTypeDocumentTypes" {
uniqueidentifier Id PK
uniqueidentifier ContractTypeId FK
nvarchar Name
uniqueidentifier DocGenTemplateRootId
bit IsScorable
uniqueidentifier Tenant
datetimeoffset EntityCreatedDateTime
datetimeoffset EntityUpdatedDateTime
uniqueidentifier EntityCreatedAuthToken
uniqueidentifier EntityUpdatedAuthToken
bit Concealed
}
"CRM.ContractTypePhase_ContractTemplate" {
uniqueidentifier Id PK
uniqueidentifier ContractTypePhaseId FK
uniqueidentifier ContractTemplateId FK
uniqueidentifier Tenant
datetimeoffset EntityCreatedDateTime
datetimeoffset EntityUpdatedDateTime
uniqueidentifier EntityCreatedAuthToken
uniqueidentifier EntityUpdatedAuthToken
bit Concealed
}
"CRM.ContractTypePhases" {
uniqueidentifier Id PK
uniqueidentifier ContractTypeId FK
nvarchar Name
uniqueidentifier Tenant
datetimeoffset EntityCreatedDateTime
datetimeoffset EntityUpdatedDateTime
uniqueidentifier EntityCreatedAuthToken
uniqueidentifier EntityUpdatedAuthToken
bit Concealed
}
"CRM.ContractTypes" {
uniqueidentifier Id PK
nvarchar Name
uniqueidentifier PropositionTemplateId
uniqueidentifier Tenant
datetimeoffset EntityCreatedDateTime
datetimeoffset EntityUpdatedDateTime
uniqueidentifier EntityCreatedAuthToken
uniqueidentifier EntityUpdatedAuthToken
uniqueidentifier GeneralContractTemplateId FK
bit Concealed
}
"CRM.ContractDocuments" }o--|| "CRM.ContractTypeDocumentTypes" : "ContractTypeDocumentTypeId"
"CRM.ContractTypeDocumentTypes" }o--|| "CRM.ContractTypes" : "ContractTypeId"
"CRM.ContractTypePhase_ContractTemplate" }o--|| "CRM.ContractTemplates" : "ContractTemplateId"
"CRM.ContractTypePhase_ContractTemplate" }o--|| "CRM.ContractTypePhases" : "ContractTypePhaseId"
"CRM.ContractTypePhases" }o--|| "CRM.ContractTypes" : "ContractTypeId"
"CRM.ContractVersionOptionPhases" }o--|| "CRM.ContractTypePhases" : "ContractTypePhaseId"
"CRM.Contracts" }o--|| "CRM.ContractTypes" : "ContractTypeId"
"CRM.ContractTypes" }o--|| "CRM.ContractTemplates" : "GeneralContractTemplateId"
erDiagram
"CRM.ContractTypeDocumentTypes" {
uniqueidentifier Id PK
uniqueidentifier ContractTypeId FK
nvarchar Name
uniqueidentifier DocGenTemplateRootId
bit IsScorable
uniqueidentifier Tenant
datetimeoffset EntityCreatedDateTime
datetimeoffset EntityUpdatedDateTime
uniqueidentifier EntityCreatedAuthToken
uniqueidentifier EntityUpdatedAuthToken
bit Concealed
}
"CRM.ContractTypePhase_ContractTemplate" {
uniqueidentifier Id PK
uniqueidentifier ContractTypePhaseId FK
uniqueidentifier ContractTemplateId FK
uniqueidentifier Tenant
datetimeoffset EntityCreatedDateTime
datetimeoffset EntityUpdatedDateTime
uniqueidentifier EntityCreatedAuthToken
uniqueidentifier EntityUpdatedAuthToken
bit Concealed
}
"CRM.ContractTypePhases" {
uniqueidentifier Id PK
uniqueidentifier ContractTypeId FK
nvarchar Name
uniqueidentifier Tenant
datetimeoffset EntityCreatedDateTime
datetimeoffset EntityUpdatedDateTime
uniqueidentifier EntityCreatedAuthToken
uniqueidentifier EntityUpdatedAuthToken
bit Concealed
}
"CRM.ContractTypes" {
uniqueidentifier Id PK
nvarchar Name
uniqueidentifier PropositionTemplateId
uniqueidentifier Tenant
datetimeoffset EntityCreatedDateTime
datetimeoffset EntityUpdatedDateTime
uniqueidentifier EntityCreatedAuthToken
uniqueidentifier EntityUpdatedAuthToken
uniqueidentifier GeneralContractTemplateId FK
bit Concealed
}
"CRM.ContractDocuments" }o--|| "CRM.ContractTypeDocumentTypes" : "ContractTypeDocumentTypeId"
"CRM.ContractTypeDocumentTypes" }o--|| "CRM.ContractTypes" : "ContractTypeId"
"CRM.ContractTypePhase_ContractTemplate" }o--|| "CRM.ContractTemplates" : "ContractTemplateId"
"CRM.ContractTypePhase_ContractTemplate" }o--|| "CRM.ContractTypePhases" : "ContractTypePhaseId"
"CRM.ContractTypePhases" }o--|| "CRM.ContractTypes" : "ContractTypeId"
"CRM.ContractVersionOptionPhases" }o--|| "CRM.ContractTypePhases" : "ContractTypePhaseId"
"CRM.Contracts" }o--|| "CRM.ContractTypes" : "ContractTypeId"
"CRM.ContractTypes" }o--|| "CRM.ContractTemplates" : "GeneralContractTemplateId"
{
"definitions": {
"CRM.ContractTypeDocumentTypes": {
"properties": {
"Tenant": {
"format": "uuid",
"description": "uniqueidentifier",
"type": "string"
},
"EntityUpdatedAuthToken": {
"format": "uuid",
"description": "uniqueidentifier",
"type": "string"
},
"DocGenTemplateRootId": {
"format": "uuid",
"description": "uniqueidentifier",
"type": "string"
},
"Id": {
"format": "uuid",
"description": "uniqueidentifier",
"type": "string"
},
"ContractTypeId": {
"type": "string",
"description": "FK to CRM.ContractTypes"
},
"Concealed": {
"type": "boolean",
"description": "bit"
},
"EntityCreatedDateTime": {
"format": "date-time",
"description": "datetimeoffset",
"type": "string"
},
"Name": {
"type": "string",
"description": "nvarchar"
},
"EntityUpdatedDateTime": {
"format": "date-time",
"description": "datetimeoffset",
"type": "string"
},
"EntityCreatedAuthToken": {
"format": "uuid",
"description": "uniqueidentifier",
"type": "string"
},
"IsScorable": {
"type": "boolean",
"description": "bit"
}
},
"type": "object"
},
"CRM.ContractTypePhase_ContractTemplate": {
"properties": {
"ContractTemplateId": {
"type": "string",
"description": "FK to CRM.ContractTemplates"
},
"EntityUpdatedAuthToken": {
"format": "uuid",
"description": "uniqueidentifier",
"type": "string"
},
"Id": {
"format": "uuid",
"description": "uniqueidentifier",
"type": "string"
},
"ContractTypePhaseId": {
"type": "string",
"description": "FK to CRM.ContractTypePhases"
},
"Concealed": {
"type": "boolean",
"description": "bit"
},
"EntityCreatedDateTime": {
"format": "date-time",
"description": "datetimeoffset",
"type": "string"
},
"EntityUpdatedDateTime": {
"format": "date-time",
"description": "datetimeoffset",
"type": "string"
},
"EntityCreatedAuthToken": {
"format": "uuid",
"description": "uniqueidentifier",
"type": "string"
},
"Tenant": {
"format": "uuid",
"description": "uniqueidentifier",
"type": "string"
}
},
"type": "object"
},
"CRM.ContractTypePhases": {
"properties": {
"Concealed": {
"type": "boolean",
"description": "bit"
},
"EntityUpdatedAuthToken": {
"format": "uuid",
"description": "uniqueidentifier",
"type": "string"
},
"Id": {
"format": "uuid",
"description": "uniqueidentifier",
"type": "string"
},
"ContractTypeId": {
"type": "string",
"description": "FK to CRM.ContractTypes"
},
"EntityCreatedDateTime": {
"format": "date-time",
"description": "datetimeoffset",
"type": "string"
},
"Name": {
"type": "string",
"description": "nvarchar"
},
"EntityUpdatedDateTime": {
"format": "date-time",
"description": "datetimeoffset",
"type": "string"
},
"EntityCreatedAuthToken": {
"format": "uuid",
"description": "uniqueidentifier",
"type": "string"
},
"Tenant": {
"format": "uuid",
"description": "uniqueidentifier",
"type": "string"
}
},
"type": "object"
},
"CRM.ContractTypes": {
"properties": {
"Concealed": {
"type": "boolean",
"description": "bit"
},
"EntityUpdatedAuthToken": {
"format": "uuid",
"description": "uniqueidentifier",
"type": "string"
},
"Id": {
"format": "uuid",
"description": "uniqueidentifier",
"type": "string"
},
"GeneralContractTemplateId": {
"type": "string",
"description": "FK to CRM.ContractTemplates"
},
"EntityUpdatedDateTime": {
"format": "date-time",
"description": "datetimeoffset",
"type": "string"
},
"EntityCreatedDateTime": {
"format": "date-time",
"description": "datetimeoffset",
"type": "string"
},
"Name": {
"type": "string",
"description": "nvarchar"
},
"PropositionTemplateId": {
"format": "uuid",
"description": "uniqueidentifier",
"type": "string"
},
"EntityCreatedAuthToken": {
"format": "uuid",
"description": "uniqueidentifier",
"type": "string"
},
"Tenant": {
"format": "uuid",
"description": "uniqueidentifier",
"type": "string"
}
},
"type": "object"
}
},
"title": "CRM.ContractType",
"$comment": "Generated from Mermaid ERD with property-level descriptions",
"$schema": "http://json-schema.org/draft-07/schema#",
"type": "object"
}Control Flex Asset Result Processor
Aggregate Root: ControlFlexAssetResultProcessor
Processes results from flex asset control operations and manages the outcome of flex asset activities.
erDiagram
"CRM.ControlFlexAssetResultProcessors" {
uniqueidentifier Id PK
uniqueidentifier ControlFlexAssetResultProcessorImplementationId
nvarchar Name
nvarchar Description
nvarchar Config
uniqueidentifier Tenant
datetimeoffset EntityCreatedDateTime
datetimeoffset EntityUpdatedDateTime
uniqueidentifier EntityCreatedAuthToken
uniqueidentifier EntityUpdatedAuthToken
bit Concealed
}
"CRM.FlexController_ControlFlexAssetResultProcessor" }o--|| "CRM.ControlFlexAssetResultProcessors" : "ControlFlexAssetResultProcessorId"
erDiagram
"CRM.ControlFlexAssetResultProcessors" {
uniqueidentifier Id PK
uniqueidentifier ControlFlexAssetResultProcessorImplementationId
nvarchar Name
nvarchar Description
nvarchar Config
uniqueidentifier Tenant
datetimeoffset EntityCreatedDateTime
datetimeoffset EntityUpdatedDateTime
uniqueidentifier EntityCreatedAuthToken
uniqueidentifier EntityUpdatedAuthToken
bit Concealed
}
"CRM.FlexController_ControlFlexAssetResultProcessor" }o--|| "CRM.ControlFlexAssetResultProcessors" : "ControlFlexAssetResultProcessorId"
{
"definitions": {
"CRM.ControlFlexAssetResultProcessors": {
"properties": {
"Concealed": {
"type": "boolean",
"description": "bit"
},
"EntityUpdatedAuthToken": {
"format": "uuid",
"description": "uniqueidentifier",
"type": "string"
},
"Id": {
"format": "uuid",
"description": "uniqueidentifier",
"type": "string"
},
"Config": {
"type": "string",
"description": "nvarchar"
},
"Description": {
"type": "string",
"description": "nvarchar"
},
"ControlFlexAssetResultProcessorImplementationId": {
"format": "uuid",
"description": "uniqueidentifier",
"type": "string"
},
"EntityCreatedDateTime": {
"format": "date-time",
"description": "datetimeoffset",
"type": "string"
},
"Name": {
"type": "string",
"description": "nvarchar"
},
"EntityUpdatedDateTime": {
"format": "date-time",
"description": "datetimeoffset",
"type": "string"
},
"EntityCreatedAuthToken": {
"format": "uuid",
"description": "uniqueidentifier",
"type": "string"
},
"Tenant": {
"format": "uuid",
"description": "uniqueidentifier",
"type": "string"
}
},
"type": "object"
}
},
"title": "CRM.ControlFlexAssetResultProcessor",
"$comment": "Generated from Mermaid ERD with property-level descriptions",
"$schema": "http://json-schema.org/draft-07/schema#",
"type": "object"
}Control Flex Asset Value Provider
Aggregate Root: ControlFlexAssetValueProvider
Provides values for flex asset control operations and manages the input data for flex asset activities.
erDiagram
"CRM.ControlFlexAssetValueProviders" {
uniqueidentifier Id PK
uniqueidentifier ControlFlexAssetValueProviderImplementationId
nvarchar Name
nvarchar Description
nvarchar Config
uniqueidentifier Tenant
datetimeoffset EntityCreatedDateTime
datetimeoffset EntityUpdatedDateTime
uniqueidentifier EntityCreatedAuthToken
uniqueidentifier EntityUpdatedAuthToken
bit Concealed
}
"CRM.FlexController_ControlFlexAssetValueProvider" }o--|| "CRM.ControlFlexAssetValueProviders" : "ControlFlexAssetValueProviderId"
erDiagram
"CRM.ControlFlexAssetValueProviders" {
uniqueidentifier Id PK
uniqueidentifier ControlFlexAssetValueProviderImplementationId
nvarchar Name
nvarchar Description
nvarchar Config
uniqueidentifier Tenant
datetimeoffset EntityCreatedDateTime
datetimeoffset EntityUpdatedDateTime
uniqueidentifier EntityCreatedAuthToken
uniqueidentifier EntityUpdatedAuthToken
bit Concealed
}
"CRM.FlexController_ControlFlexAssetValueProvider" }o--|| "CRM.ControlFlexAssetValueProviders" : "ControlFlexAssetValueProviderId"
{
"definitions": {
"CRM.ControlFlexAssetValueProviders": {
"properties": {
"Concealed": {
"type": "boolean",
"description": "bit"
},
"EntityUpdatedAuthToken": {
"format": "uuid",
"description": "uniqueidentifier",
"type": "string"
},
"Id": {
"format": "uuid",
"description": "uniqueidentifier",
"type": "string"
},
"Config": {
"type": "string",
"description": "nvarchar"
},
"Description": {
"type": "string",
"description": "nvarchar"
},
"EntityUpdatedDateTime": {
"format": "date-time",
"description": "datetimeoffset",
"type": "string"
},
"EntityCreatedDateTime": {
"format": "date-time",
"description": "datetimeoffset",
"type": "string"
},
"Name": {
"type": "string",
"description": "nvarchar"
},
"ControlFlexAssetValueProviderImplementationId": {
"format": "uuid",
"description": "uniqueidentifier",
"type": "string"
},
"EntityCreatedAuthToken": {
"format": "uuid",
"description": "uniqueidentifier",
"type": "string"
},
"Tenant": {
"format": "uuid",
"description": "uniqueidentifier",
"type": "string"
}
},
"type": "object"
}
},
"title": "CRM.ControlFlexAssetValueProvider",
"$comment": "Generated from Mermaid ERD with property-level descriptions",
"$schema": "http://json-schema.org/draft-07/schema#",
"type": "object"
}Customer
Aggregate Root: Customer
Represents customers in the CRM system with their addresses, names, and associations with metering points and categories.
erDiagram
"CRM.CustomerAddresses" {
uniqueidentifier Id PK
uniqueidentifier CustomerId FK
int AddressType
nvarchar Street
nvarchar HouseNumber
nvarchar Suffix
nvarchar PostalCode
nvarchar City
nvarchar Country
uniqueidentifier Tenant
datetimeoffset EntityCreatedDateTime
datetimeoffset EntityUpdatedDateTime
uniqueidentifier EntityCreatedAuthToken
uniqueidentifier EntityUpdatedAuthToken
bit Concealed
}
"CRM.CustomerNames" {
uniqueidentifier Id PK
uniqueidentifier CustomerId FK
nvarchar Name
int NameType
uniqueidentifier Tenant
datetimeoffset EntityCreatedDateTime
datetimeoffset EntityUpdatedDateTime
uniqueidentifier EntityCreatedAuthToken
uniqueidentifier EntityUpdatedAuthToken
bit Concealed
}
"CRM.Customer_CategoryLabel" {
uniqueidentifier Id PK
uniqueidentifier CustomerId FK
uniqueidentifier CategoryId
uniqueidentifier CategoryLabelId
uniqueidentifier Tenant
datetimeoffset EntityCreatedDateTime
datetimeoffset EntityUpdatedDateTime
uniqueidentifier EntityCreatedAuthToken
uniqueidentifier EntityUpdatedAuthToken
bit Concealed
}
"CRM.Customer_MeteringPoint" {
uniqueidentifier Id PK
uniqueidentifier CustomerId FK
uniqueidentifier MeteringPointId
uniqueidentifier Tenant
datetimeoffset EntityCreatedDateTime
datetimeoffset EntityUpdatedDateTime
uniqueidentifier EntityCreatedAuthToken
uniqueidentifier EntityUpdatedAuthToken
bit Concealed
}
"CRM.Customer_SBI" {
uniqueidentifier Id PK
uniqueidentifier CustomerId FK
uniqueidentifier SBIId FK
bit IsMainSBI
uniqueidentifier Tenant
datetimeoffset EntityCreatedDateTime
datetimeoffset EntityUpdatedDateTime
uniqueidentifier EntityCreatedAuthToken
uniqueidentifier EntityUpdatedAuthToken
bit Concealed
}
"CRM.Customers" {
uniqueidentifier Id PK
nvarchar IBAN
nvarchar VATNumber
nvarchar Website
uniqueidentifier Tenant
datetimeoffset EntityCreatedDateTime
datetimeoffset EntityUpdatedDateTime
uniqueidentifier EntityCreatedAuthToken
uniqueidentifier EntityUpdatedAuthToken
nvarchar ChamberOfCommerceNumber
uniqueidentifier CollectiveId FK
nvarchar LegalForm
nvarchar LegalFormCode
uniqueidentifier ChatId
bit IsVirtual
nvarchar Name
nvarchar InternalReference
uniqueidentifier AccountManagerUserId
bit Concealed
}
"CRM.CustomerAddresses" }o--|| "CRM.Customers" : "CustomerId"
"CRM.CustomerNames" }o--|| "CRM.Customers" : "CustomerId"
"CRM.Customer_CategoryLabel" }o--|| "CRM.Customers" : "CustomerId"
"CRM.Customer_MeteringPoint" }o--|| "CRM.Customers" : "CustomerId"
"CRM.Customer_SBI" }o--|| "CRM.Customers" : "CustomerId"
"CRM.Customer_SBI" }o--|| "CRM.SBIs" : "SBIId"
"CRM.FlexControllers" }o--|| "CRM.Customers" : "CustomerId"
"CRM.ProductComponentModelPricingRequests" }o--|| "CRM.Customers" : "CustomerId"
"CRM.PropositionModelPricingRequests" }o--|| "CRM.Customers" : "CustomerId"
"CRM.SalesBatches" }o--|| "CRM.Customers" : "CustomerId"
"CRM.SalesBatchGenerators" }o--|| "CRM.Customers" : "CustomerId"
"CRM.Sites" }o--|| "CRM.Customers" : "CustomerId"
"CRM.ProductComponentModelPricingRequest_Customer" }o--|| "CRM.Customers" : "CustomerId"
"CRM.PropositionModelPricingRequest_Customer" }o--|| "CRM.Customers" : "CustomerId"
"CRM.EstimatedSalesVolumes" }o--|| "CRM.Customers" : "CustomerId"
"CRM.Contracts" }o--|| "CRM.Customers" : "CustomerId"
"CRM.Customer_Contact" }o--|| "CRM.Customers" : "CustomerId"
"CRM.Customers" }o--|| "CRM.Collectives" : "CollectiveId"
erDiagram
"CRM.CustomerAddresses" {
uniqueidentifier Id PK
uniqueidentifier CustomerId FK
int AddressType
nvarchar Street
nvarchar HouseNumber
nvarchar Suffix
nvarchar PostalCode
nvarchar City
nvarchar Country
uniqueidentifier Tenant
datetimeoffset EntityCreatedDateTime
datetimeoffset EntityUpdatedDateTime
uniqueidentifier EntityCreatedAuthToken
uniqueidentifier EntityUpdatedAuthToken
bit Concealed
}
"CRM.CustomerNames" {
uniqueidentifier Id PK
uniqueidentifier CustomerId FK
nvarchar Name
int NameType
uniqueidentifier Tenant
datetimeoffset EntityCreatedDateTime
datetimeoffset EntityUpdatedDateTime
uniqueidentifier EntityCreatedAuthToken
uniqueidentifier EntityUpdatedAuthToken
bit Concealed
}
"CRM.Customer_CategoryLabel" {
uniqueidentifier Id PK
uniqueidentifier CustomerId FK
uniqueidentifier CategoryId
uniqueidentifier CategoryLabelId
uniqueidentifier Tenant
datetimeoffset EntityCreatedDateTime
datetimeoffset EntityUpdatedDateTime
uniqueidentifier EntityCreatedAuthToken
uniqueidentifier EntityUpdatedAuthToken
bit Concealed
}
"CRM.Customer_MeteringPoint" {
uniqueidentifier Id PK
uniqueidentifier CustomerId FK
uniqueidentifier MeteringPointId
uniqueidentifier Tenant
datetimeoffset EntityCreatedDateTime
datetimeoffset EntityUpdatedDateTime
uniqueidentifier EntityCreatedAuthToken
uniqueidentifier EntityUpdatedAuthToken
bit Concealed
}
"CRM.Customer_SBI" {
uniqueidentifier Id PK
uniqueidentifier CustomerId FK
uniqueidentifier SBIId FK
bit IsMainSBI
uniqueidentifier Tenant
datetimeoffset EntityCreatedDateTime
datetimeoffset EntityUpdatedDateTime
uniqueidentifier EntityCreatedAuthToken
uniqueidentifier EntityUpdatedAuthToken
bit Concealed
}
"CRM.Customers" {
uniqueidentifier Id PK
nvarchar IBAN
nvarchar VATNumber
nvarchar Website
uniqueidentifier Tenant
datetimeoffset EntityCreatedDateTime
datetimeoffset EntityUpdatedDateTime
uniqueidentifier EntityCreatedAuthToken
uniqueidentifier EntityUpdatedAuthToken
nvarchar ChamberOfCommerceNumber
uniqueidentifier CollectiveId FK
nvarchar LegalForm
nvarchar LegalFormCode
uniqueidentifier ChatId
bit IsVirtual
nvarchar Name
nvarchar InternalReference
uniqueidentifier AccountManagerUserId
bit Concealed
}
"CRM.CustomerAddresses" }o--|| "CRM.Customers" : "CustomerId"
"CRM.CustomerNames" }o--|| "CRM.Customers" : "CustomerId"
"CRM.Customer_CategoryLabel" }o--|| "CRM.Customers" : "CustomerId"
"CRM.Customer_MeteringPoint" }o--|| "CRM.Customers" : "CustomerId"
"CRM.Customer_SBI" }o--|| "CRM.Customers" : "CustomerId"
"CRM.Customer_SBI" }o--|| "CRM.SBIs" : "SBIId"
"CRM.FlexControllers" }o--|| "CRM.Customers" : "CustomerId"
"CRM.ProductComponentModelPricingRequests" }o--|| "CRM.Customers" : "CustomerId"
"CRM.PropositionModelPricingRequests" }o--|| "CRM.Customers" : "CustomerId"
"CRM.SalesBatches" }o--|| "CRM.Customers" : "CustomerId"
"CRM.SalesBatchGenerators" }o--|| "CRM.Customers" : "CustomerId"
"CRM.Sites" }o--|| "CRM.Customers" : "CustomerId"
"CRM.ProductComponentModelPricingRequest_Customer" }o--|| "CRM.Customers" : "CustomerId"
"CRM.PropositionModelPricingRequest_Customer" }o--|| "CRM.Customers" : "CustomerId"
"CRM.EstimatedSalesVolumes" }o--|| "CRM.Customers" : "CustomerId"
"CRM.Contracts" }o--|| "CRM.Customers" : "CustomerId"
"CRM.Customer_Contact" }o--|| "CRM.Customers" : "CustomerId"
"CRM.Customers" }o--|| "CRM.Collectives" : "CollectiveId"
{
"definitions": {
"CRM.Customer_CategoryLabel": {
"properties": {
"Concealed": {
"type": "boolean",
"description": "bit"
},
"EntityUpdatedAuthToken": {
"format": "uuid",
"description": "uniqueidentifier",
"type": "string"
},
"Id": {
"format": "uuid",
"description": "uniqueidentifier",
"type": "string"
},
"CategoryLabelId": {
"format": "uuid",
"description": "uniqueidentifier",
"type": "string"
},
"CustomerId": {
"type": "string",
"description": "FK to CRM.Customers"
},
"EntityCreatedDateTime": {
"format": "date-time",
"description": "datetimeoffset",
"type": "string"
},
"EntityUpdatedDateTime": {
"format": "date-time",
"description": "datetimeoffset",
"type": "string"
},
"CategoryId": {
"format": "uuid",
"description": "uniqueidentifier",
"type": "string"
},
"EntityCreatedAuthToken": {
"format": "uuid",
"description": "uniqueidentifier",
"type": "string"
},
"Tenant": {
"format": "uuid",
"description": "uniqueidentifier",
"type": "string"
}
},
"type": "object"
},
"CRM.CustomerAddresses": {
"properties": {
"Street": {
"type": "string",
"description": "nvarchar"
},
"Country": {
"type": "string",
"description": "nvarchar"
},
"Id": {
"format": "uuid",
"description": "uniqueidentifier",
"type": "string"
},
"EntityUpdatedAuthToken": {
"format": "uuid",
"description": "uniqueidentifier",
"type": "string"
},
"Concealed": {
"type": "boolean",
"description": "bit"
},
"EntityCreatedAuthToken": {
"format": "uuid",
"description": "uniqueidentifier",
"type": "string"
},
"HouseNumber": {
"type": "string",
"description": "nvarchar"
},
"City": {
"type": "string",
"description": "nvarchar"
},
"Suffix": {
"type": "string",
"description": "nvarchar"
},
"EntityUpdatedDateTime": {
"format": "date-time",
"description": "datetimeoffset",
"type": "string"
},
"CustomerId": {
"type": "string",
"description": "FK to CRM.Customers"
},
"Tenant": {
"format": "uuid",
"description": "uniqueidentifier",
"type": "string"
},
"PostalCode": {
"type": "string",
"description": "nvarchar"
},
"EntityCreatedDateTime": {
"format": "date-time",
"description": "datetimeoffset",
"type": "string"
},
"AddressType": {
"type": "integer",
"description": "int"
}
},
"type": "object"
},
"CRM.Customers": {
"properties": {
"Concealed": {
"type": "boolean",
"description": "bit"
},
"Id": {
"format": "uuid",
"description": "uniqueidentifier",
"type": "string"
},
"EntityUpdatedAuthToken": {
"format": "uuid",
"description": "uniqueidentifier",
"type": "string"
},
"Name": {
"type": "string",
"description": "nvarchar"
},
"IBAN": {
"type": "string",
"description": "nvarchar"
},
"EntityCreatedAuthToken": {
"format": "uuid",
"description": "uniqueidentifier",
"type": "string"
},
"IsVirtual": {
"type": "boolean",
"description": "bit"
},
"ChamberOfCommerceNumber": {
"type": "string",
"description": "nvarchar"
},
"Website": {
"type": "string",
"description": "nvarchar"
},
"EntityUpdatedDateTime": {
"format": "date-time",
"description": "datetimeoffset",
"type": "string"
},
"LegalFormCode": {
"type": "string",
"description": "nvarchar"
},
"CollectiveId": {
"type": "string",
"description": "FK to CRM.Collectives"
},
"Tenant": {
"format": "uuid",
"description": "uniqueidentifier",
"type": "string"
},
"InternalReference": {
"type": "string",
"description": "nvarchar"
},
"AccountManagerUserId": {
"format": "uuid",
"description": "uniqueidentifier",
"type": "string"
},
"VATNumber": {
"type": "string",
"description": "nvarchar"
},
"ChatId": {
"format": "uuid",
"description": "uniqueidentifier",
"type": "string"
},
"EntityCreatedDateTime": {
"format": "date-time",
"description": "datetimeoffset",
"type": "string"
},
"LegalForm": {
"type": "string",
"description": "nvarchar"
}
},
"type": "object"
},
"CRM.Customer_SBI": {
"properties": {
"Concealed": {
"type": "boolean",
"description": "bit"
},
"EntityUpdatedAuthToken": {
"format": "uuid",
"description": "uniqueidentifier",
"type": "string"
},
"Id": {
"format": "uuid",
"description": "uniqueidentifier",
"type": "string"
},
"SBIId": {
"type": "string",
"description": "FK to CRM.SBIs"
},
"CustomerId": {
"type": "string",
"description": "FK to CRM.Customers"
},
"EntityCreatedDateTime": {
"format": "date-time",
"description": "datetimeoffset",
"type": "string"
},
"EntityUpdatedDateTime": {
"format": "date-time",
"description": "datetimeoffset",
"type": "string"
},
"IsMainSBI": {
"type": "boolean",
"description": "bit"
},
"EntityCreatedAuthToken": {
"format": "uuid",
"description": "uniqueidentifier",
"type": "string"
},
"Tenant": {
"format": "uuid",
"description": "uniqueidentifier",
"type": "string"
}
},
"type": "object"
},
"CRM.Customer_MeteringPoint": {
"properties": {
"Concealed": {
"type": "boolean",
"description": "bit"
},
"EntityUpdatedAuthToken": {
"format": "uuid",
"description": "uniqueidentifier",
"type": "string"
},
"Id": {
"format": "uuid",
"description": "uniqueidentifier",
"type": "string"
},
"CustomerId": {
"type": "string",
"description": "FK to CRM.Customers"
},
"MeteringPointId": {
"format": "uuid",
"description": "uniqueidentifier",
"type": "string"
},
"EntityCreatedDateTime": {
"format": "date-time",
"description": "datetimeoffset",
"type": "string"
},
"EntityUpdatedDateTime": {
"format": "date-time",
"description": "datetimeoffset",
"type": "string"
},
"EntityCreatedAuthToken": {
"format": "uuid",
"description": "uniqueidentifier",
"type": "string"
},
"Tenant": {
"format": "uuid",
"description": "uniqueidentifier",
"type": "string"
}
},
"type": "object"
},
"CRM.CustomerNames": {
"properties": {
"Concealed": {
"type": "boolean",
"description": "bit"
},
"EntityUpdatedAuthToken": {
"format": "uuid",
"description": "uniqueidentifier",
"type": "string"
},
"Id": {
"format": "uuid",
"description": "uniqueidentifier",
"type": "string"
},
"CustomerId": {
"type": "string",
"description": "FK to CRM.Customers"
},
"EntityCreatedDateTime": {
"format": "date-time",
"description": "datetimeoffset",
"type": "string"
},
"Name": {
"type": "string",
"description": "nvarchar"
},
"EntityUpdatedDateTime": {
"format": "date-time",
"description": "datetimeoffset",
"type": "string"
},
"NameType": {
"type": "integer",
"description": "int"
},
"EntityCreatedAuthToken": {
"format": "uuid",
"description": "uniqueidentifier",
"type": "string"
},
"Tenant": {
"format": "uuid",
"description": "uniqueidentifier",
"type": "string"
}
},
"type": "object"
}
},
"title": "CRM.Customer",
"$comment": "Generated from Mermaid ERD with property-level descriptions",
"$schema": "http://json-schema.org/draft-07/schema#",
"type": "object"
}Flex Controller
Aggregate Root: FlexController
Controls flex asset operations and manages the relationship between sites, installations, and flex asset processors.
erDiagram
"CRM.FlexController_ControlFlexAssetResultProcessor" {
uniqueidentifier Id PK
uniqueidentifier FlexControllerId FK
uniqueidentifier ControlFlexAssetResultProcessorId FK
uniqueidentifier Tenant
datetimeoffset EntityCreatedDateTime
datetimeoffset EntityUpdatedDateTime
uniqueidentifier EntityCreatedAuthToken
uniqueidentifier EntityUpdatedAuthToken
bit Concealed
}
"CRM.FlexController_ControlFlexAssetValueProvider" {
uniqueidentifier Id PK
uniqueidentifier FlexControllerId FK
uniqueidentifier ControlFlexAssetValueProviderId FK
uniqueidentifier Tenant
datetimeoffset EntityCreatedDateTime
datetimeoffset EntityUpdatedDateTime
uniqueidentifier EntityCreatedAuthToken
uniqueidentifier EntityUpdatedAuthToken
bit Concealed
}
"CRM.FlexController_Installation" {
uniqueidentifier Id PK
uniqueidentifier FlexControllerId FK
uniqueidentifier InstallationId
uniqueidentifier Tenant
datetimeoffset EntityCreatedDateTime
datetimeoffset EntityUpdatedDateTime
uniqueidentifier EntityCreatedAuthToken
uniqueidentifier EntityUpdatedAuthToken
bit Concealed
}
"CRM.FlexController_Site" {
uniqueidentifier Id PK
uniqueidentifier FlexControllerId FK
uniqueidentifier SiteId
uniqueidentifier Tenant
datetimeoffset EntityCreatedDateTime
datetimeoffset EntityUpdatedDateTime
uniqueidentifier EntityCreatedAuthToken
uniqueidentifier EntityUpdatedAuthToken
bit Concealed
}
"CRM.FlexController_Site_MeteringPoint" {
uniqueidentifier Id PK
uniqueidentifier FlexControllerId FK
uniqueidentifier SiteMeteringPointId
uniqueidentifier Tenant
datetimeoffset EntityCreatedDateTime
datetimeoffset EntityUpdatedDateTime
uniqueidentifier EntityCreatedAuthToken
uniqueidentifier EntityUpdatedAuthToken
bit Concealed
}
"CRM.FlexControllers" {
uniqueidentifier Id PK
nvarchar Name
nvarchar Description
nvarchar Schedule
uniqueidentifier ScriptId
uniqueidentifier CustomerId FK
uniqueidentifier Tenant
datetimeoffset EntityCreatedDateTime
datetimeoffset EntityUpdatedDateTime
uniqueidentifier EntityCreatedAuthToken
uniqueidentifier EntityUpdatedAuthToken
bit Concealed
}
"CRM.FlexController_ControlFlexAssetResultProcessor" }o--|| "CRM.ControlFlexAssetResultProcessors" : "ControlFlexAssetResultProcessorId"
"CRM.FlexController_ControlFlexAssetResultProcessor" }o--|| "CRM.FlexControllers" : "FlexControllerId"
"CRM.FlexController_ControlFlexAssetValueProvider" }o--|| "CRM.ControlFlexAssetValueProviders" : "ControlFlexAssetValueProviderId"
"CRM.FlexController_ControlFlexAssetValueProvider" }o--|| "CRM.FlexControllers" : "FlexControllerId"
"CRM.FlexController_Installation" }o--|| "CRM.FlexControllers" : "FlexControllerId"
"CRM.FlexController_Site" }o--|| "CRM.FlexControllers" : "FlexControllerId"
"CRM.FlexController_Site_MeteringPoint" }o--|| "CRM.FlexControllers" : "FlexControllerId"
"CRM.FlexControllers" }o--|| "CRM.Customers" : "CustomerId"
erDiagram
"CRM.FlexController_ControlFlexAssetResultProcessor" {
uniqueidentifier Id PK
uniqueidentifier FlexControllerId FK
uniqueidentifier ControlFlexAssetResultProcessorId FK
uniqueidentifier Tenant
datetimeoffset EntityCreatedDateTime
datetimeoffset EntityUpdatedDateTime
uniqueidentifier EntityCreatedAuthToken
uniqueidentifier EntityUpdatedAuthToken
bit Concealed
}
"CRM.FlexController_ControlFlexAssetValueProvider" {
uniqueidentifier Id PK
uniqueidentifier FlexControllerId FK
uniqueidentifier ControlFlexAssetValueProviderId FK
uniqueidentifier Tenant
datetimeoffset EntityCreatedDateTime
datetimeoffset EntityUpdatedDateTime
uniqueidentifier EntityCreatedAuthToken
uniqueidentifier EntityUpdatedAuthToken
bit Concealed
}
"CRM.FlexController_Installation" {
uniqueidentifier Id PK
uniqueidentifier FlexControllerId FK
uniqueidentifier InstallationId
uniqueidentifier Tenant
datetimeoffset EntityCreatedDateTime
datetimeoffset EntityUpdatedDateTime
uniqueidentifier EntityCreatedAuthToken
uniqueidentifier EntityUpdatedAuthToken
bit Concealed
}
"CRM.FlexController_Site" {
uniqueidentifier Id PK
uniqueidentifier FlexControllerId FK
uniqueidentifier SiteId
uniqueidentifier Tenant
datetimeoffset EntityCreatedDateTime
datetimeoffset EntityUpdatedDateTime
uniqueidentifier EntityCreatedAuthToken
uniqueidentifier EntityUpdatedAuthToken
bit Concealed
}
"CRM.FlexController_Site_MeteringPoint" {
uniqueidentifier Id PK
uniqueidentifier FlexControllerId FK
uniqueidentifier SiteMeteringPointId
uniqueidentifier Tenant
datetimeoffset EntityCreatedDateTime
datetimeoffset EntityUpdatedDateTime
uniqueidentifier EntityCreatedAuthToken
uniqueidentifier EntityUpdatedAuthToken
bit Concealed
}
"CRM.FlexControllers" {
uniqueidentifier Id PK
nvarchar Name
nvarchar Description
nvarchar Schedule
uniqueidentifier ScriptId
uniqueidentifier CustomerId FK
uniqueidentifier Tenant
datetimeoffset EntityCreatedDateTime
datetimeoffset EntityUpdatedDateTime
uniqueidentifier EntityCreatedAuthToken
uniqueidentifier EntityUpdatedAuthToken
bit Concealed
}
"CRM.FlexController_ControlFlexAssetResultProcessor" }o--|| "CRM.ControlFlexAssetResultProcessors" : "ControlFlexAssetResultProcessorId"
"CRM.FlexController_ControlFlexAssetResultProcessor" }o--|| "CRM.FlexControllers" : "FlexControllerId"
"CRM.FlexController_ControlFlexAssetValueProvider" }o--|| "CRM.ControlFlexAssetValueProviders" : "ControlFlexAssetValueProviderId"
"CRM.FlexController_ControlFlexAssetValueProvider" }o--|| "CRM.FlexControllers" : "FlexControllerId"
"CRM.FlexController_Installation" }o--|| "CRM.FlexControllers" : "FlexControllerId"
"CRM.FlexController_Site" }o--|| "CRM.FlexControllers" : "FlexControllerId"
"CRM.FlexController_Site_MeteringPoint" }o--|| "CRM.FlexControllers" : "FlexControllerId"
"CRM.FlexControllers" }o--|| "CRM.Customers" : "CustomerId"
{
"definitions": {
"CRM.FlexController_Site": {
"properties": {
"Concealed": {
"type": "boolean",
"description": "bit"
},
"FlexControllerId": {
"type": "string",
"description": "FK to CRM.FlexControllers"
},
"Id": {
"format": "uuid",
"description": "uniqueidentifier",
"type": "string"
},
"SiteId": {
"format": "uuid",
"description": "uniqueidentifier",
"type": "string"
},
"EntityUpdatedAuthToken": {
"format": "uuid",
"description": "uniqueidentifier",
"type": "string"
},
"EntityCreatedDateTime": {
"format": "date-time",
"description": "datetimeoffset",
"type": "string"
},
"EntityUpdatedDateTime": {
"format": "date-time",
"description": "datetimeoffset",
"type": "string"
},
"EntityCreatedAuthToken": {
"format": "uuid",
"description": "uniqueidentifier",
"type": "string"
},
"Tenant": {
"format": "uuid",
"description": "uniqueidentifier",
"type": "string"
}
},
"type": "object"
},
"CRM.FlexControllers": {
"properties": {
"Concealed": {
"type": "boolean",
"description": "bit"
},
"ScriptId": {
"format": "uuid",
"description": "uniqueidentifier",
"type": "string"
},
"Description": {
"type": "string",
"description": "nvarchar"
},
"EntityUpdatedAuthToken": {
"format": "uuid",
"description": "uniqueidentifier",
"type": "string"
},
"Name": {
"type": "string",
"description": "nvarchar"
},
"EntityCreatedAuthToken": {
"format": "uuid",
"description": "uniqueidentifier",
"type": "string"
},
"CustomerId": {
"type": "string",
"description": "FK to CRM.Customers"
},
"EntityUpdatedDateTime": {
"format": "date-time",
"description": "datetimeoffset",
"type": "string"
},
"Schedule": {
"type": "string",
"description": "nvarchar"
},
"Tenant": {
"format": "uuid",
"description": "uniqueidentifier",
"type": "string"
},
"Id": {
"format": "uuid",
"description": "uniqueidentifier",
"type": "string"
},
"EntityCreatedDateTime": {
"format": "date-time",
"description": "datetimeoffset",
"type": "string"
}
},
"type": "object"
},
"CRM.FlexController_Site_MeteringPoint": {
"properties": {
"Concealed": {
"type": "boolean",
"description": "bit"
},
"FlexControllerId": {
"type": "string",
"description": "FK to CRM.FlexControllers"
},
"Id": {
"format": "uuid",
"description": "uniqueidentifier",
"type": "string"
},
"SiteMeteringPointId": {
"format": "uuid",
"description": "uniqueidentifier",
"type": "string"
},
"EntityUpdatedAuthToken": {
"format": "uuid",
"description": "uniqueidentifier",
"type": "string"
},
"EntityCreatedDateTime": {
"format": "date-time",
"description": "datetimeoffset",
"type": "string"
},
"EntityUpdatedDateTime": {
"format": "date-time",
"description": "datetimeoffset",
"type": "string"
},
"EntityCreatedAuthToken": {
"format": "uuid",
"description": "uniqueidentifier",
"type": "string"
},
"Tenant": {
"format": "uuid",
"description": "uniqueidentifier",
"type": "string"
}
},
"type": "object"
},
"CRM.FlexController_ControlFlexAssetResultProcessor": {
"properties": {
"Concealed": {
"type": "boolean",
"description": "bit"
},
"FlexControllerId": {
"type": "string",
"description": "FK to CRM.FlexControllers"
},
"Id": {
"format": "uuid",
"description": "uniqueidentifier",
"type": "string"
},
"EntityUpdatedAuthToken": {
"format": "uuid",
"description": "uniqueidentifier",
"type": "string"
},
"ControlFlexAssetResultProcessorId": {
"type": "string",
"description": "FK to CRM.ControlFlexAssetResultProcessors"
},
"EntityCreatedDateTime": {
"format": "date-time",
"description": "datetimeoffset",
"type": "string"
},
"EntityUpdatedDateTime": {
"format": "date-time",
"description": "datetimeoffset",
"type": "string"
},
"EntityCreatedAuthToken": {
"format": "uuid",
"description": "uniqueidentifier",
"type": "string"
},
"Tenant": {
"format": "uuid",
"description": "uniqueidentifier",
"type": "string"
}
},
"type": "object"
},
"CRM.FlexController_Installation": {
"properties": {
"Concealed": {
"type": "boolean",
"description": "bit"
},
"FlexControllerId": {
"type": "string",
"description": "FK to CRM.FlexControllers"
},
"Id": {
"format": "uuid",
"description": "uniqueidentifier",
"type": "string"
},
"InstallationId": {
"format": "uuid",
"description": "uniqueidentifier",
"type": "string"
},
"EntityUpdatedAuthToken": {
"format": "uuid",
"description": "uniqueidentifier",
"type": "string"
},
"EntityCreatedDateTime": {
"format": "date-time",
"description": "datetimeoffset",
"type": "string"
},
"EntityUpdatedDateTime": {
"format": "date-time",
"description": "datetimeoffset",
"type": "string"
},
"EntityCreatedAuthToken": {
"format": "uuid",
"description": "uniqueidentifier",
"type": "string"
},
"Tenant": {
"format": "uuid",
"description": "uniqueidentifier",
"type": "string"
}
},
"type": "object"
},
"CRM.FlexController_ControlFlexAssetValueProvider": {
"properties": {
"Concealed": {
"type": "boolean",
"description": "bit"
},
"FlexControllerId": {
"type": "string",
"description": "FK to CRM.FlexControllers"
},
"Id": {
"format": "uuid",
"description": "uniqueidentifier",
"type": "string"
},
"EntityCreatedAuthToken": {
"format": "uuid",
"description": "uniqueidentifier",
"type": "string"
},
"EntityUpdatedAuthToken": {
"format": "uuid",
"description": "uniqueidentifier",
"type": "string"
},
"ControlFlexAssetValueProviderId": {
"type": "string",
"description": "FK to CRM.ControlFlexAssetValueProviders"
},
"EntityUpdatedDateTime": {
"format": "date-time",
"description": "datetimeoffset",
"type": "string"
},
"EntityCreatedDateTime": {
"format": "date-time",
"description": "datetimeoffset",
"type": "string"
},
"Tenant": {
"format": "uuid",
"description": "uniqueidentifier",
"type": "string"
}
},
"type": "object"
}
},
"title": "CRM.FlexController",
"$comment": "Generated from Mermaid ERD with property-level descriptions",
"$schema": "http://json-schema.org/draft-07/schema#",
"type": "object"
}Installation Type
Aggregate Root: InstallationType
Defines different types of installations with their associated keys and configurations.
erDiagram
"CRM.InstallationTypeKeys" {
uniqueidentifier Id PK
uniqueidentifier InstallationTypeId FK
nvarchar Key
bit Active
uniqueidentifier Tenant
datetimeoffset EntityCreatedDateTime
datetimeoffset EntityUpdatedDateTime
uniqueidentifier EntityCreatedAuthToken
uniqueidentifier EntityUpdatedAuthToken
bit Concealed
}
"CRM.InstallationTypes" {
uniqueidentifier Id PK
nvarchar Name
bit Active
uniqueidentifier Tenant
datetimeoffset EntityCreatedDateTime
datetimeoffset EntityUpdatedDateTime
uniqueidentifier EntityCreatedAuthToken
uniqueidentifier EntityUpdatedAuthToken
bit Concealed
}
"CRM.InstallationTypeKeys" }o--|| "CRM.InstallationTypes" : "InstallationTypeId"
"CRM.InstallationValues" }o--|| "CRM.InstallationTypeKeys" : "InstallationTypeKeyId"
"CRM.Installations" }o--|| "CRM.InstallationTypes" : "InstallationTypeId"
erDiagram
"CRM.InstallationTypeKeys" {
uniqueidentifier Id PK
uniqueidentifier InstallationTypeId FK
nvarchar Key
bit Active
uniqueidentifier Tenant
datetimeoffset EntityCreatedDateTime
datetimeoffset EntityUpdatedDateTime
uniqueidentifier EntityCreatedAuthToken
uniqueidentifier EntityUpdatedAuthToken
bit Concealed
}
"CRM.InstallationTypes" {
uniqueidentifier Id PK
nvarchar Name
bit Active
uniqueidentifier Tenant
datetimeoffset EntityCreatedDateTime
datetimeoffset EntityUpdatedDateTime
uniqueidentifier EntityCreatedAuthToken
uniqueidentifier EntityUpdatedAuthToken
bit Concealed
}
"CRM.InstallationTypeKeys" }o--|| "CRM.InstallationTypes" : "InstallationTypeId"
"CRM.InstallationValues" }o--|| "CRM.InstallationTypeKeys" : "InstallationTypeKeyId"
"CRM.Installations" }o--|| "CRM.InstallationTypes" : "InstallationTypeId"
{
"definitions": {
"CRM.InstallationTypes": {
"properties": {
"Concealed": {
"type": "boolean",
"description": "bit"
},
"EntityUpdatedAuthToken": {
"format": "uuid",
"description": "uniqueidentifier",
"type": "string"
},
"Id": {
"format": "uuid",
"description": "uniqueidentifier",
"type": "string"
},
"EntityCreatedDateTime": {
"format": "date-time",
"description": "datetimeoffset",
"type": "string"
},
"Name": {
"type": "string",
"description": "nvarchar"
},
"EntityUpdatedDateTime": {
"format": "date-time",
"description": "datetimeoffset",
"type": "string"
},
"Active": {
"type": "boolean",
"description": "bit"
},
"EntityCreatedAuthToken": {
"format": "uuid",
"description": "uniqueidentifier",
"type": "string"
},
"Tenant": {
"format": "uuid",
"description": "uniqueidentifier",
"type": "string"
}
},
"type": "object"
},
"CRM.InstallationTypeKeys": {
"properties": {
"Concealed": {
"type": "boolean",
"description": "bit"
},
"InstallationTypeId": {
"type": "string",
"description": "FK to CRM.InstallationTypes"
},
"Id": {
"format": "uuid",
"description": "uniqueidentifier",
"type": "string"
},
"Key": {
"type": "string",
"description": "nvarchar"
},
"EntityUpdatedAuthToken": {
"format": "uuid",
"description": "uniqueidentifier",
"type": "string"
},
"EntityCreatedDateTime": {
"format": "date-time",
"description": "datetimeoffset",
"type": "string"
},
"EntityUpdatedDateTime": {
"format": "date-time",
"description": "datetimeoffset",
"type": "string"
},
"Active": {
"type": "boolean",
"description": "bit"
},
"EntityCreatedAuthToken": {
"format": "uuid",
"description": "uniqueidentifier",
"type": "string"
},
"Tenant": {
"format": "uuid",
"description": "uniqueidentifier",
"type": "string"
}
},
"type": "object"
}
},
"title": "CRM.InstallationType",
"$comment": "Generated from Mermaid ERD with property-level descriptions",
"$schema": "http://json-schema.org/draft-07/schema#",
"type": "object"
}Model Contract Template
Aggregate Root: ModelContractTemplate
Represents model-based contract templates with predefined structures for automated contract generation.
erDiagram
"CRM.ModelContractTemplateDetails" {
uniqueidentifier Id PK
uniqueidentifier ModelContractTemplateId FK
nvarchar Key
nvarchar Value
int FormatType
uniqueidentifier CustomEnumId FK
uniqueidentifier Tenant
datetimeoffset EntityCreatedDateTime
datetimeoffset EntityUpdatedDateTime
uniqueidentifier EntityCreatedAuthToken
uniqueidentifier EntityUpdatedAuthToken
bit Concealed
int PricingStage
bit UserOverwritableOnPricing
}
"CRM.ModelContractTemplates" {
uniqueidentifier Id PK
nvarchar Name
nvarchar Description
bit IsActive
uniqueidentifier Tenant
datetimeoffset EntityCreatedDateTime
datetimeoffset EntityUpdatedDateTime
uniqueidentifier EntityCreatedAuthToken
uniqueidentifier EntityUpdatedAuthToken
bit Concealed
}
"CRM.ModelContractTemplateDetails" }o--|| "CRM.CustomEnums" : "CustomEnumId"
"CRM.ModelContractTemplateDetails" }o--|| "Pricing.CustomEnums" : "CustomEnumId"
"CRM.ModelContractTemplateDetails" }o--|| "ApplicationCore.CustomEnums" : "CustomEnumId"
"CRM.ModelContractTemplateDetails" }o--|| "PM.CustomEnums" : "CustomEnumId"
"CRM.ModelContractTemplateDetails" }o--|| "CRM.ModelContractTemplates" : "ModelContractTemplateId"
"CRM.ProductComponentModelPricingRequests" }o--|| "CRM.ModelContractTemplates" : "ModelContractTemplateId"
"CRM.PropositionModelPricingRequests" }o--|| "CRM.ModelContractTemplates" : "ModelContractTemplateId"
erDiagram
"CRM.ModelContractTemplateDetails" {
uniqueidentifier Id PK
uniqueidentifier ModelContractTemplateId FK
nvarchar Key
nvarchar Value
int FormatType
uniqueidentifier CustomEnumId FK
uniqueidentifier Tenant
datetimeoffset EntityCreatedDateTime
datetimeoffset EntityUpdatedDateTime
uniqueidentifier EntityCreatedAuthToken
uniqueidentifier EntityUpdatedAuthToken
bit Concealed
int PricingStage
bit UserOverwritableOnPricing
}
"CRM.ModelContractTemplates" {
uniqueidentifier Id PK
nvarchar Name
nvarchar Description
bit IsActive
uniqueidentifier Tenant
datetimeoffset EntityCreatedDateTime
datetimeoffset EntityUpdatedDateTime
uniqueidentifier EntityCreatedAuthToken
uniqueidentifier EntityUpdatedAuthToken
bit Concealed
}
"CRM.ModelContractTemplateDetails" }o--|| "CRM.CustomEnums" : "CustomEnumId"
"CRM.ModelContractTemplateDetails" }o--|| "Pricing.CustomEnums" : "CustomEnumId"
"CRM.ModelContractTemplateDetails" }o--|| "ApplicationCore.CustomEnums" : "CustomEnumId"
"CRM.ModelContractTemplateDetails" }o--|| "PM.CustomEnums" : "CustomEnumId"
"CRM.ModelContractTemplateDetails" }o--|| "CRM.ModelContractTemplates" : "ModelContractTemplateId"
"CRM.ProductComponentModelPricingRequests" }o--|| "CRM.ModelContractTemplates" : "ModelContractTemplateId"
"CRM.PropositionModelPricingRequests" }o--|| "CRM.ModelContractTemplates" : "ModelContractTemplateId"
{
"definitions": {
"CRM.ModelContractTemplates": {
"properties": {
"Concealed": {
"type": "boolean",
"description": "bit"
},
"EntityUpdatedAuthToken": {
"format": "uuid",
"description": "uniqueidentifier",
"type": "string"
},
"Id": {
"format": "uuid",
"description": "uniqueidentifier",
"type": "string"
},
"Description": {
"type": "string",
"description": "nvarchar"
},
"EntityCreatedDateTime": {
"format": "date-time",
"description": "datetimeoffset",
"type": "string"
},
"Name": {
"type": "string",
"description": "nvarchar"
},
"EntityUpdatedDateTime": {
"format": "date-time",
"description": "datetimeoffset",
"type": "string"
},
"IsActive": {
"type": "boolean",
"description": "bit"
},
"EntityCreatedAuthToken": {
"format": "uuid",
"description": "uniqueidentifier",
"type": "string"
},
"Tenant": {
"format": "uuid",
"description": "uniqueidentifier",
"type": "string"
}
},
"type": "object"
},
"CRM.ModelContractTemplateDetails": {
"properties": {
"PricingStage": {
"type": "integer",
"description": "int"
},
"Id": {
"format": "uuid",
"description": "uniqueidentifier",
"type": "string"
},
"EntityUpdatedAuthToken": {
"format": "uuid",
"description": "uniqueidentifier",
"type": "string"
},
"Concealed": {
"type": "boolean",
"description": "bit"
},
"Value": {
"type": "string",
"description": "nvarchar"
},
"EntityCreatedAuthToken": {
"format": "uuid",
"description": "uniqueidentifier",
"type": "string"
},
"ModelContractTemplateId": {
"type": "string",
"description": "FK to CRM.ModelContractTemplates"
},
"UserOverwritableOnPricing": {
"type": "boolean",
"description": "bit"
},
"EntityUpdatedDateTime": {
"format": "date-time",
"description": "datetimeoffset",
"type": "string"
},
"Tenant": {
"format": "uuid",
"description": "uniqueidentifier",
"type": "string"
},
"Key": {
"type": "string",
"description": "nvarchar"
},
"EntityCreatedDateTime": {
"format": "date-time",
"description": "datetimeoffset",
"type": "string"
},
"FormatType": {
"type": "integer",
"description": "int"
},
"CustomEnumId": {
"type": "string",
"description": "FK to PM.CustomEnums"
}
},
"type": "object"
}
},
"title": "CRM.ModelContractTemplate",
"$comment": "Generated from Mermaid ERD with property-level descriptions",
"$schema": "http://json-schema.org/draft-07/schema#",
"type": "object"
}Pricing Request Generator
Aggregate Root: PricingRequestGenerator
Generates pricing requests automatically based on configured models and parameters.
erDiagram
"CRM.ModelPricingRequestKeyValues" {
uniqueidentifier Id PK
uniqueidentifier ModelPricingRequestId FK
nvarchar Key
nvarchar Value
uniqueidentifier Tenant
datetimeoffset EntityCreatedDateTime
datetimeoffset EntityUpdatedDateTime
uniqueidentifier EntityCreatedAuthToken
uniqueidentifier EntityUpdatedAuthToken
bit Concealed
}
"CRM.ModelPricingRequests" {
uniqueidentifier Id PK
nvarchar Name
nvarchar Description
uniqueidentifier PricingRequestGeneratorId FK
uniqueidentifier ContractTemplateId
uniqueidentifier PropositionTemplateId
uniqueidentifier ProductComponentId
uniqueidentifier Tenant
datetimeoffset EntityCreatedDateTime
datetimeoffset EntityUpdatedDateTime
uniqueidentifier EntityCreatedAuthToken
uniqueidentifier EntityUpdatedAuthToken
uniqueidentifier CustomerId
bit Concealed
}
"CRM.PricingRequestGeneratorRuns" {
uniqueidentifier Id PK
uniqueidentifier PricingRequestGeneratorId FK
datetimeoffset RunDateTime
uniqueidentifier Tenant
datetimeoffset EntityCreatedDateTime
datetimeoffset EntityUpdatedDateTime
uniqueidentifier EntityCreatedAuthToken
uniqueidentifier EntityUpdatedAuthToken
bit Concealed
}
"CRM.PricingRequestGenerators" {
uniqueidentifier Id PK
nvarchar Name
nvarchar Description
datetimeoffset Start
datetimeoffset End
bit EditMode
nvarchar Schedule
datetimeoffset NextRunTime
uniqueidentifier Tenant
datetimeoffset EntityCreatedDateTime
datetimeoffset EntityUpdatedDateTime
uniqueidentifier EntityCreatedAuthToken
uniqueidentifier EntityUpdatedAuthToken
bit Concealed
}
"CRM.ModelPricingRequestKeyValues" }o--|| "CRM.ModelPricingRequests" : "ModelPricingRequestId"
"CRM.ModelPricingRequests" }o--|| "CRM.PricingRequestGenerators" : "PricingRequestGeneratorId"
"CRM.PricingRequestGeneratorRuns" }o--|| "CRM.PricingRequestGenerators" : "PricingRequestGeneratorId"
erDiagram
"CRM.ModelPricingRequestKeyValues" {
uniqueidentifier Id PK
uniqueidentifier ModelPricingRequestId FK
nvarchar Key
nvarchar Value
uniqueidentifier Tenant
datetimeoffset EntityCreatedDateTime
datetimeoffset EntityUpdatedDateTime
uniqueidentifier EntityCreatedAuthToken
uniqueidentifier EntityUpdatedAuthToken
bit Concealed
}
"CRM.ModelPricingRequests" {
uniqueidentifier Id PK
nvarchar Name
nvarchar Description
uniqueidentifier PricingRequestGeneratorId FK
uniqueidentifier ContractTemplateId
uniqueidentifier PropositionTemplateId
uniqueidentifier ProductComponentId
uniqueidentifier Tenant
datetimeoffset EntityCreatedDateTime
datetimeoffset EntityUpdatedDateTime
uniqueidentifier EntityCreatedAuthToken
uniqueidentifier EntityUpdatedAuthToken
uniqueidentifier CustomerId
bit Concealed
}
"CRM.PricingRequestGeneratorRuns" {
uniqueidentifier Id PK
uniqueidentifier PricingRequestGeneratorId FK
datetimeoffset RunDateTime
uniqueidentifier Tenant
datetimeoffset EntityCreatedDateTime
datetimeoffset EntityUpdatedDateTime
uniqueidentifier EntityCreatedAuthToken
uniqueidentifier EntityUpdatedAuthToken
bit Concealed
}
"CRM.PricingRequestGenerators" {
uniqueidentifier Id PK
nvarchar Name
nvarchar Description
datetimeoffset Start
datetimeoffset End
bit EditMode
nvarchar Schedule
datetimeoffset NextRunTime
uniqueidentifier Tenant
datetimeoffset EntityCreatedDateTime
datetimeoffset EntityUpdatedDateTime
uniqueidentifier EntityCreatedAuthToken
uniqueidentifier EntityUpdatedAuthToken
bit Concealed
}
"CRM.ModelPricingRequestKeyValues" }o--|| "CRM.ModelPricingRequests" : "ModelPricingRequestId"
"CRM.ModelPricingRequests" }o--|| "CRM.PricingRequestGenerators" : "PricingRequestGeneratorId"
"CRM.PricingRequestGeneratorRuns" }o--|| "CRM.PricingRequestGenerators" : "PricingRequestGeneratorId"
{
"definitions": {
"CRM.PricingRequestGeneratorRuns": {
"properties": {
"Tenant": {
"format": "uuid",
"description": "uniqueidentifier",
"type": "string"
},
"EntityUpdatedAuthToken": {
"format": "uuid",
"description": "uniqueidentifier",
"type": "string"
},
"Id": {
"format": "uuid",
"description": "uniqueidentifier",
"type": "string"
},
"RunDateTime": {
"format": "date-time",
"description": "datetimeoffset",
"type": "string"
},
"Concealed": {
"type": "boolean",
"description": "bit"
},
"EntityCreatedDateTime": {
"format": "date-time",
"description": "datetimeoffset",
"type": "string"
},
"EntityUpdatedDateTime": {
"format": "date-time",
"description": "datetimeoffset",
"type": "string"
},
"EntityCreatedAuthToken": {
"format": "uuid",
"description": "uniqueidentifier",
"type": "string"
},
"PricingRequestGeneratorId": {
"type": "string",
"description": "FK to CRM.PricingRequestGenerators"
}
},
"type": "object"
},
"CRM.PricingRequestGenerators": {
"properties": {
"Concealed": {
"type": "boolean",
"description": "bit"
},
"End": {
"format": "date-time",
"description": "datetimeoffset",
"type": "string"
},
"Description": {
"type": "string",
"description": "nvarchar"
},
"EntityUpdatedAuthToken": {
"format": "uuid",
"description": "uniqueidentifier",
"type": "string"
},
"Name": {
"type": "string",
"description": "nvarchar"
},
"EditMode": {
"type": "boolean",
"description": "bit"
},
"EntityCreatedAuthToken": {
"format": "uuid",
"description": "uniqueidentifier",
"type": "string"
},
"Start": {
"format": "date-time",
"description": "datetimeoffset",
"type": "string"
},
"EntityUpdatedDateTime": {
"format": "date-time",
"description": "datetimeoffset",
"type": "string"
},
"Schedule": {
"type": "string",
"description": "nvarchar"
},
"Tenant": {
"format": "uuid",
"description": "uniqueidentifier",
"type": "string"
},
"NextRunTime": {
"format": "date-time",
"description": "datetimeoffset",
"type": "string"
},
"Id": {
"format": "uuid",
"description": "uniqueidentifier",
"type": "string"
},
"EntityCreatedDateTime": {
"format": "date-time",
"description": "datetimeoffset",
"type": "string"
}
},
"type": "object"
},
"CRM.ModelPricingRequests": {
"properties": {
"Concealed": {
"type": "boolean",
"description": "bit"
},
"Description": {
"type": "string",
"description": "nvarchar"
},
"EntityUpdatedAuthToken": {
"format": "uuid",
"description": "uniqueidentifier",
"type": "string"
},
"ProductComponentId": {
"format": "uuid",
"description": "uniqueidentifier",
"type": "string"
},
"Tenant": {
"format": "uuid",
"description": "uniqueidentifier",
"type": "string"
},
"EntityCreatedAuthToken": {
"format": "uuid",
"description": "uniqueidentifier",
"type": "string"
},
"Name": {
"type": "string",
"description": "nvarchar"
},
"PricingRequestGeneratorId": {
"type": "string",
"description": "FK to CRM.PricingRequestGenerators"
},
"EntityUpdatedDateTime": {
"format": "date-time",
"description": "datetimeoffset",
"type": "string"
},
"CustomerId": {
"format": "uuid",
"description": "uniqueidentifier",
"type": "string"
},
"ContractTemplateId": {
"format": "uuid",
"description": "uniqueidentifier",
"type": "string"
},
"EntityCreatedDateTime": {
"format": "date-time",
"description": "datetimeoffset",
"type": "string"
},
"Id": {
"format": "uuid",
"description": "uniqueidentifier",
"type": "string"
},
"PropositionTemplateId": {
"format": "uuid",
"description": "uniqueidentifier",
"type": "string"
}
},
"type": "object"
},
"CRM.ModelPricingRequestKeyValues": {
"properties": {
"Concealed": {
"type": "boolean",
"description": "bit"
},
"EntityUpdatedAuthToken": {
"format": "uuid",
"description": "uniqueidentifier",
"type": "string"
},
"Id": {
"format": "uuid",
"description": "uniqueidentifier",
"type": "string"
},
"Key": {
"type": "string",
"description": "nvarchar"
},
"EntityCreatedAuthToken": {
"format": "uuid",
"description": "uniqueidentifier",
"type": "string"
},
"Value": {
"type": "string",
"description": "nvarchar"
},
"EntityUpdatedDateTime": {
"format": "date-time",
"description": "datetimeoffset",
"type": "string"
},
"ModelPricingRequestId": {
"type": "string",
"description": "FK to CRM.ModelPricingRequests"
},
"EntityCreatedDateTime": {
"format": "date-time",
"description": "datetimeoffset",
"type": "string"
},
"Tenant": {
"format": "uuid",
"description": "uniqueidentifier",
"type": "string"
}
},
"type": "object"
}
},
"title": "CRM.PricingRequestGenerator",
"$comment": "Generated from Mermaid ERD with property-level descriptions",
"$schema": "http://json-schema.org/draft-07/schema#",
"type": "object"
}Proposition Product Component Model Pricing Request
Aggregate Root: PropositionProductComponentModelPricingRequest
Represents pricing requests for proposition product components with associated brands and sales products.
erDiagram
"CRM.ProductComponentModelPricingRequest_Brand" {
uniqueidentifier Id PK
uniqueidentifier ProductComponentModelPricingRequestId FK
uniqueidentifier BrandId FK
uniqueidentifier Tenant
datetimeoffset EntityCreatedDateTime
datetimeoffset EntityUpdatedDateTime
uniqueidentifier EntityCreatedAuthToken
uniqueidentifier EntityUpdatedAuthToken
bit Concealed
}
"CRM.ProductComponentModelPricingRequest_ProductComponent" {
}
"CRM.ProductComponentModelPricingRequest_SalesProduct" {
}
"CRM.ProductComponentModelPricingRequests" {
uniqueidentifier Id PK
uniqueidentifier ProductComponentId
nvarchar Name
nvarchar Description
uniqueidentifier CustomerId FK
uniqueidentifier ModelContractTemplateId FK
uniqueidentifier Tenant
datetimeoffset EntityCreatedDateTime
datetimeoffset EntityUpdatedDateTime
uniqueidentifier EntityCreatedAuthToken
uniqueidentifier EntityUpdatedAuthToken
nvarchar InternalReference
bit Concealed
int SourceInAdvanceVolumeLimit
}
"CRM.ProductComponentModelPricingRequest_Brand" }o--|| "CRM.Brands" : "BrandId"
"CRM.ProductComponentModelPricingRequest_Brand" }o--|| "CRM.ProductComponentModelPricingRequests" : "ProductComponentModelPricingRequestId"
"CRM.ProductComponentModelPricingRequest_CategoryLabel" }o--|| "CRM.ProductComponentModelPricingRequests" : "ProductComponentModelPricingRequestId"
"CRM.ProductComponentModelPricingRequestKeyValues" }o--|| "CRM.ProductComponentModelPricingRequests" : "ProductComponentModelPricingRequestId"
"CRM.ProductComponentModelPricingRequests" }o--|| "CRM.Customers" : "CustomerId"
"CRM.ProductComponentModelPricingRequests" }o--|| "CRM.ModelContractTemplates" : "ModelContractTemplateId"
"CRM.ProductComponentSalesBatchItems" }o--|| "CRM.ProductComponentModelPricingRequests" : "ProductComponentModelPricingRequestId"
"CRM.PropositionModelPricingRequest_ProductComponentModelPricingRequest" }o--|| "CRM.ProductComponentModelPricingRequests" : "ProductComponentModelPricingRequestId"
"CRM.SalesBatchStrategyProductComponentMPRGroup_ProductComponentMPR" }o--|| "CRM.ProductComponentModelPricingRequests" : "ProductComponentModelPricingRequestId"
"CRM.ProductComponentModelPricingRequest_Customer" }o--|| "CRM.ProductComponentModelPricingRequests" : "ProductComponentModelPricingRequestId"
erDiagram
"CRM.ProductComponentModelPricingRequest_Brand" {
uniqueidentifier Id PK
uniqueidentifier ProductComponentModelPricingRequestId FK
uniqueidentifier BrandId FK
uniqueidentifier Tenant
datetimeoffset EntityCreatedDateTime
datetimeoffset EntityUpdatedDateTime
uniqueidentifier EntityCreatedAuthToken
uniqueidentifier EntityUpdatedAuthToken
bit Concealed
}
"CRM.ProductComponentModelPricingRequest_ProductComponent" {
}
"CRM.ProductComponentModelPricingRequest_SalesProduct" {
}
"CRM.ProductComponentModelPricingRequests" {
uniqueidentifier Id PK
uniqueidentifier ProductComponentId
nvarchar Name
nvarchar Description
uniqueidentifier CustomerId FK
uniqueidentifier ModelContractTemplateId FK
uniqueidentifier Tenant
datetimeoffset EntityCreatedDateTime
datetimeoffset EntityUpdatedDateTime
uniqueidentifier EntityCreatedAuthToken
uniqueidentifier EntityUpdatedAuthToken
nvarchar InternalReference
bit Concealed
int SourceInAdvanceVolumeLimit
}
"CRM.ProductComponentModelPricingRequest_Brand" }o--|| "CRM.Brands" : "BrandId"
"CRM.ProductComponentModelPricingRequest_Brand" }o--|| "CRM.ProductComponentModelPricingRequests" : "ProductComponentModelPricingRequestId"
"CRM.ProductComponentModelPricingRequest_CategoryLabel" }o--|| "CRM.ProductComponentModelPricingRequests" : "ProductComponentModelPricingRequestId"
"CRM.ProductComponentModelPricingRequestKeyValues" }o--|| "CRM.ProductComponentModelPricingRequests" : "ProductComponentModelPricingRequestId"
"CRM.ProductComponentModelPricingRequests" }o--|| "CRM.Customers" : "CustomerId"
"CRM.ProductComponentModelPricingRequests" }o--|| "CRM.ModelContractTemplates" : "ModelContractTemplateId"
"CRM.ProductComponentSalesBatchItems" }o--|| "CRM.ProductComponentModelPricingRequests" : "ProductComponentModelPricingRequestId"
"CRM.PropositionModelPricingRequest_ProductComponentModelPricingRequest" }o--|| "CRM.ProductComponentModelPricingRequests" : "ProductComponentModelPricingRequestId"
"CRM.SalesBatchStrategyProductComponentMPRGroup_ProductComponentMPR" }o--|| "CRM.ProductComponentModelPricingRequests" : "ProductComponentModelPricingRequestId"
"CRM.ProductComponentModelPricingRequest_Customer" }o--|| "CRM.ProductComponentModelPricingRequests" : "ProductComponentModelPricingRequestId"
{
"definitions": {
"CRM.ProductComponentModelPricingRequest_SalesProduct": {
"properties": {
},
"type": "object"
},
"CRM.ProductComponentModelPricingRequest_Brand": {
"properties": {
"Concealed": {
"type": "boolean",
"description": "bit"
},
"EntityUpdatedAuthToken": {
"format": "uuid",
"description": "uniqueidentifier",
"type": "string"
},
"Id": {
"format": "uuid",
"description": "uniqueidentifier",
"type": "string"
},
"EntityCreatedDateTime": {
"format": "date-time",
"description": "datetimeoffset",
"type": "string"
},
"BrandId": {
"type": "string",
"description": "FK to CRM.Brands"
},
"EntityUpdatedDateTime": {
"format": "date-time",
"description": "datetimeoffset",
"type": "string"
},
"ProductComponentModelPricingRequestId": {
"type": "string",
"description": "FK to CRM.ProductComponentModelPricingRequests"
},
"EntityCreatedAuthToken": {
"format": "uuid",
"description": "uniqueidentifier",
"type": "string"
},
"Tenant": {
"format": "uuid",
"description": "uniqueidentifier",
"type": "string"
}
},
"type": "object"
},
"CRM.ProductComponentModelPricingRequests": {
"properties": {
"Concealed": {
"type": "boolean",
"description": "bit"
},
"Description": {
"type": "string",
"description": "nvarchar"
},
"EntityUpdatedAuthToken": {
"format": "uuid",
"description": "uniqueidentifier",
"type": "string"
},
"ProductComponentId": {
"format": "uuid",
"description": "uniqueidentifier",
"type": "string"
},
"EntityCreatedAuthToken": {
"format": "uuid",
"description": "uniqueidentifier",
"type": "string"
},
"ModelContractTemplateId": {
"type": "string",
"description": "FK to CRM.ModelContractTemplates"
},
"Name": {
"type": "string",
"description": "nvarchar"
},
"SourceInAdvanceVolumeLimit": {
"type": "integer",
"description": "int"
},
"EntityUpdatedDateTime": {
"format": "date-time",
"description": "datetimeoffset",
"type": "string"
},
"CustomerId": {
"type": "string",
"description": "FK to CRM.Customers"
},
"Tenant": {
"format": "uuid",
"description": "uniqueidentifier",
"type": "string"
},
"InternalReference": {
"type": "string",
"description": "nvarchar"
},
"Id": {
"format": "uuid",
"description": "uniqueidentifier",
"type": "string"
},
"EntityCreatedDateTime": {
"format": "date-time",
"description": "datetimeoffset",
"type": "string"
}
},
"type": "object"
},
"CRM.ProductComponentModelPricingRequest_ProductComponent": {
"properties": {
},
"type": "object"
}
},
"title": "CRM.PropositionProductComponentModelPricingRequest",
"$comment": "Generated from Mermaid ERD with property-level descriptions",
"$schema": "http://json-schema.org/draft-07/schema#",
"type": "object"
}Sales Batch
Aggregate Root: SalesBatch
Represents batches of sales activities and transactions for processing and management.
erDiagram
"CRM.SalesBatchDetails" {
uniqueidentifier Id PK
uniqueidentifier SalesBatchId FK
nvarchar Key
nvarchar Value
int FormatType
uniqueidentifier CustomEnumId FK
uniqueidentifier Tenant
datetimeoffset EntityCreatedDateTime
datetimeoffset EntityUpdatedDateTime
uniqueidentifier EntityCreatedAuthToken
uniqueidentifier EntityUpdatedAuthToken
bit Concealed
int PricingStage
bit UserOverwritableOnPricing
}
"CRM.SalesBatchGeneratorDetails" {
uniqueidentifier Id PK
uniqueidentifier SalesBatchGeneratorId FK
nvarchar Key
nvarchar Value
int FormatType
uniqueidentifier CustomEnumId FK
uniqueidentifier Tenant
datetimeoffset EntityCreatedDateTime
datetimeoffset EntityUpdatedDateTime
uniqueidentifier EntityCreatedAuthToken
uniqueidentifier EntityUpdatedAuthToken
bit Concealed
int PricingStage
bit UserOverwritableOnPricing
}
"CRM.SalesBatchGenerators" {
uniqueidentifier Id PK
nvarchar Name
nvarchar Description
int AllowedScoringType
bit MustEstimateSalesVolumes
uniqueidentifier Tenant
datetimeoffset EntityCreatedDateTime
datetimeoffset EntityUpdatedDateTime
uniqueidentifier EntityCreatedAuthToken
uniqueidentifier EntityUpdatedAuthToken
bit Concealed
bit SourceInAdvance
uniqueidentifier CustomerId FK
int SalesBatchForecastType
uniqueidentifier ScriptId
}
"CRM.SalesBatchSeries" {
uniqueidentifier Id PK
nvarchar Name
datetimeoffset Start
datetimeoffset End
nvarchar Schedule
datetimeoffset NextRunTime
uniqueidentifier Tenant
datetimeoffset EntityCreatedDateTime
datetimeoffset EntityUpdatedDateTime
uniqueidentifier EntityCreatedAuthToken
uniqueidentifier EntityUpdatedAuthToken
bit Concealed
}
"CRM.SalesBatchSeries_SalesBatchGenerator" {
uniqueidentifier Id PK
uniqueidentifier SalesBatchSeriesId FK
uniqueidentifier SalesBatchGeneratorId FK
nvarchar Schedule
datetimeoffset NextRunTime
uniqueidentifier Tenant
datetimeoffset EntityCreatedDateTime
datetimeoffset EntityUpdatedDateTime
uniqueidentifier EntityCreatedAuthToken
uniqueidentifier EntityUpdatedAuthToken
bit Concealed
int OrderIndex
}
"CRM.SalesBatchStrategies" {
uniqueidentifier Id PK
uniqueidentifier SalesBatchStrategyProductComponentMPRGroupId FK
int SourcingType
uniqueidentifier ProductElementId
decimal Percentage
int ProcurementPeriodInMonths
int ProcurementOffsetPeriodInMonths
int ProcurementDeliveryPeriodInMonths
decimal StopLossThreshold
int StopLossThresholdUnit
int FallbackStrategySourcingType
datetimeoffset StartDate
datetimeoffset EndDate
uniqueidentifier Tenant
datetimeoffset EntityCreatedDateTime
datetimeoffset EntityUpdatedDateTime
uniqueidentifier EntityCreatedAuthToken
uniqueidentifier EntityUpdatedAuthToken
bit Concealed
datetimeoffset ProcurementEnd
datetimeoffset ProcurementStart
}
"CRM.SalesBatchStrategyProductComponentMPRGroup_ProductComponentMPR" {
uniqueidentifier Id PK
uniqueidentifier SalesBatchStrategyProductComponentMPRGroupId FK
uniqueidentifier ProductComponentModelPricingRequestId FK
uniqueidentifier Tenant
datetimeoffset EntityCreatedDateTime
datetimeoffset EntityUpdatedDateTime
uniqueidentifier EntityCreatedAuthToken
uniqueidentifier EntityUpdatedAuthToken
bit Concealed
}
"CRM.SalesBatchStrategyProductComponentMPRGroups" {
uniqueidentifier Id PK
uniqueidentifier SalesBatchId FK
uniqueidentifier Tenant
datetimeoffset EntityCreatedDateTime
datetimeoffset EntityUpdatedDateTime
uniqueidentifier EntityCreatedAuthToken
uniqueidentifier EntityUpdatedAuthToken
bit Concealed
}
"CRM.SalesBatches" {
uniqueidentifier Id PK
nvarchar InternalReference
nvarchar ExternalReference
uniqueidentifier SalesBatchSeriesId FK
uniqueidentifier Tenant
datetimeoffset EntityCreatedDateTime
datetimeoffset EntityUpdatedDateTime
uniqueidentifier EntityCreatedAuthToken
uniqueidentifier EntityUpdatedAuthToken
datetimeoffset Timestamp
bit Concealed
bit SourceInAdvance
uniqueidentifier CustomerId FK
int SalesBatchForecastType
uniqueidentifier ScriptId
bit WaitingOnScript
nvarchar ErrorMessage
}
"CRM.SalesBatchDetails" }o--|| "CRM.CustomEnums" : "CustomEnumId"
"CRM.SalesBatchDetails" }o--|| "Pricing.CustomEnums" : "CustomEnumId"
"CRM.SalesBatchDetails" }o--|| "ApplicationCore.CustomEnums" : "CustomEnumId"
"CRM.SalesBatchDetails" }o--|| "PM.CustomEnums" : "CustomEnumId"
"CRM.SalesBatchDetails" }o--|| "CRM.SalesBatches" : "SalesBatchId"
"CRM.SalesBatchGeneratorDetails" }o--|| "CRM.CustomEnums" : "CustomEnumId"
"CRM.SalesBatchGeneratorDetails" }o--|| "Pricing.CustomEnums" : "CustomEnumId"
"CRM.SalesBatchGeneratorDetails" }o--|| "ApplicationCore.CustomEnums" : "CustomEnumId"
"CRM.SalesBatchGeneratorDetails" }o--|| "PM.CustomEnums" : "CustomEnumId"
"CRM.SalesBatchGeneratorDetails" }o--|| "CRM.SalesBatchGenerators" : "SalesBatchGeneratorId"
"CRM.ProductComponentSalesBatchItem_SalesBatchGenerator" }o--|| "CRM.SalesBatchGenerators" : "SalesBatchGeneratorId"
"CRM.PropositionSalesBatchItem_SalesBatchGenerator" }o--|| "CRM.SalesBatchGenerators" : "SalesBatchGeneratorId"
"CRM.SalesBatchGenerator_PropositionModelPricingRequest" }o--|| "CRM.SalesBatchGenerators" : "SalesBatchGeneratorId"
"CRM.SalesBatchGenerators" }o--|| "CRM.Customers" : "CustomerId"
"CRM.SalesBatchSeries_SalesBatchGenerator" }o--|| "CRM.SalesBatchGenerators" : "SalesBatchGeneratorId"
"CRM.SalesBatches" }o--|| "CRM.SalesBatchSeries" : "SalesBatchSeriesId"
"CRM.SalesBatchSeries_SalesBatchGenerator" }o--|| "CRM.SalesBatchSeries" : "SalesBatchSeriesId"
"CRM.SalesBatchStrategies" }o--|| "CRM.SalesBatchStrategyProductComponentMPRGroups" : "SalesBatchStrategyProductComponentMPRGroupId"
"CRM.SalesBatchStrategyProductComponentMPRGroup_ProductComponentMPR" }o--|| "CRM.ProductComponentModelPricingRequests" : "ProductComponentModelPricingRequestId"
"CRM.SalesBatchStrategyProductComponentMPRGroup_ProductComponentMPR" }o--|| "CRM.SalesBatchStrategyProductComponentMPRGroups" : "SalesBatchStrategyProductComponentMPRGroupId"
"CRM.SalesBatchStrategyProductComponentMPRGroups" }o--|| "CRM.SalesBatches" : "SalesBatchId"
"CRM.ProductComponentSalesBatchItems" }o--|| "CRM.SalesBatches" : "SalesBatchId"
"CRM.PropositionSalesBatchItems" }o--|| "CRM.SalesBatches" : "SalesBatchId"
"CRM.SalesBatch_TSSelector" }o--|| "CRM.SalesBatches" : "SalesBatchId"
"CRM.SalesBatches" }o--|| "CRM.Customers" : "CustomerId"
"CRM.EstimatedSalesVolumes" }o--|| "CRM.SalesBatches" : "SalesBatchId"
erDiagram
"CRM.SalesBatchDetails" {
uniqueidentifier Id PK
uniqueidentifier SalesBatchId FK
nvarchar Key
nvarchar Value
int FormatType
uniqueidentifier CustomEnumId FK
uniqueidentifier Tenant
datetimeoffset EntityCreatedDateTime
datetimeoffset EntityUpdatedDateTime
uniqueidentifier EntityCreatedAuthToken
uniqueidentifier EntityUpdatedAuthToken
bit Concealed
int PricingStage
bit UserOverwritableOnPricing
}
"CRM.SalesBatchGeneratorDetails" {
uniqueidentifier Id PK
uniqueidentifier SalesBatchGeneratorId FK
nvarchar Key
nvarchar Value
int FormatType
uniqueidentifier CustomEnumId FK
uniqueidentifier Tenant
datetimeoffset EntityCreatedDateTime
datetimeoffset EntityUpdatedDateTime
uniqueidentifier EntityCreatedAuthToken
uniqueidentifier EntityUpdatedAuthToken
bit Concealed
int PricingStage
bit UserOverwritableOnPricing
}
"CRM.SalesBatchGenerators" {
uniqueidentifier Id PK
nvarchar Name
nvarchar Description
int AllowedScoringType
bit MustEstimateSalesVolumes
uniqueidentifier Tenant
datetimeoffset EntityCreatedDateTime
datetimeoffset EntityUpdatedDateTime
uniqueidentifier EntityCreatedAuthToken
uniqueidentifier EntityUpdatedAuthToken
bit Concealed
bit SourceInAdvance
uniqueidentifier CustomerId FK
int SalesBatchForecastType
uniqueidentifier ScriptId
}
"CRM.SalesBatchSeries" {
uniqueidentifier Id PK
nvarchar Name
datetimeoffset Start
datetimeoffset End
nvarchar Schedule
datetimeoffset NextRunTime
uniqueidentifier Tenant
datetimeoffset EntityCreatedDateTime
datetimeoffset EntityUpdatedDateTime
uniqueidentifier EntityCreatedAuthToken
uniqueidentifier EntityUpdatedAuthToken
bit Concealed
}
"CRM.SalesBatchSeries_SalesBatchGenerator" {
uniqueidentifier Id PK
uniqueidentifier SalesBatchSeriesId FK
uniqueidentifier SalesBatchGeneratorId FK
nvarchar Schedule
datetimeoffset NextRunTime
uniqueidentifier Tenant
datetimeoffset EntityCreatedDateTime
datetimeoffset EntityUpdatedDateTime
uniqueidentifier EntityCreatedAuthToken
uniqueidentifier EntityUpdatedAuthToken
bit Concealed
int OrderIndex
}
"CRM.SalesBatchStrategies" {
uniqueidentifier Id PK
uniqueidentifier SalesBatchStrategyProductComponentMPRGroupId FK
int SourcingType
uniqueidentifier ProductElementId
decimal Percentage
int ProcurementPeriodInMonths
int ProcurementOffsetPeriodInMonths
int ProcurementDeliveryPeriodInMonths
decimal StopLossThreshold
int StopLossThresholdUnit
int FallbackStrategySourcingType
datetimeoffset StartDate
datetimeoffset EndDate
uniqueidentifier Tenant
datetimeoffset EntityCreatedDateTime
datetimeoffset EntityUpdatedDateTime
uniqueidentifier EntityCreatedAuthToken
uniqueidentifier EntityUpdatedAuthToken
bit Concealed
datetimeoffset ProcurementEnd
datetimeoffset ProcurementStart
}
"CRM.SalesBatchStrategyProductComponentMPRGroup_ProductComponentMPR" {
uniqueidentifier Id PK
uniqueidentifier SalesBatchStrategyProductComponentMPRGroupId FK
uniqueidentifier ProductComponentModelPricingRequestId FK
uniqueidentifier Tenant
datetimeoffset EntityCreatedDateTime
datetimeoffset EntityUpdatedDateTime
uniqueidentifier EntityCreatedAuthToken
uniqueidentifier EntityUpdatedAuthToken
bit Concealed
}
"CRM.SalesBatchStrategyProductComponentMPRGroups" {
uniqueidentifier Id PK
uniqueidentifier SalesBatchId FK
uniqueidentifier Tenant
datetimeoffset EntityCreatedDateTime
datetimeoffset EntityUpdatedDateTime
uniqueidentifier EntityCreatedAuthToken
uniqueidentifier EntityUpdatedAuthToken
bit Concealed
}
"CRM.SalesBatches" {
uniqueidentifier Id PK
nvarchar InternalReference
nvarchar ExternalReference
uniqueidentifier SalesBatchSeriesId FK
uniqueidentifier Tenant
datetimeoffset EntityCreatedDateTime
datetimeoffset EntityUpdatedDateTime
uniqueidentifier EntityCreatedAuthToken
uniqueidentifier EntityUpdatedAuthToken
datetimeoffset Timestamp
bit Concealed
bit SourceInAdvance
uniqueidentifier CustomerId FK
int SalesBatchForecastType
uniqueidentifier ScriptId
bit WaitingOnScript
nvarchar ErrorMessage
}
"CRM.SalesBatchDetails" }o--|| "CRM.CustomEnums" : "CustomEnumId"
"CRM.SalesBatchDetails" }o--|| "Pricing.CustomEnums" : "CustomEnumId"
"CRM.SalesBatchDetails" }o--|| "ApplicationCore.CustomEnums" : "CustomEnumId"
"CRM.SalesBatchDetails" }o--|| "PM.CustomEnums" : "CustomEnumId"
"CRM.SalesBatchDetails" }o--|| "CRM.SalesBatches" : "SalesBatchId"
"CRM.SalesBatchGeneratorDetails" }o--|| "CRM.CustomEnums" : "CustomEnumId"
"CRM.SalesBatchGeneratorDetails" }o--|| "Pricing.CustomEnums" : "CustomEnumId"
"CRM.SalesBatchGeneratorDetails" }o--|| "ApplicationCore.CustomEnums" : "CustomEnumId"
"CRM.SalesBatchGeneratorDetails" }o--|| "PM.CustomEnums" : "CustomEnumId"
"CRM.SalesBatchGeneratorDetails" }o--|| "CRM.SalesBatchGenerators" : "SalesBatchGeneratorId"
"CRM.ProductComponentSalesBatchItem_SalesBatchGenerator" }o--|| "CRM.SalesBatchGenerators" : "SalesBatchGeneratorId"
"CRM.PropositionSalesBatchItem_SalesBatchGenerator" }o--|| "CRM.SalesBatchGenerators" : "SalesBatchGeneratorId"
"CRM.SalesBatchGenerator_PropositionModelPricingRequest" }o--|| "CRM.SalesBatchGenerators" : "SalesBatchGeneratorId"
"CRM.SalesBatchGenerators" }o--|| "CRM.Customers" : "CustomerId"
"CRM.SalesBatchSeries_SalesBatchGenerator" }o--|| "CRM.SalesBatchGenerators" : "SalesBatchGeneratorId"
"CRM.SalesBatches" }o--|| "CRM.SalesBatchSeries" : "SalesBatchSeriesId"
"CRM.SalesBatchSeries_SalesBatchGenerator" }o--|| "CRM.SalesBatchSeries" : "SalesBatchSeriesId"
"CRM.SalesBatchStrategies" }o--|| "CRM.SalesBatchStrategyProductComponentMPRGroups" : "SalesBatchStrategyProductComponentMPRGroupId"
"CRM.SalesBatchStrategyProductComponentMPRGroup_ProductComponentMPR" }o--|| "CRM.ProductComponentModelPricingRequests" : "ProductComponentModelPricingRequestId"
"CRM.SalesBatchStrategyProductComponentMPRGroup_ProductComponentMPR" }o--|| "CRM.SalesBatchStrategyProductComponentMPRGroups" : "SalesBatchStrategyProductComponentMPRGroupId"
"CRM.SalesBatchStrategyProductComponentMPRGroups" }o--|| "CRM.SalesBatches" : "SalesBatchId"
"CRM.ProductComponentSalesBatchItems" }o--|| "CRM.SalesBatches" : "SalesBatchId"
"CRM.PropositionSalesBatchItems" }o--|| "CRM.SalesBatches" : "SalesBatchId"
"CRM.SalesBatch_TSSelector" }o--|| "CRM.SalesBatches" : "SalesBatchId"
"CRM.SalesBatches" }o--|| "CRM.Customers" : "CustomerId"
"CRM.EstimatedSalesVolumes" }o--|| "CRM.SalesBatches" : "SalesBatchId"
{
"definitions": {
"CRM.SalesBatchStrategyProductComponentMPRGroup_ProductComponentMPR": {
"properties": {
"Concealed": {
"type": "boolean",
"description": "bit"
},
"EntityUpdatedAuthToken": {
"format": "uuid",
"description": "uniqueidentifier",
"type": "string"
},
"Id": {
"format": "uuid",
"description": "uniqueidentifier",
"type": "string"
},
"EntityCreatedAuthToken": {
"format": "uuid",
"description": "uniqueidentifier",
"type": "string"
},
"EntityCreatedDateTime": {
"format": "date-time",
"description": "datetimeoffset",
"type": "string"
},
"EntityUpdatedDateTime": {
"format": "date-time",
"description": "datetimeoffset",
"type": "string"
},
"ProductComponentModelPricingRequestId": {
"type": "string",
"description": "FK to CRM.ProductComponentModelPricingRequests"
},
"SalesBatchStrategyProductComponentMPRGroupId": {
"type": "string",
"description": "FK to CRM.SalesBatchStrategyProductComponentMPRGroups"
},
"Tenant": {
"format": "uuid",
"description": "uniqueidentifier",
"type": "string"
}
},
"type": "object"
},
"CRM.SalesBatchSeries": {
"properties": {
"Tenant": {
"format": "uuid",
"description": "uniqueidentifier",
"type": "string"
},
"EntityUpdatedAuthToken": {
"format": "uuid",
"description": "uniqueidentifier",
"type": "string"
},
"Id": {
"format": "uuid",
"description": "uniqueidentifier",
"type": "string"
},
"Start": {
"format": "date-time",
"description": "datetimeoffset",
"type": "string"
},
"Concealed": {
"type": "boolean",
"description": "bit"
},
"Schedule": {
"type": "string",
"description": "nvarchar"
},
"EntityCreatedDateTime": {
"format": "date-time",
"description": "datetimeoffset",
"type": "string"
},
"Name": {
"type": "string",
"description": "nvarchar"
},
"EntityUpdatedDateTime": {
"format": "date-time",
"description": "datetimeoffset",
"type": "string"
},
"NextRunTime": {
"format": "date-time",
"description": "datetimeoffset",
"type": "string"
},
"EntityCreatedAuthToken": {
"format": "uuid",
"description": "uniqueidentifier",
"type": "string"
},
"End": {
"format": "date-time",
"description": "datetimeoffset",
"type": "string"
}
},
"type": "object"
},
"CRM.SalesBatchGeneratorDetails": {
"properties": {
"PricingStage": {
"type": "integer",
"description": "int"
},
"Id": {
"format": "uuid",
"description": "uniqueidentifier",
"type": "string"
},
"EntityUpdatedAuthToken": {
"format": "uuid",
"description": "uniqueidentifier",
"type": "string"
},
"Concealed": {
"type": "boolean",
"description": "bit"
},
"Value": {
"type": "string",
"description": "nvarchar"
},
"EntityCreatedAuthToken": {
"format": "uuid",
"description": "uniqueidentifier",
"type": "string"
},
"UserOverwritableOnPricing": {
"type": "boolean",
"description": "bit"
},
"SalesBatchGeneratorId": {
"type": "string",
"description": "FK to CRM.SalesBatchGenerators"
},
"EntityUpdatedDateTime": {
"format": "date-time",
"description": "datetimeoffset",
"type": "string"
},
"Tenant": {
"format": "uuid",
"description": "uniqueidentifier",
"type": "string"
},
"Key": {
"type": "string",
"description": "nvarchar"
},
"EntityCreatedDateTime": {
"format": "date-time",
"description": "datetimeoffset",
"type": "string"
},
"FormatType": {
"type": "integer",
"description": "int"
},
"CustomEnumId": {
"type": "string",
"description": "FK to PM.CustomEnums"
}
},
"type": "object"
},
"CRM.SalesBatchDetails": {
"properties": {
"PricingStage": {
"type": "integer",
"description": "int"
},
"Id": {
"format": "uuid",
"description": "uniqueidentifier",
"type": "string"
},
"EntityUpdatedAuthToken": {
"format": "uuid",
"description": "uniqueidentifier",
"type": "string"
},
"Concealed": {
"type": "boolean",
"description": "bit"
},
"Value": {
"type": "string",
"description": "nvarchar"
},
"EntityCreatedAuthToken": {
"format": "uuid",
"description": "uniqueidentifier",
"type": "string"
},
"UserOverwritableOnPricing": {
"type": "boolean",
"description": "bit"
},
"SalesBatchId": {
"type": "string",
"description": "FK to CRM.SalesBatches"
},
"EntityUpdatedDateTime": {
"format": "date-time",
"description": "datetimeoffset",
"type": "string"
},
"Tenant": {
"format": "uuid",
"description": "uniqueidentifier",
"type": "string"
},
"Key": {
"type": "string",
"description": "nvarchar"
},
"EntityCreatedDateTime": {
"format": "date-time",
"description": "datetimeoffset",
"type": "string"
},
"FormatType": {
"type": "integer",
"description": "int"
},
"CustomEnumId": {
"type": "string",
"description": "FK to PM.CustomEnums"
}
},
"type": "object"
},
"CRM.SalesBatches": {
"properties": {
"ScriptId": {
"format": "uuid",
"description": "uniqueidentifier",
"type": "string"
},
"Id": {
"format": "uuid",
"description": "uniqueidentifier",
"type": "string"
},
"EntityUpdatedAuthToken": {
"format": "uuid",
"description": "uniqueidentifier",
"type": "string"
},
"Concealed": {
"type": "boolean",
"description": "bit"
},
"EntityCreatedAuthToken": {
"format": "uuid",
"description": "uniqueidentifier",
"type": "string"
},
"CustomerId": {
"type": "string",
"description": "FK to CRM.Customers"
},
"EntityUpdatedDateTime": {
"format": "date-time",
"description": "datetimeoffset",
"type": "string"
},
"ErrorMessage": {
"type": "string",
"description": "nvarchar"
},
"ExternalReference": {
"type": "string",
"description": "nvarchar"
},
"Tenant": {
"format": "uuid",
"description": "uniqueidentifier",
"type": "string"
},
"InternalReference": {
"type": "string",
"description": "nvarchar"
},
"SalesBatchSeriesId": {
"type": "string",
"description": "FK to CRM.SalesBatchSeries"
},
"WaitingOnScript": {
"type": "boolean",
"description": "bit"
},
"SourceInAdvance": {
"type": "boolean",
"description": "bit"
},
"EntityCreatedDateTime": {
"format": "date-time",
"description": "datetimeoffset",
"type": "string"
},
"SalesBatchForecastType": {
"type": "integer",
"description": "int"
},
"Timestamp": {
"format": "date-time",
"description": "datetimeoffset",
"type": "string"
}
},
"type": "object"
},
"CRM.SalesBatchGenerators": {
"properties": {
"Concealed": {
"type": "boolean",
"description": "bit"
},
"ScriptId": {
"format": "uuid",
"description": "uniqueidentifier",
"type": "string"
},
"Description": {
"type": "string",
"description": "nvarchar"
},
"EntityUpdatedAuthToken": {
"format": "uuid",
"description": "uniqueidentifier",
"type": "string"
},
"Name": {
"type": "string",
"description": "nvarchar"
},
"Id": {
"format": "uuid",
"description": "uniqueidentifier",
"type": "string"
},
"EntityCreatedAuthToken": {
"format": "uuid",
"description": "uniqueidentifier",
"type": "string"
},
"CustomerId": {
"type": "string",
"description": "FK to CRM.Customers"
},
"AllowedScoringType": {
"type": "integer",
"description": "int"
},
"EntityUpdatedDateTime": {
"format": "date-time",
"description": "datetimeoffset",
"type": "string"
},
"Tenant": {
"format": "uuid",
"description": "uniqueidentifier",
"type": "string"
},
"SourceInAdvance": {
"type": "boolean",
"description": "bit"
},
"EntityCreatedDateTime": {
"format": "date-time",
"description": "datetimeoffset",
"type": "string"
},
"SalesBatchForecastType": {
"type": "integer",
"description": "int"
},
"MustEstimateSalesVolumes": {
"type": "boolean",
"description": "bit"
}
},
"type": "object"
},
"CRM.SalesBatchStrategies": {
"properties": {
"Concealed": {
"type": "boolean",
"description": "bit"
},
"Id": {
"format": "uuid",
"description": "uniqueidentifier",
"type": "string"
},
"SourcingType": {
"type": "integer",
"description": "int"
},
"EntityUpdatedDateTime": {
"format": "date-time",
"description": "datetimeoffset",
"type": "string"
},
"EntityUpdatedAuthToken": {
"format": "uuid",
"description": "uniqueidentifier",
"type": "string"
},
"FallbackStrategySourcingType": {
"type": "integer",
"description": "int"
},
"ProcurementEnd": {
"format": "date-time",
"description": "datetimeoffset",
"type": "string"
},
"EntityCreatedAuthToken": {
"format": "uuid",
"description": "uniqueidentifier",
"type": "string"
},
"ProcurementPeriodInMonths": {
"type": "integer",
"description": "int"
},
"EndDate": {
"format": "date-time",
"description": "datetimeoffset",
"type": "string"
},
"Percentage": {
"type": "string",
"description": "decimal"
},
"ProcurementStart": {
"format": "date-time",
"description": "datetimeoffset",
"type": "string"
},
"EntityCreatedDateTime": {
"format": "date-time",
"description": "datetimeoffset",
"type": "string"
},
"ProcurementOffsetPeriodInMonths": {
"type": "integer",
"description": "int"
},
"SalesBatchStrategyProductComponentMPRGroupId": {
"type": "string",
"description": "FK to CRM.SalesBatchStrategyProductComponentMPRGroups"
},
"Tenant": {
"format": "uuid",
"description": "uniqueidentifier",
"type": "string"
},
"StopLossThresholdUnit": {
"type": "integer",
"description": "int"
},
"ProcurementDeliveryPeriodInMonths": {
"type": "integer",
"description": "int"
},
"ProductElementId": {
"format": "uuid",
"description": "uniqueidentifier",
"type": "string"
},
"StartDate": {
"format": "date-time",
"description": "datetimeoffset",
"type": "string"
},
"StopLossThreshold": {
"type": "string",
"description": "decimal"
}
},
"type": "object"
},
"CRM.SalesBatchSeries_SalesBatchGenerator": {
"properties": {
"Id": {
"format": "uuid",
"description": "uniqueidentifier",
"type": "string"
},
"EntityUpdatedAuthToken": {
"format": "uuid",
"description": "uniqueidentifier",
"type": "string"
},
"Concealed": {
"type": "boolean",
"description": "bit"
},
"EntityCreatedAuthToken": {
"format": "uuid",
"description": "uniqueidentifier",
"type": "string"
},
"Schedule": {
"type": "string",
"description": "nvarchar"
},
"SalesBatchGeneratorId": {
"type": "string",
"description": "FK to CRM.SalesBatchGenerators"
},
"EntityUpdatedDateTime": {
"format": "date-time",
"description": "datetimeoffset",
"type": "string"
},
"OrderIndex": {
"type": "integer",
"description": "int"
},
"Tenant": {
"format": "uuid",
"description": "uniqueidentifier",
"type": "string"
},
"NextRunTime": {
"format": "date-time",
"description": "datetimeoffset",
"type": "string"
},
"SalesBatchSeriesId": {
"type": "string",
"description": "FK to CRM.SalesBatchSeries"
},
"EntityCreatedDateTime": {
"format": "date-time",
"description": "datetimeoffset",
"type": "string"
}
},
"type": "object"
},
"CRM.SalesBatchStrategyProductComponentMPRGroups": {
"properties": {
"Concealed": {
"type": "boolean",
"description": "bit"
},
"EntityUpdatedAuthToken": {
"format": "uuid",
"description": "uniqueidentifier",
"type": "string"
},
"Id": {
"format": "uuid",
"description": "uniqueidentifier",
"type": "string"
},
"EntityCreatedDateTime": {
"format": "date-time",
"description": "datetimeoffset",
"type": "string"
},
"EntityUpdatedDateTime": {
"format": "date-time",
"description": "datetimeoffset",
"type": "string"
},
"SalesBatchId": {
"type": "string",
"description": "FK to CRM.SalesBatches"
},
"EntityCreatedAuthToken": {
"format": "uuid",
"description": "uniqueidentifier",
"type": "string"
},
"Tenant": {
"format": "uuid",
"description": "uniqueidentifier",
"type": "string"
}
},
"type": "object"
}
},
"title": "CRM.SalesBatch",
"$comment": "Generated from Mermaid ERD with property-level descriptions",
"$schema": "http://json-schema.org/draft-07/schema#",
"type": "object"
}Sales Channel
Aggregate Root: SalesChannel
Represents different channels through which sales are conducted and managed.
erDiagram
"CRM.SalesChannels" {
uniqueidentifier Id PK
uniqueidentifier Tenant
datetimeoffset EntityCreatedDateTime
datetimeoffset EntityUpdatedDateTime
uniqueidentifier EntityCreatedAuthToken
uniqueidentifier EntityUpdatedAuthToken
bit Concealed
}
erDiagram
"CRM.SalesChannels" {
uniqueidentifier Id PK
uniqueidentifier Tenant
datetimeoffset EntityCreatedDateTime
datetimeoffset EntityUpdatedDateTime
uniqueidentifier EntityCreatedAuthToken
uniqueidentifier EntityUpdatedAuthToken
bit Concealed
}
{
"definitions": {
"CRM.SalesChannels": {
"properties": {
"Concealed": {
"type": "boolean",
"description": "bit"
},
"EntityUpdatedAuthToken": {
"format": "uuid",
"description": "uniqueidentifier",
"type": "string"
},
"Id": {
"format": "uuid",
"description": "uniqueidentifier",
"type": "string"
},
"EntityCreatedDateTime": {
"format": "date-time",
"description": "datetimeoffset",
"type": "string"
},
"EntityUpdatedDateTime": {
"format": "date-time",
"description": "datetimeoffset",
"type": "string"
},
"EntityCreatedAuthToken": {
"format": "uuid",
"description": "uniqueidentifier",
"type": "string"
},
"Tenant": {
"format": "uuid",
"description": "uniqueidentifier",
"type": "string"
}
},
"type": "object"
}
},
"title": "CRM.SalesChannel",
"$comment": "Generated from Mermaid ERD with property-level descriptions",
"$schema": "http://json-schema.org/draft-07/schema#",
"type": "object"
}SBI
Aggregate Root: SBI
Represents SBI (Standard Business Identifier) entities for business classification and identification.
erDiagram
"CRM.SBIs" {
uniqueidentifier Id PK
nvarchar Code
nvarchar Description
uniqueidentifier Tenant
datetimeoffset EntityCreatedDateTime
datetimeoffset EntityUpdatedDateTime
uniqueidentifier EntityCreatedAuthToken
uniqueidentifier EntityUpdatedAuthToken
bit Concealed
}
"CRM.Customer_SBI" }o--|| "CRM.SBIs" : "SBIId"
erDiagram
"CRM.SBIs" {
uniqueidentifier Id PK
nvarchar Code
nvarchar Description
uniqueidentifier Tenant
datetimeoffset EntityCreatedDateTime
datetimeoffset EntityUpdatedDateTime
uniqueidentifier EntityCreatedAuthToken
uniqueidentifier EntityUpdatedAuthToken
bit Concealed
}
"CRM.Customer_SBI" }o--|| "CRM.SBIs" : "SBIId"
{
"definitions": {
"CRM.SBIs": {
"properties": {
"Concealed": {
"type": "boolean",
"description": "bit"
},
"EntityUpdatedAuthToken": {
"format": "uuid",
"description": "uniqueidentifier",
"type": "string"
},
"Id": {
"format": "uuid",
"description": "uniqueidentifier",
"type": "string"
},
"Description": {
"type": "string",
"description": "nvarchar"
},
"EntityCreatedDateTime": {
"format": "date-time",
"description": "datetimeoffset",
"type": "string"
},
"EntityUpdatedDateTime": {
"format": "date-time",
"description": "datetimeoffset",
"type": "string"
},
"Code": {
"type": "string",
"description": "nvarchar"
},
"EntityCreatedAuthToken": {
"format": "uuid",
"description": "uniqueidentifier",
"type": "string"
},
"Tenant": {
"format": "uuid",
"description": "uniqueidentifier",
"type": "string"
}
},
"type": "object"
}
},
"title": "CRM.SBI",
"$comment": "Generated from Mermaid ERD with property-level descriptions",
"$schema": "http://json-schema.org/draft-07/schema#",
"type": "object"
}Site
Aggregate Root: Site
Represents physical sites with their associated metering points and installations.
erDiagram
"CRM.Site_MeteringPoint" {
uniqueidentifier Id PK
uniqueidentifier SiteId FK
uniqueidentifier MeteringPointId
uniqueidentifier Tenant
datetimeoffset EntityCreatedDateTime
datetimeoffset EntityUpdatedDateTime
uniqueidentifier EntityCreatedAuthToken
uniqueidentifier EntityUpdatedAuthToken
bit Concealed
}
"CRM.Sites" {
uniqueidentifier Id PK
nvarchar Name
uniqueidentifier CustomerId FK
uniqueidentifier Tenant
datetimeoffset EntityCreatedDateTime
datetimeoffset EntityUpdatedDateTime
uniqueidentifier EntityCreatedAuthToken
uniqueidentifier EntityUpdatedAuthToken
bit Concealed
}
"CRM.Installations" }o--|| "CRM.Site_MeteringPoint" : "SiteMeteringPointId"
"CRM.Site_MeteringPoint" }o--|| "CRM.Sites" : "SiteId"
"CRM.Site_MeteringPoint_TimeSeries" }o--|| "CRM.Site_MeteringPoint" : "SiteMeteringPointId"
"CRM.Installations" }o--|| "CRM.Sites" : "SiteId"
"CRM.Site_TimeSeries" }o--|| "CRM.Sites" : "SiteId"
"CRM.Sites" }o--|| "CRM.Customers" : "CustomerId"
"CRM.ContractVersion_Site" }o--|| "CRM.Sites" : "SiteId"
erDiagram
"CRM.Site_MeteringPoint" {
uniqueidentifier Id PK
uniqueidentifier SiteId FK
uniqueidentifier MeteringPointId
uniqueidentifier Tenant
datetimeoffset EntityCreatedDateTime
datetimeoffset EntityUpdatedDateTime
uniqueidentifier EntityCreatedAuthToken
uniqueidentifier EntityUpdatedAuthToken
bit Concealed
}
"CRM.Sites" {
uniqueidentifier Id PK
nvarchar Name
uniqueidentifier CustomerId FK
uniqueidentifier Tenant
datetimeoffset EntityCreatedDateTime
datetimeoffset EntityUpdatedDateTime
uniqueidentifier EntityCreatedAuthToken
uniqueidentifier EntityUpdatedAuthToken
bit Concealed
}
"CRM.Installations" }o--|| "CRM.Site_MeteringPoint" : "SiteMeteringPointId"
"CRM.Site_MeteringPoint" }o--|| "CRM.Sites" : "SiteId"
"CRM.Site_MeteringPoint_TimeSeries" }o--|| "CRM.Site_MeteringPoint" : "SiteMeteringPointId"
"CRM.Installations" }o--|| "CRM.Sites" : "SiteId"
"CRM.Site_TimeSeries" }o--|| "CRM.Sites" : "SiteId"
"CRM.Sites" }o--|| "CRM.Customers" : "CustomerId"
"CRM.ContractVersion_Site" }o--|| "CRM.Sites" : "SiteId"
{
"definitions": {
"CRM.Site_MeteringPoint": {
"properties": {
"Concealed": {
"type": "boolean",
"description": "bit"
},
"EntityUpdatedAuthToken": {
"format": "uuid",
"description": "uniqueidentifier",
"type": "string"
},
"Id": {
"format": "uuid",
"description": "uniqueidentifier",
"type": "string"
},
"SiteId": {
"type": "string",
"description": "FK to CRM.Sites"
},
"MeteringPointId": {
"format": "uuid",
"description": "uniqueidentifier",
"type": "string"
},
"EntityCreatedDateTime": {
"format": "date-time",
"description": "datetimeoffset",
"type": "string"
},
"EntityUpdatedDateTime": {
"format": "date-time",
"description": "datetimeoffset",
"type": "string"
},
"EntityCreatedAuthToken": {
"format": "uuid",
"description": "uniqueidentifier",
"type": "string"
},
"Tenant": {
"format": "uuid",
"description": "uniqueidentifier",
"type": "string"
}
},
"type": "object"
},
"CRM.Sites": {
"properties": {
"Concealed": {
"type": "boolean",
"description": "bit"
},
"EntityUpdatedAuthToken": {
"format": "uuid",
"description": "uniqueidentifier",
"type": "string"
},
"Id": {
"format": "uuid",
"description": "uniqueidentifier",
"type": "string"
},
"CustomerId": {
"type": "string",
"description": "FK to CRM.Customers"
},
"EntityCreatedDateTime": {
"format": "date-time",
"description": "datetimeoffset",
"type": "string"
},
"Name": {
"type": "string",
"description": "nvarchar"
},
"EntityUpdatedDateTime": {
"format": "date-time",
"description": "datetimeoffset",
"type": "string"
},
"EntityCreatedAuthToken": {
"format": "uuid",
"description": "uniqueidentifier",
"type": "string"
},
"Tenant": {
"format": "uuid",
"description": "uniqueidentifier",
"type": "string"
}
},
"type": "object"
}
},
"title": "CRM.Site",
"$comment": "Generated from Mermaid ERD with property-level descriptions",
"$schema": "http://json-schema.org/draft-07/schema#",
"type": "object"
}Custom Enum
Aggregate Root: CustomEnum
Represents custom enumerations with components, values, and key values for flexible data classification.
erDiagram
"CRM.CustomEnumComponentValueKeyValues" {
uniqueidentifier Id PK
uniqueidentifier CustomEnumComponentValueId FK
nvarchar Key
nvarchar Value
uniqueidentifier Tenant
datetimeoffset EntityCreatedDateTime
datetimeoffset EntityUpdatedDateTime
uniqueidentifier EntityCreatedAuthToken
uniqueidentifier EntityUpdatedAuthToken
bit Concealed
}
"CRM.CustomEnumComponentValues" {
uniqueidentifier Id PK
uniqueidentifier CustomEnumComponentId FK
nvarchar Value
nvarchar ScriptValue
datetimeoffset StartDate
uniqueidentifier Tenant
datetimeoffset EntityCreatedDateTime
datetimeoffset EntityUpdatedDateTime
uniqueidentifier EntityCreatedAuthToken
uniqueidentifier EntityUpdatedAuthToken
bit Concealed
}
"CRM.CustomEnumComponents" {
uniqueidentifier Id PK
uniqueidentifier CustomEnumId FK
nvarchar Name
nvarchar ExternalReference
datetimeoffset StartDate
datetimeoffset EndDate
uniqueidentifier Tenant
datetimeoffset EntityCreatedDateTime
datetimeoffset EntityUpdatedDateTime
uniqueidentifier EntityCreatedAuthToken
uniqueidentifier EntityUpdatedAuthToken
bit Concealed
}
"CRM.CustomEnums" {
uniqueidentifier Id PK
nvarchar Name
nvarchar Description
uniqueidentifier Tenant
datetimeoffset EntityCreatedDateTime
datetimeoffset EntityUpdatedDateTime
uniqueidentifier EntityCreatedAuthToken
uniqueidentifier EntityUpdatedAuthToken
bit Concealed
}
"PM.CustomEnumComponentValueKeyValues" }o--|| "CRM.CustomEnumComponentValues" : "CustomEnumComponentValueId"
"PM.CustomEnumComponentValueKeyValues" }o--|| "Pricing.CustomEnumComponentValues" : "CustomEnumComponentValueId"
"PM.CustomEnumComponentValueKeyValues" }o--|| "ApplicationCore.CustomEnumComponentValues" : "CustomEnumComponentValueId"
"PM.CustomEnumComponentValueKeyValues" }o--|| "PM.CustomEnumComponentValues" : "CustomEnumComponentValueId"
"ApplicationCore.CustomEnumComponentValueKeyValues" }o--|| "CRM.CustomEnumComponentValues" : "CustomEnumComponentValueId"
"ApplicationCore.CustomEnumComponentValueKeyValues" }o--|| "Pricing.CustomEnumComponentValues" : "CustomEnumComponentValueId"
"ApplicationCore.CustomEnumComponentValueKeyValues" }o--|| "ApplicationCore.CustomEnumComponentValues" : "CustomEnumComponentValueId"
"ApplicationCore.CustomEnumComponentValueKeyValues" }o--|| "PM.CustomEnumComponentValues" : "CustomEnumComponentValueId"
"Pricing.CustomEnumComponentValueKeyValues" }o--|| "CRM.CustomEnumComponentValues" : "CustomEnumComponentValueId"
"Pricing.CustomEnumComponentValueKeyValues" }o--|| "Pricing.CustomEnumComponentValues" : "CustomEnumComponentValueId"
"Pricing.CustomEnumComponentValueKeyValues" }o--|| "ApplicationCore.CustomEnumComponentValues" : "CustomEnumComponentValueId"
"Pricing.CustomEnumComponentValueKeyValues" }o--|| "PM.CustomEnumComponentValues" : "CustomEnumComponentValueId"
"CRM.CustomEnumComponentValueKeyValues" }o--|| "CRM.CustomEnumComponentValues" : "CustomEnumComponentValueId"
"CRM.CustomEnumComponentValueKeyValues" }o--|| "Pricing.CustomEnumComponentValues" : "CustomEnumComponentValueId"
"CRM.CustomEnumComponentValueKeyValues" }o--|| "ApplicationCore.CustomEnumComponentValues" : "CustomEnumComponentValueId"
"CRM.CustomEnumComponentValueKeyValues" }o--|| "PM.CustomEnumComponentValues" : "CustomEnumComponentValueId"
"PM.CustomEnumComponentValues" }o--|| "CRM.CustomEnumComponents" : "CustomEnumComponentId"
"PM.CustomEnumComponentValues" }o--|| "Pricing.CustomEnumComponents" : "CustomEnumComponentId"
"PM.CustomEnumComponentValues" }o--|| "ApplicationCore.CustomEnumComponents" : "CustomEnumComponentId"
"PM.CustomEnumComponentValues" }o--|| "PM.CustomEnumComponents" : "CustomEnumComponentId"
"ApplicationCore.CustomEnumComponentValues" }o--|| "CRM.CustomEnumComponents" : "CustomEnumComponentId"
"ApplicationCore.CustomEnumComponentValues" }o--|| "Pricing.CustomEnumComponents" : "CustomEnumComponentId"
"ApplicationCore.CustomEnumComponentValues" }o--|| "ApplicationCore.CustomEnumComponents" : "CustomEnumComponentId"
"ApplicationCore.CustomEnumComponentValues" }o--|| "PM.CustomEnumComponents" : "CustomEnumComponentId"
"Pricing.CustomEnumComponentValues" }o--|| "CRM.CustomEnumComponents" : "CustomEnumComponentId"
"Pricing.CustomEnumComponentValues" }o--|| "Pricing.CustomEnumComponents" : "CustomEnumComponentId"
"Pricing.CustomEnumComponentValues" }o--|| "ApplicationCore.CustomEnumComponents" : "CustomEnumComponentId"
"Pricing.CustomEnumComponentValues" }o--|| "PM.CustomEnumComponents" : "CustomEnumComponentId"
"CRM.CustomEnumComponentValues" }o--|| "CRM.CustomEnumComponents" : "CustomEnumComponentId"
"CRM.CustomEnumComponentValues" }o--|| "Pricing.CustomEnumComponents" : "CustomEnumComponentId"
"CRM.CustomEnumComponentValues" }o--|| "ApplicationCore.CustomEnumComponents" : "CustomEnumComponentId"
"CRM.CustomEnumComponentValues" }o--|| "PM.CustomEnumComponents" : "CustomEnumComponentId"
"PM.CustomEnumComponents" }o--|| "CRM.CustomEnums" : "CustomEnumId"
"PM.CustomEnumComponents" }o--|| "Pricing.CustomEnums" : "CustomEnumId"
"PM.CustomEnumComponents" }o--|| "ApplicationCore.CustomEnums" : "CustomEnumId"
"PM.CustomEnumComponents" }o--|| "PM.CustomEnums" : "CustomEnumId"
"ApplicationCore.CustomEnumComponents" }o--|| "CRM.CustomEnums" : "CustomEnumId"
"ApplicationCore.CustomEnumComponents" }o--|| "Pricing.CustomEnums" : "CustomEnumId"
"ApplicationCore.CustomEnumComponents" }o--|| "ApplicationCore.CustomEnums" : "CustomEnumId"
"ApplicationCore.CustomEnumComponents" }o--|| "PM.CustomEnums" : "CustomEnumId"
"Pricing.CustomEnumComponents" }o--|| "CRM.CustomEnums" : "CustomEnumId"
"Pricing.CustomEnumComponents" }o--|| "Pricing.CustomEnums" : "CustomEnumId"
"Pricing.CustomEnumComponents" }o--|| "ApplicationCore.CustomEnums" : "CustomEnumId"
"Pricing.CustomEnumComponents" }o--|| "PM.CustomEnums" : "CustomEnumId"
"CRM.CustomEnumComponents" }o--|| "CRM.CustomEnums" : "CustomEnumId"
"CRM.CustomEnumComponents" }o--|| "Pricing.CustomEnums" : "CustomEnumId"
"CRM.CustomEnumComponents" }o--|| "ApplicationCore.CustomEnums" : "CustomEnumId"
"CRM.CustomEnumComponents" }o--|| "PM.CustomEnums" : "CustomEnumId"
"CRM.ModelContractTemplateDetails" }o--|| "CRM.CustomEnums" : "CustomEnumId"
"CRM.ModelContractTemplateDetails" }o--|| "Pricing.CustomEnums" : "CustomEnumId"
"CRM.ModelContractTemplateDetails" }o--|| "ApplicationCore.CustomEnums" : "CustomEnumId"
"CRM.ModelContractTemplateDetails" }o--|| "PM.CustomEnums" : "CustomEnumId"
"CRM.SalesBatchDetails" }o--|| "CRM.CustomEnums" : "CustomEnumId"
"CRM.SalesBatchDetails" }o--|| "Pricing.CustomEnums" : "CustomEnumId"
"CRM.SalesBatchDetails" }o--|| "ApplicationCore.CustomEnums" : "CustomEnumId"
"CRM.SalesBatchDetails" }o--|| "PM.CustomEnums" : "CustomEnumId"
"CRM.SalesBatchGeneratorDetails" }o--|| "CRM.CustomEnums" : "CustomEnumId"
"CRM.SalesBatchGeneratorDetails" }o--|| "Pricing.CustomEnums" : "CustomEnumId"
"CRM.SalesBatchGeneratorDetails" }o--|| "ApplicationCore.CustomEnums" : "CustomEnumId"
"CRM.SalesBatchGeneratorDetails" }o--|| "PM.CustomEnums" : "CustomEnumId"
"CRM.ContractTemplateDetails" }o--|| "CRM.CustomEnums" : "CustomEnumId"
"CRM.ContractTemplateDetails" }o--|| "Pricing.CustomEnums" : "CustomEnumId"
"CRM.ContractTemplateDetails" }o--|| "ApplicationCore.CustomEnums" : "CustomEnumId"
"CRM.ContractTemplateDetails" }o--|| "PM.CustomEnums" : "CustomEnumId"
erDiagram
"CRM.CustomEnumComponentValueKeyValues" {
uniqueidentifier Id PK
uniqueidentifier CustomEnumComponentValueId FK
nvarchar Key
nvarchar Value
uniqueidentifier Tenant
datetimeoffset EntityCreatedDateTime
datetimeoffset EntityUpdatedDateTime
uniqueidentifier EntityCreatedAuthToken
uniqueidentifier EntityUpdatedAuthToken
bit Concealed
}
"CRM.CustomEnumComponentValues" {
uniqueidentifier Id PK
uniqueidentifier CustomEnumComponentId FK
nvarchar Value
nvarchar ScriptValue
datetimeoffset StartDate
uniqueidentifier Tenant
datetimeoffset EntityCreatedDateTime
datetimeoffset EntityUpdatedDateTime
uniqueidentifier EntityCreatedAuthToken
uniqueidentifier EntityUpdatedAuthToken
bit Concealed
}
"CRM.CustomEnumComponents" {
uniqueidentifier Id PK
uniqueidentifier CustomEnumId FK
nvarchar Name
nvarchar ExternalReference
datetimeoffset StartDate
datetimeoffset EndDate
uniqueidentifier Tenant
datetimeoffset EntityCreatedDateTime
datetimeoffset EntityUpdatedDateTime
uniqueidentifier EntityCreatedAuthToken
uniqueidentifier EntityUpdatedAuthToken
bit Concealed
}
"CRM.CustomEnums" {
uniqueidentifier Id PK
nvarchar Name
nvarchar Description
uniqueidentifier Tenant
datetimeoffset EntityCreatedDateTime
datetimeoffset EntityUpdatedDateTime
uniqueidentifier EntityCreatedAuthToken
uniqueidentifier EntityUpdatedAuthToken
bit Concealed
}
"PM.CustomEnumComponentValueKeyValues" }o--|| "CRM.CustomEnumComponentValues" : "CustomEnumComponentValueId"
"PM.CustomEnumComponentValueKeyValues" }o--|| "Pricing.CustomEnumComponentValues" : "CustomEnumComponentValueId"
"PM.CustomEnumComponentValueKeyValues" }o--|| "ApplicationCore.CustomEnumComponentValues" : "CustomEnumComponentValueId"
"PM.CustomEnumComponentValueKeyValues" }o--|| "PM.CustomEnumComponentValues" : "CustomEnumComponentValueId"
"ApplicationCore.CustomEnumComponentValueKeyValues" }o--|| "CRM.CustomEnumComponentValues" : "CustomEnumComponentValueId"
"ApplicationCore.CustomEnumComponentValueKeyValues" }o--|| "Pricing.CustomEnumComponentValues" : "CustomEnumComponentValueId"
"ApplicationCore.CustomEnumComponentValueKeyValues" }o--|| "ApplicationCore.CustomEnumComponentValues" : "CustomEnumComponentValueId"
"ApplicationCore.CustomEnumComponentValueKeyValues" }o--|| "PM.CustomEnumComponentValues" : "CustomEnumComponentValueId"
"Pricing.CustomEnumComponentValueKeyValues" }o--|| "CRM.CustomEnumComponentValues" : "CustomEnumComponentValueId"
"Pricing.CustomEnumComponentValueKeyValues" }o--|| "Pricing.CustomEnumComponentValues" : "CustomEnumComponentValueId"
"Pricing.CustomEnumComponentValueKeyValues" }o--|| "ApplicationCore.CustomEnumComponentValues" : "CustomEnumComponentValueId"
"Pricing.CustomEnumComponentValueKeyValues" }o--|| "PM.CustomEnumComponentValues" : "CustomEnumComponentValueId"
"CRM.CustomEnumComponentValueKeyValues" }o--|| "CRM.CustomEnumComponentValues" : "CustomEnumComponentValueId"
"CRM.CustomEnumComponentValueKeyValues" }o--|| "Pricing.CustomEnumComponentValues" : "CustomEnumComponentValueId"
"CRM.CustomEnumComponentValueKeyValues" }o--|| "ApplicationCore.CustomEnumComponentValues" : "CustomEnumComponentValueId"
"CRM.CustomEnumComponentValueKeyValues" }o--|| "PM.CustomEnumComponentValues" : "CustomEnumComponentValueId"
"PM.CustomEnumComponentValues" }o--|| "CRM.CustomEnumComponents" : "CustomEnumComponentId"
"PM.CustomEnumComponentValues" }o--|| "Pricing.CustomEnumComponents" : "CustomEnumComponentId"
"PM.CustomEnumComponentValues" }o--|| "ApplicationCore.CustomEnumComponents" : "CustomEnumComponentId"
"PM.CustomEnumComponentValues" }o--|| "PM.CustomEnumComponents" : "CustomEnumComponentId"
"ApplicationCore.CustomEnumComponentValues" }o--|| "CRM.CustomEnumComponents" : "CustomEnumComponentId"
"ApplicationCore.CustomEnumComponentValues" }o--|| "Pricing.CustomEnumComponents" : "CustomEnumComponentId"
"ApplicationCore.CustomEnumComponentValues" }o--|| "ApplicationCore.CustomEnumComponents" : "CustomEnumComponentId"
"ApplicationCore.CustomEnumComponentValues" }o--|| "PM.CustomEnumComponents" : "CustomEnumComponentId"
"Pricing.CustomEnumComponentValues" }o--|| "CRM.CustomEnumComponents" : "CustomEnumComponentId"
"Pricing.CustomEnumComponentValues" }o--|| "Pricing.CustomEnumComponents" : "CustomEnumComponentId"
"Pricing.CustomEnumComponentValues" }o--|| "ApplicationCore.CustomEnumComponents" : "CustomEnumComponentId"
"Pricing.CustomEnumComponentValues" }o--|| "PM.CustomEnumComponents" : "CustomEnumComponentId"
"CRM.CustomEnumComponentValues" }o--|| "CRM.CustomEnumComponents" : "CustomEnumComponentId"
"CRM.CustomEnumComponentValues" }o--|| "Pricing.CustomEnumComponents" : "CustomEnumComponentId"
"CRM.CustomEnumComponentValues" }o--|| "ApplicationCore.CustomEnumComponents" : "CustomEnumComponentId"
"CRM.CustomEnumComponentValues" }o--|| "PM.CustomEnumComponents" : "CustomEnumComponentId"
"PM.CustomEnumComponents" }o--|| "CRM.CustomEnums" : "CustomEnumId"
"PM.CustomEnumComponents" }o--|| "Pricing.CustomEnums" : "CustomEnumId"
"PM.CustomEnumComponents" }o--|| "ApplicationCore.CustomEnums" : "CustomEnumId"
"PM.CustomEnumComponents" }o--|| "PM.CustomEnums" : "CustomEnumId"
"ApplicationCore.CustomEnumComponents" }o--|| "CRM.CustomEnums" : "CustomEnumId"
"ApplicationCore.CustomEnumComponents" }o--|| "Pricing.CustomEnums" : "CustomEnumId"
"ApplicationCore.CustomEnumComponents" }o--|| "ApplicationCore.CustomEnums" : "CustomEnumId"
"ApplicationCore.CustomEnumComponents" }o--|| "PM.CustomEnums" : "CustomEnumId"
"Pricing.CustomEnumComponents" }o--|| "CRM.CustomEnums" : "CustomEnumId"
"Pricing.CustomEnumComponents" }o--|| "Pricing.CustomEnums" : "CustomEnumId"
"Pricing.CustomEnumComponents" }o--|| "ApplicationCore.CustomEnums" : "CustomEnumId"
"Pricing.CustomEnumComponents" }o--|| "PM.CustomEnums" : "CustomEnumId"
"CRM.CustomEnumComponents" }o--|| "CRM.CustomEnums" : "CustomEnumId"
"CRM.CustomEnumComponents" }o--|| "Pricing.CustomEnums" : "CustomEnumId"
"CRM.CustomEnumComponents" }o--|| "ApplicationCore.CustomEnums" : "CustomEnumId"
"CRM.CustomEnumComponents" }o--|| "PM.CustomEnums" : "CustomEnumId"
"CRM.ModelContractTemplateDetails" }o--|| "CRM.CustomEnums" : "CustomEnumId"
"CRM.ModelContractTemplateDetails" }o--|| "Pricing.CustomEnums" : "CustomEnumId"
"CRM.ModelContractTemplateDetails" }o--|| "ApplicationCore.CustomEnums" : "CustomEnumId"
"CRM.ModelContractTemplateDetails" }o--|| "PM.CustomEnums" : "CustomEnumId"
"CRM.SalesBatchDetails" }o--|| "CRM.CustomEnums" : "CustomEnumId"
"CRM.SalesBatchDetails" }o--|| "Pricing.CustomEnums" : "CustomEnumId"
"CRM.SalesBatchDetails" }o--|| "ApplicationCore.CustomEnums" : "CustomEnumId"
"CRM.SalesBatchDetails" }o--|| "PM.CustomEnums" : "CustomEnumId"
"CRM.SalesBatchGeneratorDetails" }o--|| "CRM.CustomEnums" : "CustomEnumId"
"CRM.SalesBatchGeneratorDetails" }o--|| "Pricing.CustomEnums" : "CustomEnumId"
"CRM.SalesBatchGeneratorDetails" }o--|| "ApplicationCore.CustomEnums" : "CustomEnumId"
"CRM.SalesBatchGeneratorDetails" }o--|| "PM.CustomEnums" : "CustomEnumId"
"CRM.ContractTemplateDetails" }o--|| "CRM.CustomEnums" : "CustomEnumId"
"CRM.ContractTemplateDetails" }o--|| "Pricing.CustomEnums" : "CustomEnumId"
"CRM.ContractTemplateDetails" }o--|| "ApplicationCore.CustomEnums" : "CustomEnumId"
"CRM.ContractTemplateDetails" }o--|| "PM.CustomEnums" : "CustomEnumId"
{
"definitions": {
"CRM.CustomEnumComponents": {
"properties": {
"Concealed": {
"type": "boolean",
"description": "bit"
},
"Id": {
"format": "uuid",
"description": "uniqueidentifier",
"type": "string"
},
"EntityUpdatedAuthToken": {
"format": "uuid",
"description": "uniqueidentifier",
"type": "string"
},
"Name": {
"type": "string",
"description": "nvarchar"
},
"EntityCreatedAuthToken": {
"format": "uuid",
"description": "uniqueidentifier",
"type": "string"
},
"EndDate": {
"format": "date-time",
"description": "datetimeoffset",
"type": "string"
},
"EntityUpdatedDateTime": {
"format": "date-time",
"description": "datetimeoffset",
"type": "string"
},
"Tenant": {
"format": "uuid",
"description": "uniqueidentifier",
"type": "string"
},
"ExternalReference": {
"type": "string",
"description": "nvarchar"
},
"EntityCreatedDateTime": {
"format": "date-time",
"description": "datetimeoffset",
"type": "string"
},
"StartDate": {
"format": "date-time",
"description": "datetimeoffset",
"type": "string"
},
"CustomEnumId": {
"type": "string",
"description": "FK to PM.CustomEnums"
}
},
"type": "object"
},
"CRM.CustomEnumComponentValues": {
"properties": {
"Concealed": {
"type": "boolean",
"description": "bit"
},
"EntityUpdatedAuthToken": {
"format": "uuid",
"description": "uniqueidentifier",
"type": "string"
},
"Id": {
"format": "uuid",
"description": "uniqueidentifier",
"type": "string"
},
"CustomEnumComponentId": {
"type": "string",
"description": "FK to PM.CustomEnumComponents"
},
"EntityCreatedAuthToken": {
"format": "uuid",
"description": "uniqueidentifier",
"type": "string"
},
"ScriptValue": {
"type": "string",
"description": "nvarchar"
},
"Value": {
"type": "string",
"description": "nvarchar"
},
"StartDate": {
"format": "date-time",
"description": "datetimeoffset",
"type": "string"
},
"EntityUpdatedDateTime": {
"format": "date-time",
"description": "datetimeoffset",
"type": "string"
},
"EntityCreatedDateTime": {
"format": "date-time",
"description": "datetimeoffset",
"type": "string"
},
"Tenant": {
"format": "uuid",
"description": "uniqueidentifier",
"type": "string"
}
},
"type": "object"
},
"CRM.CustomEnums": {
"properties": {
"Concealed": {
"type": "boolean",
"description": "bit"
},
"EntityUpdatedAuthToken": {
"format": "uuid",
"description": "uniqueidentifier",
"type": "string"
},
"Id": {
"format": "uuid",
"description": "uniqueidentifier",
"type": "string"
},
"Description": {
"type": "string",
"description": "nvarchar"
},
"EntityCreatedDateTime": {
"format": "date-time",
"description": "datetimeoffset",
"type": "string"
},
"Name": {
"type": "string",
"description": "nvarchar"
},
"EntityUpdatedDateTime": {
"format": "date-time",
"description": "datetimeoffset",
"type": "string"
},
"EntityCreatedAuthToken": {
"format": "uuid",
"description": "uniqueidentifier",
"type": "string"
},
"Tenant": {
"format": "uuid",
"description": "uniqueidentifier",
"type": "string"
}
},
"type": "object"
},
"CRM.CustomEnumComponentValueKeyValues": {
"properties": {
"Concealed": {
"type": "boolean",
"description": "bit"
},
"EntityUpdatedAuthToken": {
"format": "uuid",
"description": "uniqueidentifier",
"type": "string"
},
"Id": {
"format": "uuid",
"description": "uniqueidentifier",
"type": "string"
},
"Key": {
"type": "string",
"description": "nvarchar"
},
"CustomEnumComponentValueId": {
"type": "string",
"description": "FK to PM.CustomEnumComponentValues"
},
"EntityCreatedAuthToken": {
"format": "uuid",
"description": "uniqueidentifier",
"type": "string"
},
"Value": {
"type": "string",
"description": "nvarchar"
},
"EntityUpdatedDateTime": {
"format": "date-time",
"description": "datetimeoffset",
"type": "string"
},
"EntityCreatedDateTime": {
"format": "date-time",
"description": "datetimeoffset",
"type": "string"
},
"Tenant": {
"format": "uuid",
"description": "uniqueidentifier",
"type": "string"
}
},
"type": "object"
}
},
"title": "CRM.CustomEnum",
"$comment": "Generated from Mermaid ERD with property-level descriptions",
"$schema": "http://json-schema.org/draft-07/schema#",
"type": "object"
}