---
title: "Codeunit 3903 Retention Policy Setup Impl."
author: "Jonas Paprotka"
url: https://jonas-paprotka.de/ref/codeunit/3903-retention-policy-setup-impl/
type: codeunit
id: 3903
name: "Retention Policy Setup Impl."
app: "System Application"
namespace: System.DataAdministration
versions: "17-28"
build: 28.5.54151.54365
source: "https://jonas-paprotka.de/ref/codeunit/3903-retention-policy-setup-impl/source/24/ https://jonas-paprotka.de/ref/codeunit/3903-retention-policy-setup-impl/source/25/ https://jonas-paprotka.de/ref/codeunit/3903-retention-policy-setup-impl/source/26/ https://jonas-paprotka.de/ref/codeunit/3903-retention-policy-setup-impl/source/27/ https://jonas-paprotka.de/ref/codeunit/3903-retention-policy-setup-impl/source/28/ https://jonas-paprotka.de/ref/codeunit/3903-retention-policy-setup-impl/source/29/"
checked: 2026-09-20
subject: "Microsoft Dynamics 365 Business Central"
license: "Content © 2026 Jonas Paprotka. Quote freely with attribution and a link."
---

# Codeunit 3903 Retention Policy Setup Impl.

Jonas Paprotka, https://jonas-paprotka.de/ref/codeunit/3903-retention-policy-setup-impl/

| | |
| --- | --- |
| App | System Application |
| Namespace | System.DataAdministration |
| Versions | 17-28 |
| Source file | Retention Policy/src/Retention Policy Setup/RetentionPolicySetupImpl.Codeunit.al |

## Procedures

| Name | Parameters | Returns | Access | Versions | Obsolete | Reason |
| --- | --- | --- | --- | --- | --- | --- |
| SetTableFilterView | (var Record Retention Policy Setup Line) | Text | public | 17-28 | - | - |
| GetTableFilterView | (Record Retention Policy Setup Line) | Text | public | 17-28 | - | - |
| GetTableFilterText | (Record Retention Policy Setup Line) | Text | public | 17-28 | - | - |
| TableIdLookup | (Integer) | Integer | public | 17-28 | - | - |
| TableExists | (Integer) | Boolean | public | 17-28 | - | - |
| DateFieldNoLookup | (Integer, Integer) | Integer | public | 17-28 | - | - |
| IsRetentionPolicyEnabled | () | Boolean | public | 17-28 | - | - |
| IsRetentionPolicyEnabled | (Integer) | Boolean | public | 17-28 | - | - |
| ValidateRetentionPeriod | (Record Retention Policy Setup) | - | public | 17-28 | - | - |
| ValidateRetentionPeriod | (Record Retention Policy Setup Line) | - | public | 17-28 | - | - |
| LogCategory | () | Enum Retention Policy Log Category | public | 17-28 | - | - |
| AddRetentionPolicyOnRegisterManualSetup | (Codeunit Manual Setup) | - | public | 17 | - | - |
| VerifyRetentionPolicySetupOnbeforeDeleteRetentionPeriod | (var Record Retention Period) | - | public | 17-28 | - | - |
| VerifyRetentionPolicySetupOnBeforeModifyRetentionPeriod | (var Record Retention Period) | - | public | 17-28 | - | - |
| VerifyRetentionPolicyAllowedTablesOnBeforeInsertRetenPolSetup | (var Record Retention Policy Setup) | - | public | 17-28 | - | - |
| InsertDefaultTableFiltersOnAfterInsertRetenPolSetup | (var Record Retention Policy Setup) | - | public | 17-28 | - | - |
| DeleteRetentionPolicySetup | (var Record Retention Policy Setup) | - | public | 17-28 | - | - |
| AddTableIdToDeleteAllowedList | (Integer) | - | public | 17-28 | - | - |
| NotifyOnMissingReadPermission | (Integer) | Guid | public | 17-28 | - | - |
| CheckRecordLockedOnRetentionPolicySetupLine | (Record Retention Policy Setup Line) | - | public | 17-28 | - | - |
| AddRetentionPolicyOnRegisterManualSetup | (Codeunit Guided Experience) | - | public | 18-28 | - | - |
| FindOrCreateRetentionPeriod | (Enum Retention Period Enum, DateFormula) | Code[20] | public | 21-28 | - | - |
| FindOrCreateRetentionPeriod | (Enum Retention Period Enum) | Code[20] | public | 21-28 | - | - |
| FindOrCreateRetentionPeriod | (Code[20], Enum Retention Period Enum, DateFormula) | Code[20] | public | 25-28 | - | - |

## Events

| Kind | Name | Parameters | Versions | Obsolete | Reason |
| --- | --- | --- | --- | --- | --- |
| Internal event | OnVerifyDeleteAllowed | (Integer, var Boolean) | 17-28 | - | - |

## Source

Symbols: Microsoft.SystemApplication.symbols.63ca2fa4-4f03-4f2b-a480-172fef340d3f, https://dynamicssmb2.pkgs.visualstudio.com/DynamicsBCPublicFeeds/_packaging/MSSymbols/nuget/v3/index.json, highest build per major on 2026-09-20.
AL source 24: https://github.com/microsoft/BCApps, MIT, releases/24.x at fe14d3e6db00d28df3a69c7bba830813d70794e2.
AL source 25: https://github.com/microsoft/BCApps, MIT, releases/25.x at 68d52c129129c83b2e396a473aaa5b2ce61d2eed.
AL source 26: https://github.com/microsoft/BCApps, MIT, releases/26.x at 78c4acf0d64a8eee157ea80164fa8fc2acffc9eb.
AL source 27: https://github.com/microsoft/BCApps, MIT, releases/27.x at 1749020b4c9445a43e4f7f540e89b7fa76ec25fd.
AL source 28: https://github.com/microsoft/BCApps, MIT, releases/28.x at 740f59156b249f8ed7cba2e28423f03ae7b07233.
AL source 29: https://github.com/microsoft/BCApps, MIT, releases/29.x at a66254c3b8b5bb1cea290dc8f9d097aec4381153.

Jonas Paprotka, 2026-09-20.
