---
title: "Codeunit 8614 Config. XML Exchange"
author: "Jonas Paprotka"
url: https://jonas-paprotka.de/ref/codeunit/8614-config-xml-exchange/
type: codeunit
id: 8614
name: "Config. XML Exchange"
app: "Base Application"
namespace: System.IO
versions: "17-28"
build: 28.5.54151.54365
source: "https://jonas-paprotka.de/ref/codeunit/8614-config-xml-exchange/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 8614 Config. XML Exchange

Jonas Paprotka, https://jonas-paprotka.de/ref/codeunit/8614-config-xml-exchange/

| | |
| --- | --- |
| App | Base Application |
| Namespace | System.IO |
| Versions | 17-28 |
| Source file | System/RapidStart/ConfigXMLExchange.Codeunit.al |

## Procedures

| Name | Parameters | Returns | Access | Versions | Obsolete | Reason |
| --- | --- | --- | --- | --- | --- | --- |
| ApplyPackageFilter | (Record Config. Package Table, var RecordRef) | - | public | 17-28 | - | - |
| ExportPackage | (Record Config. Package) | - | public | 17-28 | - | - |
| ExportPackageXML | (var Record Config. Package Table, Text) | Boolean | public | 17-28 | - | - |
| ExportPackageXMLDocument | (var DotNet XmlDocument, var Record Config. Package Table, Record Config. Package, Boolean) | - | public | 17-28 | - | - |
| ImportPackageXMLFromClient | () | Boolean | public | 17-28 | - | - |
| ImportPackageXML | (Text) | Boolean | public | 17-28 | - | - |
| ImportPackageXMLFromStream | (InStream) | Boolean | public | 17-28 | - | - |
| ImportPackageXMLWithCodeFromStream | (InStream, Code[20]) | Boolean | public | 17-28 | - | - |
| ImportPackageXMLDocument | (DotNet XmlDocument, Code[20]) | Boolean | public | 17-28 | - | - |
| GetTableStatisticsForTelemetry | (DotNet XmlNode, var Text, var Integer, var Integer, var Integer) | Boolean | internal | 17-28 | - | - |
| ImportTableFromXMLNode | (var DotNet XmlNode, var Code[20]) | - | public | 17-28 | - | - |
| GetAttribute | (Text[1024], var DotNet XmlNode) | Text[1000] | public | 17-28 | - | - |
| GetElementName | (Text[250]) | Text[250] | public | 17-28 | - | - |
| GetFieldElementName | (Text[250]) | Text[250] | public | 17-28 | - | - |
| GetTableElementName | (Text[250]) | Text[250] | public | 17-28 | - | - |
| GetPackageCode | (DotNet XmlDocument) | Code[20] | public | 17-28 | - | - |
| GetMediaFolder | (var Text, Text) | Boolean | public | 17-28 | - | - |
| GetMediaFolderName | () | Text | public | 17-28 | - | - |
| GetXSDType | (Integer, Integer) | Text[30] | public | 17-28 | - | - |
| SetAdvanced | (Boolean) | - | public | 17-28 | - | - |
| SetCalledFromCode | (Boolean) | - | public | 17-28 | - | - |
| SetExcelMode | (Boolean) | - | public | 17-28 | - | - |
| SetHideDialog | (Boolean) | - | public | 17-28 | - | - |
| SetExportFromWksht | (Boolean) | - | public | 17-28 | - | - |
| SetPrefixMode | (Boolean) | - | public | 17-28 | - | - |
| TableObjectExists | (Integer) | Boolean | public | 17-28 | - | - |
| DecompressPackage | (Text) | Text | public | 17-28 | - | - |
| DecompressPackageToBlob | (var Codeunit Temp Blob, var Codeunit Temp Blob) | - | public | 17-28 | - | - |
| GetFileDialogFilter | () | Text | public | 17-28 | - | - |
| ExportPackageXMLToStream | (Record Config. Package, OutStream) | - | public | 18-28 | - | - |
| GetImportedPackageCode | () | Code[20] | public | 20-28 | - | - |

## Events

