Codeunit 3993 Base Application Logs Truncate
- App
- Base Application
- Namespace
- Microsoft
- Versions
- 28
Versions171819202122232425262728
Source29
Source in 29
src/Layers/W1/BaseApp/BaseApplicationLogsTruncate.Codeunit.al42 lines, Copyright (c) Microsoft Corporation. MIT
// ------------------------------------------------------------------------------------------------
// Copyright (c) Microsoft Corporation. All rights reserved.
// Licensed under the MIT License. See License.txt in the project root for license information.
// ------------------------------------------------------------------------------------------------
namespace Microsoft;
using Microsoft.Integration.SyncEngine;
using System.DataAdministration;
using System.Diagnostics;
using System.Utilities;
codeunit 3993 "Base Application Logs Truncate"
{
Access = Internal;
Permissions =
tabledata "Change Log Entry" = rd,
tabledata "Error Message" = rd,
tabledata "Error Message Register" = rd,
tabledata "Integration Synch. Job Errors" = rd;
[EventSubscriber(ObjectType::Codeunit, Codeunit::"Apply Retention Policy", 'OnTruncateRecordsIndirectPermissionRequired', '', true, true)]
local procedure TruncateRecordsWithIndirectPermissionsOnTruncateRecordsIndirectPermissionRequired(var RecRef: RecordRef; var Handled: Boolean)
begin
// if someone else took it, exit
if Handled then
exit;
// check if we can handle the table
if not (RecRef.Number in [Database::"Change Log Entry",
Database::"Integration Synch. Job Errors",
Database::"Error Message",
Database::"Error Message Register"])
then
exit;
// delete all remaining records
RecRef.Truncate(true);
// set handled
Handled := true;
end;
}