Skip to main content
deleted 296 characters in body
Source Link
Patlatus
  • 17.8k
  • 13
  • 82
  • 191

For 2GMP instead of using System.requestVersion() it is possible to create some custom logic to store the value of Version in PostInstallContext into some protected custom setting.

Then, when needed, the current package version can be read from that custom setting.

Another option would be toWe maintain the package version as a constant in some apex class and update that line with CI on every package version creation step.

Also, if you have access to Session Id and Tooling API, it is possible to perform Tooling Api query

SELECT Id, SubscriberPackageId, SubscriberPackage.NamespacePrefix,
    SubscriberPackage.Name, SubscriberPackageVersion.Id,
    SubscriberPackageVersion.Name, SubscriberPackageVersion.MajorVersion,
    SubscriberPackageVersion.MinorVersion,
    SubscriberPackageVersion.PatchVersion,
    SubscriberPackageVersion.BuildNumber 
FROM InstalledSubscriberPackage 
ORDER BY SubscriberPackageId

For 2GMP instead of using System.requestVersion() it is possible to create some custom logic to store the value of Version in PostInstallContext into some protected custom setting.

Then, when needed, the current package version can be read from that custom setting.

Another option would be to maintain the package version as a constant in some apex class and update that line with CI on every package version creation step.

Also, if you have access to Session Id and Tooling API, it is possible to perform Tooling Api query

SELECT Id, SubscriberPackageId, SubscriberPackage.NamespacePrefix,
    SubscriberPackage.Name, SubscriberPackageVersion.Id,
    SubscriberPackageVersion.Name, SubscriberPackageVersion.MajorVersion,
    SubscriberPackageVersion.MinorVersion,
    SubscriberPackageVersion.PatchVersion,
    SubscriberPackageVersion.BuildNumber 
FROM InstalledSubscriberPackage 
ORDER BY SubscriberPackageId

We maintain the package version as a constant in some apex class and update that line with CI on every package version creation step.

Also, if you have access to Session Id and Tooling API, it is possible to perform Tooling Api query

SELECT Id, SubscriberPackageId, SubscriberPackage.NamespacePrefix,
    SubscriberPackage.Name, SubscriberPackageVersion.Id,
    SubscriberPackageVersion.Name, SubscriberPackageVersion.MajorVersion,
    SubscriberPackageVersion.MinorVersion,
    SubscriberPackageVersion.PatchVersion,
    SubscriberPackageVersion.BuildNumber 
FROM InstalledSubscriberPackage 
ORDER BY SubscriberPackageId
Source Link
Patlatus
  • 17.8k
  • 13
  • 82
  • 191

For 2GMP instead of using System.requestVersion() it is possible to create some custom logic to store the value of Version in PostInstallContext into some protected custom setting.

Then, when needed, the current package version can be read from that custom setting.

Another option would be to maintain the package version as a constant in some apex class and update that line with CI on every package version creation step.

Also, if you have access to Session Id and Tooling API, it is possible to perform Tooling Api query

SELECT Id, SubscriberPackageId, SubscriberPackage.NamespacePrefix,
    SubscriberPackage.Name, SubscriberPackageVersion.Id,
    SubscriberPackageVersion.Name, SubscriberPackageVersion.MajorVersion,
    SubscriberPackageVersion.MinorVersion,
    SubscriberPackageVersion.PatchVersion,
    SubscriberPackageVersion.BuildNumber 
FROM InstalledSubscriberPackage 
ORDER BY SubscriberPackageId