Codeunit 1410 "Doc. Exch. Service Mgt."
Base Application · Microsoft.EServices.EDocument
Across versions
- BC23present
- BC241 events changed
- BC2517 procedures added, 15 procedures removed
- BC26-27unchanged
- BC281 procedures removed
- BC29unchanged
- BC304 procedures added
Neighbourhood 19 connected objects and pages
Base Application · Microsoft.EServices.EDocument · BC23-30 · source at ea08af5e · facts from BC29
Properties
| Property | Value |
|---|---|
| Permissions | TableData “Sales Invoice Header” = rm, TableData “Sales Cr.Memo Header” = rm |
Events published
OnAfterIncomingDocReceivedFromDocExch(var IncomingDocument: Record "Incoming Document")Δ BC24 (integration)- subscribers: Codeunit 1520 “Workflow Event Handling” RunWorkflowOnAfterIncomingDocReceivedFromDocExch
OnGetClientId(var ClientId: Text)(integration)OnGetClientSecret(var ClientSecret: Text)(integration)OnBeforeSendActivateAppNotification(var IsHandled: Boolean)(integration)OnBeforeSetURLsToDefault(var DocExchServiceSetup: Record "Doc. Exch. Service Setup"; Sandbox: Boolean; var IsHandled: Boolean)(integration)OnBeforeVerifyPrerequisites(ShowFailure: Boolean; var Success: Boolean; var IsHandled: Boolean)(integration)OnBeforeCheckDocumentStatus(DocRecRef: RecordRef; var IsHandled: Boolean)+ BC25 (integration)- subscribers: Codeunit 6468 “Serv. Doc. Exchange Mgt.” OnBeforeCheckDocumentStatus
OnBeforeGetPostSalesURL(DocRecRef: RecordRef; var URL: Text)+ BC25 (integration)- subscribers: Codeunit 6468 “Serv. Doc. Exchange Mgt.” OnBeforeGetPostSalesURL
Event subscriptions
- HandleVANRegisterServiceConnection subscribes to Table “Service Connection” OnRegisterServiceConnection
Procedures
IsSandbox(var DocExchServiceSetup: Record "Doc. Exch. Service Setup"): BooleanSetURLsToDefault(var DocExchServiceSetup: Record "Doc. Exch. Service Setup")SetURLsToDefault(var DocExchServiceSetup: Record "Doc. Exch. Service Setup"; Sandbox: Boolean)GetAppUrl(var DocExchServiceSetup: Record "Doc. Exch. Service Setup"): TextGetDefaultRedirectUrl(): TextSetDefaultRedirectUrl(var DocExchServiceSetup: Record "Doc. Exch. Service Setup")SendRenewTokenNotification()RecallActivateAppNotification()SendActivateAppNotification()ActivateApp(var ActivateAppNotification: Notification)RenewToken(var RenewTokenNotification: Notification)RenewToken(TryRefreshToken: Boolean)GetFeatureTelemetryName(): Text(internal)CheckConnection()SendUBLDocument(DocVariant: Variant; var TempBlob: Codeunit "Temp Blob"): TextSendDocument(DocVariant: Variant; var TempBlob: Codeunit "Temp Blob"): TextHasPredefinedOAuth2Params(): BooleanΔ BC25GetClientId(Sandbox: Boolean): TextGetClientSecretAsSecretText(Sandbox: Boolean): SecretText+ BC25AcquireAccessTokenByAuthorizationCode(EnabledOnly: Boolean)+ BC25 Δ BC25 + BC25 − BC25 − BC25AcquireAccessTokenByRefreshToken()+ BC25 Δ BC25 + BC25 − BC25 − BC25GetDocumentStatus(DocRecordID: RecordID; DocIdentifier: Text[50]; DocOrigIdentifier: Text[50]): TextGetDocumentMetadata(DocRecordID: RecordID; DocIdentifier: Text[50]; var NewStatus: Text): BooleanReceiveDocuments(ContextRecordID: RecordID)CheckCredentials()CheckServiceEnabled()GetServiceSetUp(var DocExchServiceSetup: Record "Doc. Exch. Service Setup")GetPostSalesInvURL(): TextΔ BC25GetPostSalesCrMemoURL(): TextΔ BC25LogActivitySucceeded(RelatedRecordID: RecordID; ActivityDescription: Text; ActivityMessage: Text)LogActivityFailed(RelatedRecordID: RecordID; ActivityDescription: Text; ActivityMessage: Text)LogActivityFailedAndError(RelatedRecordID: RecordID; ActivityDescription: Text; ActivityMessage: Text)EnableTraceLog(NewTraceLogEnabled: Boolean)GetExternalDocURL(DocID: Text): TextVerifyPrerequisites(ShowFailure: Boolean): Boolean
Plus 76 local procedures.
Triggers
OnRun
Calls
From the extracted call graph of BC29 (graphify-al on the snapshot checkout): calls whose target is known from a declared type or an Object::"Name" argument. Interface dispatch and calls through events are not counted, so the list is not complete.
- Codeunit 1297 “Http Web Request Mgt.” (24 calls:
CreateIncomingDocEntry → TryLoadXMLResponse,GetDocDispatchErrors → TryLoadXMLResponse,GetDocumentMetadata → TryLoadXMLResponse, …) - Codeunit 6224 “XML DOM Management” (8 calls:
ExtractAdditionalAttachment → GetAttributeValue,GetDocDispatchErrors → FindNodeTextWithNamespace,GetDocumentMetadata → FindNodeTextWithNamespace, …) - Codeunit 1292 “Trace” (5 calls:
CheckConnection → LogStreamToTempFile,DispatchDocument → LogStreamToTempFile,GetDocDispatchErrors → LogStreamToTempFile, …) - Codeunit 419 “File Management” (3 calls:
ExtractAdditionalAttachment → GetExtension,ExtractAdditionalAttachment → IsAllowedPath,ExtractAdditionalAttachment → ServerTempFileName) - Codeunit 457 “Environment Information” (3 calls:
GetMissingClientIdOrSecretErr → IsSaaSInfrastructure,GetPredefinedClientId → IsSaaSInfrastructure,GetPredefinedClientSecret → IsSaaSInfrastructure) - Codeunit 1411 “Doc. Exch. Links” (2 calls:
DispatchDocument → UpdateDocumentRecord,SendUBLDocument → UpdateDocumentRecord) - Codeunit 2200 “Azure Key Vault” (2 calls:
GetPredefinedClientId → GetAzureKeyVaultSecret,GetPredefinedClientSecret → GetAzureKeyVaultSecret) - Codeunit 4100 “Temp Blob” (2 calls:
TryAcquireAccessToken → CreateOutStream,TryAcquireAccessToken → Length) - Codeunit 8703 “Feature Telemetry” (2 calls:
SendUBLDocument → LogUptake,SendUBLDocument → LogUsage) - Codeunit 501 “OAuth2” (1 call:
GetDefaultRedirectUrl → GetDefaultRedirectURL)
Called by
- Page 1275 “Doc. Exch. Service Setup” (8 calls:
OnInit → HasPredefinedOAuth2Params,OnOpenPage → GetAppUrl,OnOpenPage → GetClientId, …) - Table 1275 “Doc. Exch. Service Setup” (7 calls:
CheckConnection → CheckConnection,EnableConnection → AcquireAccessTokenByAuthorizationCode,EnableConnection → CheckConnection, …) - Codeunit 6468 “Serv. Doc. Exchange Mgt.” (4 calls:
CheckAndUpdateDocExchServiceCrMemoStatus → GetDocumentStatus,CheckAndUpdateDocExchServiceInvoiceStatus → GetDocumentStatus,OnBeforeGetPostSalesURL → GetPostSalesCrMemoURL, …) - Codeunit 1411 “Doc. Exch. Links” (2 calls:
CheckAndUpdateDocExchCrMemoStatus → GetDocumentStatus,CheckAndUpdateDocExchInvoiceStatus → GetDocumentStatus) - Codeunit 1420 “Doc. Exch. Serv.- Doc. Status” (1 call:
DefaultDocExchStatusDrillDown → GetExternalDocURL) - Codeunit 1421 “Doc. Exch. Serv. - Recv. Docs.” (1 call:
OnRun → ReceiveDocuments) - Codeunit 452 “Report Distribution Management” (1 call:
VANDocumentReport → SendDocument) - Table 60 “Document Sending Profile” (1 call:
CheckElectronicSendingEnabled → CheckServiceEnabled)
Recent changes
- 2026-09-22 #11171 [Security][Hardening] Validate integration URLs stored in setup tables (main, BC30, fix)
Ask your agent
Procedure bodies are not stored here (D10). The call sections above are our own, per object, from the BC29 call graph. For a procedure body or the calls of one procedure, ask bc-code-atlas (external, by Stefan Maron, MIT; default corpus w1-28), which the bc-observatory plugin connects: bcatlas_resolve_node(object_type: "codeunit", object_name: "Doc. Exch. Service Mgt."), then bcatlas_get_procedure_body or bcatlas_get_neighbors on the returned id.