Table of Contents

Applications.PersonalData.PersonalDataProcesses Entity

Namespace: Applications.PersonalData

Represents processes, which process personal data, regulated by GDPR and other applicable laws. Entity: Pdm_Personal_Data_Processes (Introduced in version 18.2)

Default Visualization

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

Track Changes

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

Aggregate

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

Aggregate Tree

Attributes

Name Type Description
Code string (16) Unique process code. Required Filter(eq;like)
ContainsSensitiveData boolean True if sensitive personal data is processed (racial, political, criminal, biometric, etc). Required Filter(eq)
DataSubjectCategory DataSubjectCategory The category of data subjects (persons), whose data is processed. EMP=Employees; JOB=Job Candidates; CON=Contractors; CUS=Customers; SUP=Suppliers; PAR=Partners; OTH=Other. Required
Description string (max) nullable Description of the process.
DiscontinuationDate date nullable The date on which the process was discontinued. Null if the process is still active. Filter(eq;ge;le)
DisplayText string Uses the repository DisplayTextFormat to build the display text from the attributes and references of current object.
EstablishDate date The data on which the process was established and started functioning. Required Default(Now) Filter(eq;ge;le)
Id guid
LegalBasisForProcessing LegalBasisForProcessing The basis on which the data is processed. INT=Legitimate Interest; CST=Consent; CTR=Contract; LEG=Legal Compliance; VIT=Vital Interests; PUB=Public Interest;. Required Filter(eq)
ListOfDataCategories string (254) Comma-separated list of categories of personal data (both sensitive and non-sensitive) processed by this process. Common sensitive types of data include racial, political views, religion, trade union membership, sex life, criminal records, etc. Required Filter(eq)
ListOfDataRecipient
Categories
string (254) nullable Comma-separated list of types of data users. Usual categories include Staff, Public Authority, Contractor, etc. Filter(eq;like)
ListOfProcessingPurposes string (254) nullable Comma-separated list of processing purposes. Common purposes include Invoicing, Newsletter, Notifications, Repeatable Orders, etc. Filter(eq;like)
ListOfTechnicalMeasures string (254) nullable Comma-separated list of technical measures taken to keep the data privacy. Common measures include Pseudonymisation, Encryption, Data Access Audit, etc. Filter(eq)
ListOfTransfers
ToThirdCountries
string (254) nullable Comma-separated list of third countries, to which data is sent. Filter(eq;like)
ListOfUsedSoftware string (254) nullable Comma-separated list of the names of the software products used to process the data. Filter(eq;like)
Name MultilanguageString (254) Name of the process (Multilanguage). Required Filter(eq;like)
Notes string (max) nullable Notes for this PersonalDataProcess.
ObjectVersion int32 The latest version of the extensible data object for the aggregate root for the time the object is loaded from the database. Can be used for optimistic locking.
ProcessingRole ProcessingRole The role of the enterprise company in the process - Controller or Processor. The controller owns the personal data process. The processor operates on behalf of the controller. C=Controller; P=Processor. . Required Default("C") Filter(eq)
RetentionPeriodMonths int32 nullable The period in months, for which the data is kept. Null when the period is unknown or N/A. Filter(eq)
ThirdCountryTransfers
Safeguards
string (254) nullable Description of safeguards, taken to protect personal data in case of third country transfers. Filter(eq;like)

References

Name Type Description
EnterpriseCompany EnterpriseCompanies The enterprise company, which owns the process. Required Filter(multi eq)
ProcessOwnerPerson Persons The owner and responsible person for the process. Required Filter(multi eq)

Child Collections

