Skip To Content

CheckOutExtension

Summary

License:

CheckOutExtension is only needed when using a Concurrent Use license; for all other cases it has no effect. When using a Concurrent Use license, once the extension license has been retrieved by the script, tools using that extension can be used. Once a script is finished with an extension's tools, the CheckInExtension function should be used to return the license so other applications can use it. All checked-out extension licenses and set product licenses are returned when a script completes.

Discussion

Note:

CheckOutExtension is only needed when using a Concurrent Use license; for all other cases it has no effect. When using a Concurrent Use license, once the extension license has been retrieved by the script, tools using that extension can be used. Once a script is finished with an extension's tools, the CheckInExtension function should be used to return the license to the license manager so other applications can use it. All checked-out extension licenses and set product licenses are returned to the license manager when a script completes.

Syntax

CheckOutExtension (extension_code)
ParameterExplanationData Type
extension_code

Keyword for the extension product that is being checked.

  • 3D —ArcGIS 3D Analyst extension
  • Aeronautical —ArcGIS for Aviation: Charting
  • Airports —ArcGIS for Aviation: Airports
  • ArcScan —ArcScan
  • Bathymetry —ArcGIS for Maritime: Bathymetry
  • Business —ArcGIS Business Analyst
  • DataReviewer —ArcGIS Data Reviewer for Desktop
  • DataInteroperability —ArcGIS Data Interoperability extension for Desktop
  • Defense —Esri Defense Solution
  • Foundation —Esri Production Mapping
  • GeoStats —ArcGIS Geostatistical Analyst extension
  • Highways —Esri Roads and Highways
  • JTX —ArcGIS Workflow Manager for Desktop
  • LocationReferencing —ArcGIS Pipeline Referencing
  • Nautical —ArcGIS for Maritime: Charting
  • Network —ArcGIS Network Analyst extension
  • Schematics —ArcGIS Schematics extension
  • SMPAsiaPacific —StreetMap Premium Asia Pacific
  • SMPEurope —StreetMap Premium Europe
  • SMPJapan —StreetMap Premium Japan
  • SMPLatinAmerica —StreetMap Premium Latin America
  • SMPMiddleEastAfrica —StreetMap Premium Middle East Africa
  • SMPNorthAmerica —StreetMap Premium North America
  • Spatial —ArcGIS Spatial Analyst extension
  • Tracking —ArcGIS Tracking Analyst extension
String
Return Value
Data TypeExplanation
String

There are three possible returned values for CheckOutExtension:

  • NotInitialized —No desktop license has been set.
  • Unavailable —The requested license is unavailable to be set.
  • CheckedOut —The license has been set successfully.

Code sample

CheckOutExtension example

Check out 3D extension for use by tools.

import arcpy

class LicenseError(Exception):
    pass

try:
    if arcpy.CheckExtension("3D") == "Available":
        arcpy.CheckOutExtension("3D")
    else:
        # raise a custom exception
        raise LicenseError

    arcpy.env.workspace = "c:/GrosMorne"
    arcpy.HillShade_3d("WesternBrook", "wbrook_hill", 300)
    arcpy.Aspect_3d("WesternBrook", "wbrook_aspect")
    arcpy.CheckInExtension("3D")

except LicenseError:
    print("3D Analyst license is unavailable")
except arcpy.ExecuteError:
    print(arcpy.GetMessages(2))

Related topics