ArcGIS Desktop

  • ArcGIS Pro
  • ArcMap

  • My Profile
  • Ayuda
  • Sign Out
ArcGIS Desktop

ArcGIS Online

La plataforma de representación cartográfica para tu organización

ArcGIS Desktop

Un completo SIG profesional

ArcGIS Enterprise

SIG en tu empresa

ArcGIS Developers

Herramientas para crear aplicaciones basadas en la ubicación

ArcGIS Solutions

Plantillas de aplicaciones y mapas gratuitas para tu sector

ArcGIS Marketplace

Obtén aplicaciones y datos para tu organización.

  • Documentación
  • Soporte
Esri
  • Iniciar sesión
user
  • Mi perfil
  • Cerrar sesión

ArcMap

  • Inicio
  • Introducción
  • Cartografiar
  • Analizar
  • Administrar datos
  • Herramientas
  • Extensiones

Acceder a licencias y extensiones en Python

  • Licencias Desktop, Engine/Server
  • Licencias de extensión
  • Funciones de licencias

Cada vez que se ejecute una herramienta en una secuencia de comandos, se necesita una licencia de ArcGIS. Las herramientas de las extensiones de ArcGIS, como ArcGIS Spatial Analyst extension, requieren una licencia adicional para esa extensión. Si las licencias necesarias no están disponibles, la herramienta falla y arroja mensajes de error. Por ejemplo, si instala con una licencia de ArcGIS Desktop Basic e intenta ejecutar una herramienta que requiere una licencia Desktop Standard o Desktop Advanced, la herramienta fallará.

Al utilizar una licencia de ArcGIS Desktop Basic o de Desktop Standard, un script debe configurar el producto para Desktop Basic o Desktop Standard. De la misma manera, una secuencia de comandos deberá establecer el producto en Engine o EngineGeoDB al utilizar una licencia de Engine o de EngineGeoDB. Si no se establece una licencia de manera explícita, la primera vez que se acceda a una herramienta, función o clase ArcPy se inicializará la licencia según el nivel de licencia más alto disponible.

Cada herramienta realiza verificaciones para asegurarse de que tiene la licencia apropiada. Si no tiene las licencias requeridas, falla. Para evitar la situación de ejecutar una parte y que falle, puede realizar una verificación en la parte superior de la secuencia de comandos y que falle inmediatamente.

Sugerencia:

Solamente es necesario establecer el producto y las extensiones dentro de las secuencias de comandos independientes. Si está ejecutando las herramientas desde la ventana de Python o utilizando herramientas de secuencia de comandos, el producto ya está establecido dentro de la aplicación y las extensiones activas están basadas en el cuadro de diálogo Extensiones.

Licencias Desktop, Engine/Server

Los módulos del producto se importan antes de importar arcpy para definir la licencia de escritorio utilizada por una secuencia de comandos. La función CheckProduct se puede utilizar para comprobar la disponibilidad de licencias de Desktop, mientras que la función ProductInfo reporta cuál es la licencia de producto actual.

Heredado:

Se debe establecer un nivel de producto importando el módulo de producto adecuado (arcinfo, arceditor, arcview, arcserver, arcenginegeodb o arcengine) antes de importar arcpy. La función SetProduct es una función heredada y no puede definir el producto una vez se haya importado arcpy.

Licencias de extensión

Las licencias para las extensiones se pueden recuperar de un License Manager y devolver cuando ya no sean necesarias. CheckExtension se utiliza para consultar si una licencia está disponible para hacer el check-out de un tipo específico de extensión, mientras que CheckOutExtension realmente recupera la licencia. Una vez que la secuencia de comandos recuperó la licencia de extensión, se pueden ejecutar las herramientas de extensión. Una vez que un script termina de usar herramientas de una extensión concreta, se debería usar la función CheckInExtension para devolver la licencia al License Manager de forma que otras aplicaciones puedan usarla. Todas las licencias de extensión a las que se realizó el check-out y las licencias de productos establecidas se devuelven al administrador de licencias cuando se completa una secuencia de comandos.

El siguiente ejemplo ejecuta algunas herramientas de ArcGIS 3D Analyst y define la licencia de producto de Desktop a ArcGIS Desktop Basic, dado que no se requiere una licencia de ArcGIS Desktop Advanced para ejecutar herramientas de una extensión. El script fallará si la licencia de ArcGIS Desktop Basic no se define explícitamente y no hay ninguna licencia de ArcGIS Desktop Advanced disponible, dado que se requiere una licencia de Desktop para ejecutar herramientas de extensiones.

class LicenseError(Exception):
    pass
# Set desktop license used to Basic (keyword is arcview)
#
import arcview
import arcpy
try:
    if arcpy.CheckExtension("3D") == "Available":
        arcpy.CheckOutExtension("3D")
    else:
        # Raise a custom exception
        #
        raise LicenseError
    
    arcpy.env.workspace = "D:/GrosMorne"
    arcpy.HillShade_3d("WesternBrook", "westbrook_hill", 300)
    arcpy.Aspect_3d("WesternBrook", "westbrook_aspect")
