codeunitAL Developmentofficial - Microsoftderived - from the source, no model text

Codeunit 2504 "Extension Management"

System Application · System.Apps

Across versions

  1. BC23-30present

Neighbourhood 20 connected objects and pages

Codeunit 2503 "Extension Operation Impl" (calls, 16 links)Extension Operation ImplPage 30002 "APIV2 - Aut. Extensions" (calls, 9 links)APIV2 - Aut. ExtensionsCodeunit 2500 "Extension Installation Impl" (calls, 5 links)Page 20002 "APIV1 - Aut. Extensions" (calls, 5 links)APIV1 - Aut. ExtensionsCodeunit 9192 "Company Creation Demo Data" (calls, 4 links)Company Creation Demo DataCodeunit 20422 "Qlty. Demo Data Mgmt." (calls, 2 links)Qlty. Demo Data Mgmt.Page 20007 "APIV1 - Aut. Extension Depl." (calls, 2 links)APIV1 - Aut. Extension Depl.Page 30007 "APIV2 - Aut. Extension Depl." (calls, 2 links)Page 5448 "Automation Extension Depl." (calls, 2 links)Automation Extension Depl.Codeunit 2501 "Extension Marketplace" (calls)Extension MarketplaceCodeunit 5330 "CRM Integration Management" (calls)CRM Integration ManagementPage 20006 "APIV1 - Aut. Extension Upload" (calls)APIV1 - Aut. Extension UploadPage 20766 "APIV2 Expanded Permission Sets" (calls)Page 2515 "AppSource Product List" (calls)AppSource Product ListPage 2516 "AppSource Product Details" (calls)AppSource Product DetailsPage 30006 "APIV2 - Aut. Extension Upload" (calls)APIV2 - Aut. Extension UploadPage 9197 "Profile Designer Diagnostics" (calls)Profile Designer DiagnosticsPage 9198 "Profile Import Result List" (calls)Page 9199 "Profile Import Wizard" (calls)Table 4009 "Migration Table Mapping" (calls)

Open in the neighbourhood explorer

One hop out, from the extracted relations and call graph. Up to 40 shown; the sections below list them all.

System Application · System.Apps · BC23-30 · source at ea08af5e · facts from BC29

Properties

Property Value
Access Public

Procedures

  • InstallExtension(PackageId: Guid; lcid: Integer; IsUIEnabled: Boolean): Boolean: Installs an extension, based on its PackageId and Locale Identifier.
  • UninstallExtension(PackageId: Guid; IsUIEnabled: Boolean): Boolean: Uninstalls an extension, based on its PackageId.
  • UninstallExtensionAndDeleteExtensionData(PackageId: Guid; IsUIEnabled: Boolean): Boolean: Uninstalls an extension, based on its PackageId and permanently deletes the tables that contain data for the extension.
  • UploadExtension(FileStream: InStream; lcid: Integer): Uploads an extension, using a File Stream and based on the Locale Identifier. This method is only applicable in SaaS environment.
  • DeployExtension(AppId: Guid; lcid: Integer; IsUIEnabled: Boolean): Deploys an extension, based on its ID and Locale Identifier. This method is only applicable in SaaS environment.
  • UnpublishExtension(PackageId: Guid): Boolean: Unpublishes an extension, based on its PackageId. An extension can only be unpublished, if it is a per-tenant one and it has been uninstalled first.
  • DownloadExtensionSource(PackageId: Guid): Boolean: Downloads the source of an extension, based on its PackageId.
  • GetExtensionSource(PackageId: Guid; var ExtensionSourceTempBlob: Codeunit "Temp Blob"): Boolean: Retrives the source of an extension, based on its PackageId.
  • IsInstalledByPackageId(PackageId: Guid): Boolean: Checks whether an extension is installed, based on its PackageId.
  • IsInstalledByAppId(AppId: Guid): Boolean: Checks whether an extension is installed, based on its AppId.
  • GetAllExtensionDeploymentStatusEntries(var TempExtensionDeploymentStatus: Record "Extension Deployment Status" temporary): Retrieves a list of all the Deployment Status Entries
  • GetDeployOperationInfo(OperationId: Guid; var Version: Text; var Schedule: Text; var Publisher: Text; var AppName: Text; Description: Text): Retrieves the AppName,Version,Schedule,Publisher by the NAVApp Tenant OperationId.
  • RefreshStatus(OperationId: Guid): Refreshes the status of the Operation.
  • ConfigureExtensionHttpClientRequestsAllowance(PackageId: Text; AreHttpClientRqstsAllowed: Boolean): Boolean: Allows or disallows Http Client requests against the specified extension.
  • GetLatestVersionPackageIdByAppId(AppId: Guid): Guid: Gets the PackageId of the latest Extension Version by the Extension AppId.
  • GetCurrentlyInstalledVersionPackageIdByAppId(AppId: Guid): Guid: Gets the PackageId of the latest version of the extension by the extension’s AppId.
  • GetSpecificVersionPackageIdByAppId(AppId: Guid; Name: Text; VersionMajor: Integer; VersionMinor: Integer; VersionBuild: Integer; VersionRevision: Integer): Guid: Gets the package ID of the version of the extension by the extension’s AppId, Name, Version Major, Version Minor, Version Build, Version Revision.
  • UploadExtensionToVersion(FileInStream: InStream; lcid: Integer; DeployTo: Enum "Extension Deploy To"): Uploads an extension to current version, next minor or next major, using a File Stream and based on the Locale Identifier. This method is only applicable in SaaS environment.
  • UploadExtensionToVersion(FileInStream: InStream; lcid: Integer; DeployTo: Enum "Extension Deploy To"; SyncMode: Enum "Extension Sync Mode"): Uploads an extension to current version, next minor or next major, using a File Stream and based on the Locale Identifier. This method is only applicable in SaaS environment.
  • InstallMarketplaceExtension(AppId: Guid): Installs an extension, based on its extension id.
  • GetAppName(AppId: Guid): Text: Returns the Name of the app given the App Id.
  • GetDeploymentDetailedStatusMessage(OperationId: Guid): Text: Returns the detailed message from a deployment operation.
  • GetDeploymentDetailedStatusMessageAsStream(OperationId: Guid; OutStream: OutStream): Writes the detailed message from a deployment operation to a stream.

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.

Called by

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: "Extension Management"), then bcatlas_get_procedure_body or bcatlas_get_neighbors on the returned id.

Evidence 1 sources