Codeunit CCS DIS Record Pool Mgt.
codeunit 5100915 "CCS DIS Record Pool Mgt."
Properties
| Name | Value |
| :- | :- |
| SingleInstance | 1 |
| Permissions | tabledata "CCS DIS Partner" = r,
tabledata "CCS DIS Partner Rec. Rec. Pool" = r,
tabledata "CCS DIS Rec. Pool Rel. Filter" = r,
tabledata "CCS DIS Rec. Pool Rel. Table" = r,
tabledata "CCS DIS Record Pool" = r,
tabledata "CCS DIS Record Pool Entry" = rmi,
tabledata "CCS DIS Record Pool Field" = r,
tabledata "CCS DIS Record Pool Filter" = r,
tabledata "CCS DIS Record Pool Logging" = rmi,
tabledata "CCS DIS Record Pool Partner" = r,
tabledata "CCS DIS Record Pool Rec. Freq." = r,
tabledata "CCS DIS Setup" = r |
Methods
CheckAndCreateRecordPoolEntry
public "CCS DIS Record Pool Mgt." CheckAndCreateRecordPoolEntry(var RecRef: RecordRef; var xRecRef: RecordRef; TypeOfChange: Enum "CCS DIS Rec. Pool Entry Type Of Change"): None
Processes the check and creation of a record pool entry for a record and a type of change.
Use this procedure to log entries for custom logging types.
Parameters
Name |
Type |
Description |
RecRef |
RecordRef |
The record to be logged. |
xRecRef |
RecordRef |
The x record to be logged. |
TypeOfChange |
Enum "CCS DIS Rec. Pool Entry Type Of Change" |
The record's type of change. |
Return Value
None
CheckAndCreateRecordPoolEntry
public "CCS DIS Record Pool Mgt." CheckAndCreateRecordPoolEntry(var RecRef: RecordRef; var xRecRef: RecordRef; TypeOfChange: Enum "CCS DIS Rec. Pool Entry Type Of Change"; RecordPool: Record "CCS DIS Record Pool"; IsMapping: Boolean): None
Processes the check and creation of a record pool entry for a record, a type of change and a record pool.
Use CheckAndCreateRecordPoolEntry to log entries for custom logging types.
Parameters
Name |
Type |
Description |
RecRef |
RecordRef |
The record to be logged. |
xRecRef |
RecordRef |
The x record to be logged. |
TypeOfChange |
Enum "CCS DIS Rec. Pool Entry Type Of Change" |
The record's type of change. |
RecordPool |
Record "CCS DIS Record Pool" |
The record pool to be logged. |
IsMapping |
Boolean |
Set to true, if the current execution is part of a mapping. |
Return Value
None
CreateRecordPoolEntry
public "CCS DIS Record Pool Mgt." CreateRecordPoolEntry(var RecRef: RecordRef; var xRecRef: RecordRef; TypeOfChange: Enum "CCS DIS Rec. Pool Entry Type Of Change"; RecordPool: Record "CCS DIS Record Pool"; RecordPoolPartner: Record "CCS DIS Record Pool Partner"): None
Inserts or updates a record pool entry based on the type of change.
If a valid record pool entry was found and the type of change is
- Delete: Depending on the existing entry: insert -> obsolete, rename -> insert, others -> updated
- Rename: Depending on the existing entry: delete -> obsolete, insert -> updated, others -> two new entries created
- Others: Depending on the existing entry: rename -> insert, others -> updated
Parameters
Name |
Type |
Description |
RecRef |
RecordRef |
The record to be logged. |
xRecRef |
RecordRef |
The x record to be logged. |
TypeOfChange |
Enum "CCS DIS Rec. Pool Entry Type Of Change" |
The record's type of change. |
RecordPool |
Record "CCS DIS Record Pool" |
The record pool to be logged. |
RecordPoolPartner |
Record "CCS DIS Record Pool Partner" |
The record pool partner for configuration. |
Return Value
None
DeleteBySetup
public "CCS DIS Record Pool Mgt." DeleteBySetup(): None
Deletes all processed and deprecated record pool entries based on the setup.
Return Value
None
InsertRecordPoolEntry
public "CCS DIS Record Pool Mgt." InsertRecordPoolEntry(var RecRef: RecordRef; var xRecRef: RecordRef; RecordPoolPartner: Record "CCS DIS Record Pool Partner"; TypeOfChange: Enum "CCS DIS Rec. Pool Entry Type Of Change"; var RecordPoolEntry: Record "CCS DIS Record Pool Entry"): None
Creates a record pool entry.
Parameters
Name |
Type |
Description |
RecRef |
RecordRef |
The current record for the record id field. |
xRecRef |
RecordRef |
The old record for Rename/Delete logging. |
RecordPoolPartner |
Record "CCS DIS Record Pool Partner" |
The current record pool partner. |
TypeOfChange |
Enum "CCS DIS Rec. Pool Entry Type Of Change" |
The current type of change. |
RecordPoolEntry |
Record "CCS DIS Record Pool Entry" |
|
Return Value
None
IsLogActive
public "CCS DIS Record Pool Mgt." IsLogActive(TableId: Integer; TypeOfChange: Enum "CCS DIS Rec. Pool Entry Type Of Change"): Boolean
Returns if the logging for a specified type of change is activated.
Parameters
Name |
Type |
Description |
TableId |
Integer |
The table id to be verified for logging. |
TypeOfChange |
Enum "CCS DIS Rec. Pool Entry Type Of Change" |
The type of changed to be verified for logging. |
Return Value
Boolean
Returns true, if the logging is activated for any record pool.
LogDeletion
public "CCS DIS Record Pool Mgt." LogDeletion(var RecRef: RecordRef): None
Starts the record pool logging with type of change Database-Delete.
This procedure does not necessarily create a record pool entry.
Parameters
Name |
Type |
Description |
RecRef |
RecordRef |
The record to check the logging and entry creation. |
Return Value
None
LogEvent
public "CCS DIS Record Pool Mgt." LogEvent(RecRelatedVariant: Variant): None
Starts the record pool logging with type of change Codeunit-Event.
This procedure does not necessarily create a record pool entry.
Parameters
Name |
Type |
Description |
RecRelatedVariant |
Variant |
|
Return Value
None
LogInsertion
public "CCS DIS Record Pool Mgt." LogInsertion(var RecRef: RecordRef): None
Starts the record pool logging with type of change Database-Insert.
This procedure does not necessarily create a record pool entry.
Parameters
Name |
Type |
Description |
RecRef |
RecordRef |
The record to check the logging and entry creation. |
Return Value
None
LogModification
public "CCS DIS Record Pool Mgt." LogModification(var RecRef: RecordRef): None
Starts the record pool logging with type of change Database-Modify.
This procedure does not necessarily create a record pool entry.
Parameters
Name |
Type |
Description |
RecRef |
RecordRef |
The record to check the logging and entry creation. |
Return Value
None
LogRename
public "CCS DIS Record Pool Mgt." LogRename(var RecRef: RecordRef; var xRecRef: RecordRef): None
Starts the record pool logging with type of change Database-Rename.
This procedure does not necessarily create a record pool entry.
Parameters
Name |
Type |
Description |
RecRef |
RecordRef |
The record to check the logging and entry creation. |
xRecRef |
RecordRef |
|
Return Value
None
ReRecRecordPoolEntry
public "CCS DIS Record Pool Mgt." ReRecRecordPoolEntry(RecRef: RecordRef; var RecordPoolEntry: Record "CCS DIS Record Pool Entry"): None
Updates the record pool entry to the most current record id.
Parameters
Name |
Type |
Description |
RecRef |
RecordRef |
The new record. |
RecordPoolEntry |
Record "CCS DIS Record Pool Entry" |
The entry to be updated. |
Return Value
None
Events
OnAfterCheckPartnerLogging
event "CCS DIS Record Pool Mgt." OnAfterCheckPartnerLogging(TypeOfChange: Enum "CCS DIS Rec. Pool Entry Type Of Change"; RecordPoolPartner: Record "CCS DIS Record Pool Partner"; var Logging: Boolean)
The event is fired after the table trigger logging for a type of changed is validated by the record pool partner setting.
Subscribe this event to customize the logging decision for a record pool partner and a type of change.
Parameters
Name |
Type |
Description |
TypeOfChange |
Enum "CCS DIS Rec. Pool Entry Type Of Change" |
The record's type of change. |
RecordPoolPartner |
Record "CCS DIS Record Pool Partner" |
The current record pool partner. |
Logging |
Boolean |
The logging decision, as reference. |
Attributes
Name |
Arguments |
IntegrationEvent |
False, False |
OnAfterCreateTableLoggingForRecPool
event "CCS DIS Record Pool Mgt." OnAfterCreateTableLoggingForRecPool(RecordPool: Record "CCS DIS Record Pool"; var TempTableLogging: Record "CCS DIS Record Pool Logging" temporary)
The event is fired on reading the required triggers to log for a table, for each record pool, after the partner have been verified.
Subscribe this event ot customize the table logging based on your additional record pool settings.
Parameters
Name |
Type |
Description |
RecordPool |
Record "CCS DIS Record Pool" |
The current record pool to be validated. |
TempTableLogging |
Record "CCS DIS Record Pool Logging" temporary |
|
Attributes
Name |
Arguments |
IntegrationEvent |
False, False |
OnAfterDeprecateRecordPoolEntry
event "CCS DIS Record Pool Mgt." OnAfterDeprecateRecordPoolEntry(var RecordPoolEntry: Record "CCS DIS Record Pool Entry")
The event is fired after an existing entry was deprecated.
Parameters
Name |
Type |
Description |
RecordPoolEntry |
Record "CCS DIS Record Pool Entry" |
The already deprecated (modified) record pool entry. |
Attributes
Name |
Arguments |
IntegrationEvent |
False, False |
OnAfterInsertOrUpdateRecordPoolEntry
event "CCS DIS Record Pool Mgt." OnAfterInsertOrUpdateRecordPoolEntry(RecordPoolEntry: Record "CCS DIS Record Pool Entry"; var RecRef: RecordRef; var xRecRef: RecordRef; TypeOfChange: Enum "CCS DIS Rec. Pool Entry Type Of Change"; RecordPool: Record "CCS DIS Record Pool"; RecordPoolPartner: Record "CCS DIS Record Pool Partner")
The event is fired after a record pool entry was created or updated.
Subscribe this event for post processing of a record pool entry.
Parameters
Name |
Type |
Description |
RecordPoolEntry |
Record "CCS DIS Record Pool Entry" |
The created or updated record pool entry. |
RecRef |
RecordRef |
The record that caused an entry modification. |
xRecRef |
RecordRef |
The x record that caused an entry modification. |
TypeOfChange |
Enum "CCS DIS Rec. Pool Entry Type Of Change" |
The type of change that caused an entry modification. |
RecordPool |
Record "CCS DIS Record Pool" |
The current record pool for the modification. |
RecordPoolPartner |
Record "CCS DIS Record Pool Partner" |
The current record pool partner for the modification. |
Attributes
Name |
Arguments |
IntegrationEvent |
False, False |
OnAfterIsPartnerRecordValid
event "CCS DIS Record Pool Mgt." OnAfterIsPartnerRecordValid(var RecRef: RecordRef; RecordPoolPartner: Record "CCS DIS Record Pool Partner"; var IsValid: Boolean)
The event is fired after a record for a partner is validated for record pool logging.
Subscribe this event to customize the validity decision of a record for a record pool partner.
Parameters
Name |
Type |
Description |
RecRef |
RecordRef |
The record to be validated. |
RecordPoolPartner |
Record "CCS DIS Record Pool Partner" |
The record pool partner to validate against. |
IsValid |
Boolean |
The validity decision, as reference. |
Attributes
Name |
Arguments |
IntegrationEvent |
False, False |
OnAfterReRecRecordPoolEntry
event "CCS DIS Record Pool Mgt." OnAfterReRecRecordPoolEntry(RecRef: RecordRef; var RecordPoolEntry: Record "CCS DIS Record Pool Entry")
The event is fired after an existing entry was updated with the new record.
Parameters
Name |
Type |
Description |
RecRef |
RecordRef |
The new record ref. |
RecordPoolEntry |
Record "CCS DIS Record Pool Entry" |
The already modified record pool entry. |
Attributes
Name |
Arguments |
IntegrationEvent |
False, False |
OnAfterUpdateRecordPoolEntry
event "CCS DIS Record Pool Mgt." OnAfterUpdateRecordPoolEntry(var RecordPoolEntry: Record "CCS DIS Record Pool Entry"; xRecRef: RecordRef; TypeOfChange: Enum "CCS DIS Rec. Pool Entry Type Of Change")
The event is fired after an existing entry was updated.
Parameters
Name |
Type |
Description |
RecordPoolEntry |
Record "CCS DIS Record Pool Entry" |
The already updated (modified) record pool entry. |
xRecRef |
RecordRef |
The current xrecord ref, used to save XML data for rename and delete type of change. |
TypeOfChange |
Enum "CCS DIS Rec. Pool Entry Type Of Change" |
The current type of change. |
Attributes
Name |
Arguments |
IntegrationEvent |
False, False |
OnBeforeRecordPoolFieldValidation
event "CCS DIS Record Pool Mgt." OnBeforeRecordPoolFieldValidation(var RecRef: RecordRef; var xRecRef: RecordRef; var RecordPoolField: Record "CCS DIS Record Pool Field"; TypeOfChange: Enum "CCS DIS Rec. Pool Entry Type Of Change"; var IsFieldValid: Boolean; var IsHandled: Boolean)
The event is fired before validation the record pool fields.
Subscribe this event to customize the handling of record pool fields.
Set IsHandled to true, to skip default logic.
If no record pool fields are configured, the event will not be fired.
Parameters
Name |
Type |
Description |
RecRef |
RecordRef |
The record to check field validation for. |
xRecRef |
RecordRef |
The xrecord (previous record) to check field validation for. |
RecordPoolField |
Record "CCS DIS Record Pool Field" |
The filtered record pool fields that will be validated. |
TypeOfChange |
Enum "CCS DIS Rec. Pool Entry Type Of Change" |
The type of change causing the record pool logging. |
IsFieldValid |
Boolean |
Set to true, if the field validation was successful. |
IsHandled |
Boolean |
Set to true, if the default logic should be skipped. |
Attributes
Name |
Arguments |
IntegrationEvent |
False, False |
OnDoCheckAndCreateRecordPoolEntryBeforeLoop
event "CCS DIS Record Pool Mgt." OnDoCheckAndCreateRecordPoolEntryBeforeLoop(var RecordPoolPartner: Record "CCS DIS Record Pool Partner"; RecordPool: Record "CCS DIS Record Pool"; var RecRef: RecordRef; var xRecRef: RecordRef; TypeOfChange: Enum "CCS DIS Rec. Pool Entry Type Of Change"; var IsMapping: Boolean)
The event is fired before the record pool partner loop of checking and creating record pool entries.
Subscribe this event to customize the record pool partner filter.
Parameters
Name |
Type |
Description |
RecordPoolPartner |
Record "CCS DIS Record Pool Partner" |
The filtered record pool partner, as reference. |
RecordPool |
Record "CCS DIS Record Pool" |
The current record pool. |
RecRef |
RecordRef |
The current record ref. |
xRecRef |
RecordRef |
The current xrecord ref. |
TypeOfChange |
Enum "CCS DIS Rec. Pool Entry Type Of Change" |
The record's type of change. |
IsMapping |
Boolean |
Defines if the logging is initiated by a mapping execution. |
Attributes
Name |
Arguments |
IntegrationEvent |
False, False |
OnGetRecordPoolEntry
event "CCS DIS Record Pool Mgt." OnGetRecordPoolEntry(RecRef: RecordRef; RecordPoolPartner: Record "CCS DIS Record Pool Partner"; var RecordPoolEntry: Record "CCS DIS Record Pool Entry"; FindLast: Boolean)
The event is fired when searching the record pool entry.
Parameters
Name |
Type |
Description |
RecRef |
RecordRef |
The current record ref used as filter. |
RecordPoolPartner |
Record "CCS DIS Record Pool Partner" |
The current record pool partner used as filter. |
RecordPoolEntry |
Record "CCS DIS Record Pool Entry" |
The already filtered and found record pool entry. |
FindLast |
Boolean |
Defines if the filtered record pool entry was found. |
Attributes
Name |
Arguments |
IntegrationEvent |
False, False |
OnInsertRecordPoolEntry
event "CCS DIS Record Pool Mgt." OnInsertRecordPoolEntry(RecRef: RecordRef; xRecRef: RecordRef; RecordPoolPartner: Record "CCS DIS Record Pool Partner"; TypeOfChange: Enum "CCS DIS Rec. Pool Entry Type Of Change"; var RecordPoolEntry: Record "CCS DIS Record Pool Entry")
The event is fired right before a record pool entry is created.
Parameters
Name |
Type |
Description |
RecRef |
RecordRef |
The current record ref used as filter. |
xRecRef |
RecordRef |
|
RecordPoolPartner |
Record "CCS DIS Record Pool Partner" |
The current record pool partner used as filter. |
TypeOfChange |
Enum "CCS DIS Rec. Pool Entry Type Of Change" |
|
RecordPoolEntry |
Record "CCS DIS Record Pool Entry" |
The already filtered, but not yet loaded(!), record pool entry. |
Attributes
Name |
Arguments |
IntegrationEvent |
False, False |
OnIsLogActive
event "CCS DIS Record Pool Mgt." OnIsLogActive(TableId: Integer; TypeOfChange: Enum "CCS DIS Rec. Pool Entry Type Of Change"; var TempTableLogging: Record "CCS DIS Record Pool Logging" temporary)
The event is fired after the table is verified to be logged.
If the table was not cached, the TempTableTrigger record was created.
Parameters
Name |
Type |
Description |
TableId |
Integer |
The table to verify the logging. |
TypeOfChange |
Enum "CCS DIS Rec. Pool Entry Type Of Change" |
The current record's type of change. |
TempTableLogging |
Record "CCS DIS Record Pool Logging" temporary |
|
Attributes
Name |
Arguments |
IntegrationEvent |
False, False |
OnIsNotFieldValid
event "CCS DIS Record Pool Mgt." OnIsNotFieldValid(RecRef: RecordRef; xRecRef: RecordRef; RecordPool: Record "CCS DIS Record Pool"; TypeOfChange: Enum "CCS DIS Rec. Pool Entry Type Of Change")
The event is fired if the record is not valid for the record pool field configuration.
Parameters
Name |
Type |
Description |
RecRef |
RecordRef |
The current record ref. |
xRecRef |
RecordRef |
The current xrecord ref. |
RecordPool |
Record "CCS DIS Record Pool" |
The current record pool. |
TypeOfChange |
Enum "CCS DIS Rec. Pool Entry Type Of Change" |
The current type of change. |
Attributes
Name |
Arguments |
IntegrationEvent |
False, False |
OnIsNotInFilter
event "CCS DIS Record Pool Mgt." OnIsNotInFilter(RecRef: RecordRef; RecordPool: Record "CCS DIS Record Pool"; RecordPoolPartner: Record "CCS DIS Record Pool Partner")
The event is fired if the record is not valid for the record pool filter configuration.
Parameters
Name |
Type |
Description |
RecRef |
RecordRef |
The current record ref. |
RecordPool |
Record "CCS DIS Record Pool" |
The current record pool. |
RecordPoolPartner |
Record "CCS DIS Record Pool Partner" |
The current record pool partner used for validation. |
Attributes
Name |
Arguments |
IntegrationEvent |
False, False |
OnIsNotPartnerRecordValid
event "CCS DIS Record Pool Mgt." OnIsNotPartnerRecordValid(RecRef: RecordRef; RecordPoolPartner: Record "CCS DIS Record Pool Partner")
The event is fired if the record is not valid for the partner matrix (partner record) configuration.
Parameters
Name |
Type |
Description |
RecRef |
RecordRef |
The current record ref. |
RecordPoolPartner |
Record "CCS DIS Record Pool Partner" |
The current record pool partner used for validation. |
Attributes
Name |
Arguments |
IntegrationEvent |
False, False |
OnIsNotRecordFrequencyValid
event "CCS DIS Record Pool Mgt." OnIsNotRecordFrequencyValid(RecRef: RecordRef; RecordPoolPartner: Record "CCS DIS Record Pool Partner")
The event is fired if the record is not valid for the record pool record frequency configuration.
Parameters
Name |
Type |
Description |
RecRef |
RecordRef |
The current record ref. |
RecordPoolPartner |
Record "CCS DIS Record Pool Partner" |
The current record pool partner used for validation. |
Attributes
Name |
Arguments |
IntegrationEvent |
False, False |
event "CCS DIS Record Pool Mgt." OnModifyRelatedRecordsBeforeLoop(var RelatedTable: Record "CCS DIS Rec. Pool Rel. Table"; RecordPool: Record "CCS DIS Record Pool"; RecRef: RecordRef)
Parameters
Name |
Type |
Description |
RelatedTable |
Record "CCS DIS Rec. Pool Rel. Table" |
|
RecordPool |
Record "CCS DIS Record Pool" |
|
RecRef |
RecordRef |
|
Attributes
Name |
Arguments |
IntegrationEvent |
False, False |