CheckOutExtension (arcpy)

Summary

Retrieves the license from the License Manager.

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.

Discussion

TipTip:

The setting of the product and extensions is only necessary within stand-alone scripts. If you are running tools from the Python window or using script tools, the product is already set from within the application, and the active extensions are based on the Extensions dialog box.

Syntax

CheckOutExtension (extension_code)
ParameterExplanationData Type
extension_code

Keyword for the extension product that is being checked.

  • 3D —ArcGIS 3D Analyst extension
  • Datareviewer —ArcGIS Data Reviewer for Desktop
  • DataInteroperability —ArcGIS Data Interoperability extension for Desktop
  • Airports —ArcGIS for Aviation: Airports
  • Aeronautical —ArcGIS for Aviation: Charting
  • Bathymetry —ArcGIS for Maritime: Bathymetry
  • Nautical —ArcGIS for Maritime: Charting
  • GeoStats —ArcGIS Geostatistical Analyst extension
  • Network —ArcGIS Network Analyst extension
  • Spatial —ArcGIS Spatial Analyst extension
  • Schematics —ArcGIS Schematics extension
  • Tracking —ArcGIS Tracking Analyst extension
  • JTX —ArcGIS Workflow Manager for Desktop
  • ArcScan —ArcScan
  • Business —Business Analyst
  • Defense —Esri Defense Solution
  • Foundation —Esri Production Mapping
  • Highways —Esri Roads and Highways
  • StreetMap —StreetMap
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

3/3/2014