except LicenseError:
    print("3D Analyst license is unavailable")
except arcpy.ExecuteError:
    print(arcpy.GetMessages(2))
finally:
    # Check in the ArcGIS 3D Analyst extension
    #
    arcpy.CheckInExtension("3D")

En el ejemplo anterior, se hace un check-in de la ArcGIS 3D Analyst extension bajo la cláusula finally, lo que garantiza que la extensión siempre se devuelva, ocurra o no una excepción.

Un valor devuelto de Failed, Unavailable o NotLicensed indica que no se podría hacer un check-out de la extensión correctamente.

A continuación se presentan los nombres de las extensiones y los nombres de sus códigos de extensión:

ExtensiónCódigo de la extensión

ArcGIS 3D Analyst extension

3D

ArcGIS Data Interoperability extension for Desktop

DataInteroperability

ArcGIS Data Reviewer Desktop

Datareviewer

ArcGIS Aviation Airports

Aeropuertos

ArcGIS Aviation Charting

Aeronáutica

ArcGIS Bathymetry

Batimetría

ArcGIS Maritime

Náutica

ArcGIS Geostatistical Analyst extension

GeoStats

ArcGIS Network Analyst extension

Red

ArcGIS Spatial Analyst extension

Espacial

ArcGIS Schematics extension

Schematics

ArcGIS Tracking Analyst extension

Rastreo

ArcGIS Workflow Manager (Classic) Desktop

JTX

ArcScan

ArcScan

ArcGIS Business Analyst

Empresa

ArcGIS Defense Mapping

Defensa

ArcGIS Production Mapping

Fundación

ArcGIS Roads and Highways

Carreteras

Mapa de calles

Mapa de calles

Nombres de código de producto

Códigos del producto

ArcView (equivalente a una licencia de ArcGIS Desktop Basic)

ArcEditor (equivalente a una licencia de ArcGIS Desktop Standard)

ArcInfo (equivalente a una licencia de ArcGIS Desktop Advanced)

Engine

EngineGeoDB

ArcServer

Funciones de licencias

FunciónExplicación

CheckExtension(extensión)

Verifica si una licencia está disponible para que se realice el check-out para un tipo de extensión específico.

Valor de retornoSignificado

Disponible

La licencia solicitada está disponible para ser establecida.

No disponible

La licencia solicitada no está disponible para ser establecida.

NotLicensed

La licencia solicitada no es válida.

Fallida

Ocurrió un error en el sistema durante la solicitud.

CheckInExtension(extensión)

Devuelve la licencia de modo que otras aplicaciones puedan utilizarla.

Valor de retornoSignificado

NotInitialized

No se estableció una licencia de escritorio.

Fallida

Ocurrió un error en el sistema durante la solicitud.

CheckedIn

La licencia se devolvió correctamente.

CheckOutExtension(extensión)

Recupera la licencia.

Valor de retornoSignificado

NotInitialized

No se estableció una licencia de escritorio.

No disponible

La licencia solicitada no está disponible para ser establecida.

CheckedOut

La licencia se estableció correctamente.

CheckProduct(código)

Verifica si la licencia solicitada está disponible.

Valor de retornoSignificado

AlreadyInitialized

La licencia ya se estableció en la secuencia de comandos.

Disponible

La licencia solicitada está disponible para ser establecida.

No disponible

La licencia solicitada no está disponible para ser establecida.

NotLicensed

La licencia solicitada no es válida.

Fallida

Ocurrió un error en el sistema durante la solicitud.

ProductInfo()

Devuelve la licencia de producto actual.

Valor de retornoSignificado

NotInitialized

No se estableció ninguna licencia.

ArcInfo

Se ha definido una licencia de ArcGIS Desktop Advanced.

ArcEditor

Se ha definido una licencia de ArcGIS Desktop Standard.

ArcView

Se ha definido una licencia de ArcGIS Desktop Basic.

ArcServer

Se ha definido una licencia de ArcGIS Server.

EngineGeoDB

Se estableció una licencia de EngineGeoDB.

Engine

Se estableció una licencia de Engine.

SetProduct(código)

Define la licencia de escritorio.

Valor de retornoSignificado

CheckedOut

La licencia se estableció correctamente.

AlreadyInitialized

La licencia ya se estableció en la secuencia de comandos.

NotLicensed

La licencia solicitada no es válida.

Fallida

Ocurrió un error en el sistema durante la solicitud.

ArcGIS Desktop

  • Inicio
  • Documentación
  • Soporte

ArcGIS

  • ArcGIS Online
  • ArcGIS Desktop
  • ArcGIS Enterprise
  • ArcGIS
  • ArcGIS Developer
  • ArcGIS Solutions
  • ArcGIS Marketplace

Acerca de Esri

  • Quiénes somos
  • Empleo
  • Blog de Esri
  • Conferencia de usuarios
  • Cumbre de desarrolladores
Esri
Díganos su opinión.
Copyright © 2021 Esri. | Privacidad | Legal