| Kind | Name | Parameters | Versions | Obsolete | Reason |
| --- | --- | --- | --- | --- | --- |
| Integration event | OnAfterAddFieldAttributes | (var Record Config. Package Field, var DotNet XmlNode) | 17-28 | - | - |
| Integration event | OnBeforeEvaluateMinCountForAsyncImport | (var Record Config. Package, var Text, var Boolean) | 17-28 | - | - |
| Integration event | OnBeforeGetElementName | (var Text[250]) | 17-28 | - | - |
| Integration event | OnExportPackageXMLDocumentOnAfterSetAttributes | (var Record Config. Package, var Codeunit XML DOM Management) | 17-22 | - | - |
| Integration event | OnImportPackageXMLDocumentOnDefaultDimOnAfterConfigPackageRecordSetFilters | (var Record Config. Package Record, Record Config. Package Data, Code[20]) | 17-28 | - | - |
| Integration event | OnAfterAddTableAttributes | (Record Config. Package Table, var DotNet XmlDocument, var DotNet XmlNode) | 18-28 | - | - |
| Integration event | OnCreateRecordNodesOnAfterConfigPackageFieldSetFilters | (Record Config. Package Table, var Record Config. Package Field) | 18-28 | - | - |
| Integration event | OnCreateRecordNodesOnAfterRecordProcessed | (Record Config. Package Table, var Record Config. Package Field, var RecordRef, var DotNet XmlDocument, var DotNet XmlNode, var DotNet XmlNode, Boolean) | 18-28 | - | - |
| Integration event | OnCreateRecordNodesOnAfterNotFoundRecordProcessed | (Record Config. Package Table, var Record Config. Package Field, var RecordRef, var DotNet XmlDocument, var DotNet XmlNode, var DotNet XmlNode, Boolean) | 18-28 | - | - |
| Integration event | OnFillPackageMetadataFromXMLOnAfterGetPackageTableValueFromXML | (Record Config. Package Table, var DotNet XmlNode) | 18-28 | - | - |
| Integration event | OnFillPackageDataFromXMLOnAfterConfigPackageDataInit | (var Record Config. Package Data, var Record Config. Package Field) | 18-28 | - | - |
| Integration event | OnFillPackageDataFromXMLOnAfterConfigPackageDataInsert | (var Record Config. Package Data, var Record Config. Package Field, Boolean) | 18-28 | - | - |
| Integration event | OnAfterImportPackageXMLDocument | (Code[20], Boolean, var Boolean) | 19-28 | - | - |
| Integration event | OnBeforeCreateRecordNodes | (var Record Config. Package Table, var Record Config. Package Field, var Codeunit Type Helper, var Codeunit XML DOM Management, var Text, var Boolean, var Boolean, var Boolean, var Boolean) | 19-28 | - | - |
| Integration event | OnCreateRecordNodesOnNotFoundOnAfterConfigPackageFieldSetFilters | (Record Config. Package Table, var Record Config. Package Field) | 19-28 | - | - |
| Integration event | OnFillPackageDataFromXMLOnAfterCalcShouldShowTableContainsRecordsQst | (var Record Config. Package Table, Code[20], Integer, var Boolean, var Boolean) | 19-28 | - | - |
| Integration event | OnFillPackageDataFromXMLOnAfterCalcShouldAssignValue | (var Record Config. Package Field, var Record Config. Package Data, var Record Config. Package Record, var Record Config. Package Field, var Boolean) | 19-28 | - | - |
| Integration event | OnAfterExportPackageXMLDocument | (var Record Config. Package, Boolean) | 20-28 | - | - |
| Integration event | OnBeforeApplyPackageFilter | (Record Config. Package Table, var RecordRef) | 20-28 | - | - |
| Integration event | OnBeforeGetXSDType | (Integer, Integer, var Text[30], var Boolean) | 20-28 | - | - |
| Integration event | OnCreateRecordNodesOnBeforeRecRefLoopIteration | (Record Config. Package Table, Record Config. Package, var RecordRef, var Codeunit Config. Progress Bar, var Boolean) | 20-28 | - | - |
| Integration event | OnCreateRecordNodesOnAfterApplyPackageFilter | (Record Config. Package Table, Record Config. Package, var RecordRef) | 20-28 | - | - |
| Integration event | OnExportPackageXMLDocumentOnBeforeConfigProgressBarInit | (var Record Config. Package Table, var Record Config. Package, var Codeunit XML DOM Management, Boolean, Boolean) | 20-28 | - | - |
| Integration event | OnExportPackageXMLOnAfterAssignToFile | (Record Config. Package, var Text[50]) | 20-28 | - | - |
| Integration event | OnOnExportPackageXMLOnAfterAssignToFileOnAfterSetCompressedFileName | (var Text, Text) | 20-28 | - | - |
| Integration event | OnCreateRecordNodesOnBeforeApplyPackageFilter | (var Record Config. Package Table, var RecordRef, var Boolean) | 22-28 | - | - |
| Integration event | OnExportPackageXMLDocumentOnAfterSetAttributes | (var Record Config. Package, var Codeunit XML DOM Management, var DotNet XmlElement) | 23-28 | - | - |
| Integration event | OnImportPackageXMLDocumentOnBeforeModify | (var Record Config. Package, var DotNet XmlElement) | 23-28 | - | - |
| Integration event | OnFillPackageMetadataFromXMLOnBeforeConfigPackageFieldModify | (var Record Config. Package Field, var Text, var DotNet XmlNode) | 23-28 | - | - |
| Integration event | OnFormatFieldValueOnBeforeExitInnerText | (var FieldRef, Record Config. Package, Text) | 23-25 | - | - |
| Integration event | OnFormatFieldValueOnBeforeExitInnerText | (var FieldRef, Record Config. Package, var Text) | 26-28 | - | - |
| Integration event | OnAfterGetDefaultDimensionNoLinkFieldNumber | (Integer, var Integer) | 27-28 | - | - |
| Integration event | OnVerifyCanImportConfigurationPackage | (var Boolean) | 27-28 | - | - |

## Source

Symbols: Microsoft.BaseApplication.symbols.437dbf0e-84ff-417a-965d-ed2bb9650972, https://dynamicssmb2.pkgs.visualstudio.com/DynamicsBCPublicFeeds/_packaging/MSSymbols/nuget/v3/index.json, highest build per major on 2026-09-20.
AL source 29: https://github.com/microsoft/BCApps, MIT, releases/29.x at a66254c3b8b5bb1cea290dc8f9d097aec4381153.

Jonas Paprotka, 2026-09-20.