Name Type Description
JointControllers JointControllers List of JointController(Applications.PersonalData.JointControllers.md) child objects, based on the Applications.PersonalData.JointController.PersonalDataProcess(Applications.PersonalData.JointControllers.md#personaldataprocess) back reference
Recipients PersonalDataProcessRecipients List of PersonalDataProcess<br />Recipient(Applications.PersonalData.PersonalDataProcess
Recipients.md) child objects, based on the Applications.PersonalData.PersonalDataProcess<br />Recipient.PersonalDataProcess(Applications.PersonalData.PersonalDataProcess
Recipients.md#personaldataprocess) back reference

Attribute Details

Code

Unique process code. Required Filter(eq;like)

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

ContainsSensitiveData

True if sensitive personal data is processed (racial, political, criminal, biometric, etc). Required Filter(eq)

Type: boolean
Category: System
Supported Filters: Equals
Supports Order By: False
Show in UI: ShownByDefault

DataSubjectCategory

The category of data subjects (persons), whose data is processed. EMP=Employees; JOB=Job Candidates; CON=Contractors; CUS=Customers; SUP=Suppliers; PAR=Partners; OTH=Other. Required

Type: DataSubjectCategory
Category: System
Allowed values for the DataSubjectCategory(Applications.PersonalData.PersonalDataProcesses.md#datasubjectcategory) data attribute
Allowed Values (Applications.PersonalData.PersonalDataProcessesRepository.DataSubjectCategory Enum Members)

Value Description
Employees Employees value. Stored as 'EMP'.
Database Value: 'EMP'
Model Value: 0
Domain API Value: 'Employees'
JobCandidates JobCandidates value. Stored as 'JOB'.
Database Value: 'JOB'
Model Value: 1
Domain API Value: 'JobCandidates'
Contractors Contractors value. Stored as 'CON'.
Database Value: 'CON'
Model Value: 2
Domain API Value: 'Contractors'
Customers Customers value. Stored as 'CUS'.
Database Value: 'CUS'
Model Value: 3
Domain API Value: 'Customers'
Suppliers Suppliers value. Stored as 'SUP'.
Database Value: 'SUP'
Model Value: 4
Domain API Value: 'Suppliers'
Partners Partners value. Stored as 'PAR'.
Database Value: 'PAR'
Model Value: 5
Domain API Value: 'Partners'
Other Other value. Stored as 'OTH'.
Database Value: 'OTH'
Model Value: 6
Domain API Value: 'Other'

Supported Filters: NotFilterable
Supports Order By: False
Show in UI: ShownByDefault

Description

Description of the process.

Type: string (max) nullable
Category: System
Supported Filters: NotFilterable
Supports Order By: False
Maximum Length: 2147483647
Show in UI: ShownByDefault

DiscontinuationDate

The date on which the process was discontinued. Null if the process is still active. Filter(eq;ge;le)

Type: date nullable
Category: System
Supported Filters: Equals, GreaterThanOrLessThan
Supports Order By: False
Show in UI: ShownByDefault

DisplayText

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

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

EstablishDate

The data on which the process was established and started functioning. Required Default(Now) Filter(eq;ge;le)

Type: date
Category: System
Supported Filters: Equals, GreaterThanOrLessThan
Supports Order By: False
Default Value: CurrentDateTime
Show in UI: ShownByDefault

Id

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

LegalBasisForProcessing

The basis on which the data is processed. INT=Legitimate Interest; CST=Consent; CTR=Contract; LEG=Legal Compliance; VIT=Vital Interests; PUB=Public Interest;. Required Filter(eq)

Type: LegalBasisForProcessing
Category: System
Allowed values for the LegalBasisForProcessing(Applications.PersonalData.PersonalDataProcesses.md#legalbasisforprocessing) data attribute
Allowed Values (Applications.PersonalData.PersonalDataProcessesRepository.LegalBasisForProcessing Enum Members)

Value Description
LegitimateInterest LegitimateInterest value. Stored as 'INT'.
Database Value: 'INT'
Model Value: 0
Domain API Value: 'LegitimateInterest'
Consent Consent value. Stored as 'CST'.
Database Value: 'CST'
Model Value: 1
Domain API Value: 'Consent'
Contract Contract value. Stored as 'CTR'.
Database Value: 'CTR'
Model Value: 2
Domain API Value: 'Contract'
LegalCompliance LegalCompliance value. Stored as 'LEG'.
Database Value: 'LEG'
Model Value: 3
Domain API Value: 'LegalCompliance'
VitalInterest VitalInterest value. Stored as 'VIT'.
Database Value: 'VIT'
Model Value: 4
Domain API Value: 'VitalInterest'
PublicInterest PublicInterest value. Stored as 'PUB'.
Database Value: 'PUB'
Model Value: 5
Domain API Value: 'PublicInterest'

Supported Filters: Equals
Supports Order By: False
Show in UI: ShownByDefault

ListOfDataCategories

Comma-separated list of categories of personal data (both sensitive and non-sensitive) processed by this process. Common sensitive types of data include racial, political views, religion, trade union membership, sex life, criminal records, etc. Required Filter(eq)

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

ListOfDataRecipientCategories

Comma-separated list of types of data users. Usual categories include Staff, Public Authority, Contractor, etc. Filter(eq;like)

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

ListOfProcessingPurposes

Comma-separated list of processing purposes. Common purposes include Invoicing, Newsletter, Notifications, Repeatable Orders, etc. Filter(eq;like)

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

ListOfTechnicalMeasures

Comma-separated list of technical measures taken to keep the data privacy. Common measures include Pseudonymisation, Encryption, Data Access Audit, etc. Filter(eq)

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

ListOfTransfersToThirdCountries

Comma-separated list of third countries, to which data is sent. Filter(eq;like)

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

ListOfUsedSoftware

Comma-separated list of the names of the software products used to process the data. Filter(eq;like)

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

Name

Name of the process (Multilanguage). Required Filter(eq;like)

Type: MultilanguageString (254)
Category: System
Supported Filters: Equals, Like
Supports Order By: False
Show in UI: ShownByDefault

Notes

Notes for this PersonalDataProcess.

Type: string (max) nullable
Category: System
Supported Filters: NotFilterable
Supports Order By: False
Maximum Length: 2147483647
Show in UI: ShownByDefault

ObjectVersion

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

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

ProcessingRole

The role of the enterprise company in the process - Controller or Processor. The controller owns the personal data process. The processor operates on behalf of the controller. C=Controller; P=Processor. . Required Default("C") Filter(eq)

Type: ProcessingRole
Category: System
Allowed values for the ProcessingRole(Applications.PersonalData.PersonalDataProcesses.md#processingrole) data attribute
Allowed Values (Applications.PersonalData.PersonalDataProcessesRepository.ProcessingRole Enum Members)

Value Description
Controller Controller value. Stored as 'C'.
Database Value: 'C'
Model Value: 0
Domain API Value: 'Controller'
Processor Processor value. Stored as 'P'.
Database Value: 'P'
Model Value: 1
Domain API Value: 'Processor'

Supported Filters: Equals
Supports Order By: False
Default Value: Controller
Show in UI: ShownByDefault

RetentionPeriodMonths

The period in months, for which the data is kept. Null when the period is unknown or N/A. Filter(eq)

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

ThirdCountryTransfersSafeguards

Description of safeguards, taken to protect personal data in case of third country transfers. Filter(eq;like)

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

Reference Details

EnterpriseCompany

The enterprise company, which owns the process. Required Filter(multi eq)

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

ProcessOwnerPerson

The owner and responsible person for the process. Required Filter(multi eq)

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

API Methods

Methods that can be invoked in public APIs.

GetAllowedCustomPropertyValues

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

Parameters

  • customPropertyCode
    The code of the custom property
    Type: string

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

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

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

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

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

CreateNotification

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

Parameters

  • user
    The user.
    Type: Users

  • notificationClass
    The notification class.
    Type: string

  • subject
    The notification subject.
    Type: string

CreateCopy

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

Business Rules

None

Front-End Business Rules

None

API

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

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