Un rápido recorrido para crear herramientas con ModelBuilder

El escenario para el modelo que se muestra a continuación es uno en el que usted está ensamblando datos para un área de estudio específica, representada por la variable AreaEstudio del modelo y necesita recortar algunos datasets en el área de estudio. Para cada dataset que recorte, desea añadir un campo llamado ESTADO y calcular el campo al valor inicial de 1. En realidad, lo que quiere es añadir varios campos y calcular sus valores, pero para este sencillo escenario, el campo ESTADO es todo lo que se necesita.

El modelo siguiente realiza el trabajo de recortar, añadir y calcular el campo, pero los datos que necesita para ensamblar se encuentran dispersos por diferentes documentos de mapa y geodatabases. El problema de flujo de trabajo que encuentra es que, cada vez que desea ejecutar el modelo, tiene que abrir el modelo en ModelBuilder y cambiar la entrada a Clip desde Soils a otro dataset.

Modelo de ejemplo

En lugar de abrir ModelBuilder cada vez que desee procesar su dataset, ¿no sería mejor si pudiera ejecutar el modelo usando su cuadro de diálogo de herramienta, suministrando el nombre del dataset de entrada mediante el proceso de arrastrar una capa o un dataset al cuadro de diálogo, justo como haría con una herramienta del sistema? Pero cuando abre el cuadro de diálogo de herramienta, muestra el mensaje Esta herramienta no tiene parámetros, como se muestra a continuación, de forma que no hay manera de introducir los datasets que desea en el proceso.

Cuadro de diálogo Herramienta modelo

Otro problema del modelo es que no es posible usarlo en otro modelo. La siguiente ilustración muestra el añadido de la herramienta a un nuevo modelo con el objeto de conectar la salida del modelo a la herramienta Identidad. No se puede realizar una conexión porque la herramienta Recorte a área de estudio y añadir campo no tiene una salida que se pueda conectar a la herramienta Identidad.

La herramienta de modelo no se puede utilizar en otro modelo porque no tiene parámetros de salida

La solución: crear parámetros de modelo

Las dos situaciones anteriores se pueden resolver creando parámetros de modelo. Para crear un parámetro de modelo, haga clic con el botón derecho en una variable del modelo y seleccione Parámetro de modelo. En la ilustración siguiente, las variables Soils y Soils_Clip (3) se han convertido en parámetros de modelo. Los parámetros de modelo se indican con la letra P junto a la variable.

Modelo con variables de parámetro de modelo

Ahora, cuando abra el cuadro de diálogo de la herramienta, puede cambiar el parámetro Soils por otra cosa, como un dataset o una capa de vegetación. También puede indicar otro nombre de dataset de salida. Cuando haga clic en Aceptar, la herramienta se ejecutará utilizando los datos que le ha proporcionado.

Cuadro de diálogo de la herramienta mostrando los parámetros

Observe que la variable del modelo AreaEstudio no se ha convertido en parámetro. Como el área de estudio nunca cambia, no es necesario convertirlo en parámetro.

InmersiónInmersión:
En este modelo, la variable AreaEstudio contiene un nombre de dataset (D:\EastValley\Data\collect.gdb\studyarea), no de capa. Si la variable AreaEstudio contenía un nombre de capa, la herramienta no se ejecutaría en segundo plano; necesitaría desactivar el procesamiento en segundo plano según se describe en Procesamiento en primer plano y en segundo plano.

Cambiar nombres de parámetros

Hay un problema con el cuadro de diálogo de la herramienta: los nombres de parámetro no son demasiado descriptivos; en lugar de los nombres de parámetro Soils y Soils_Clip (3), debería elegir algo más descriptivo, como Entidades de entrada y Clase de entidad de salida. Para cambiar los nombres de parámetros en el cuadro de diálogo de la herramienta, cambie los nombres de las variables en ModelBuilder, como se indica a continuación.

Modelo con parámetros renombrados

Ahora, cuando abra el cuadro de diálogo de la herramienta, los nombres de los parámetros tendrán sentido:

Cuadro de diálogo de la herramienta con parámetros renombrados

Vaciar parámetros

Finalmente, observe que los parámetros del cuadro de diálogo de la herramienta tienen ya valores, en este caso Soils y E:\10DocModels\PortlandSmall.gdb\Soils_Clip. Si abre la herramienta en ArcMap y no hay una capa llamada Soils, el cuadro de diálogo mostrará un error (una X roja), ya que la capa Soils no existe. Aunque esto no es un problema (siempre puede seleccionar otra capa o acceder a otros dataset), puede evitar la molestia de este mensaje de error borrando las variables en el modelo, como se ilustra a continuación. El modelo ya no se ejecutará en ModelBuilder, sino en su propio cuadro de diálogo.

Modelo con variables vacías

Ahora, con el modelo con variables vacías, el cuadro de diálogo de la herramienta ya no muestra valores.

Cuadro de diálogo sin valores para los parámetros

Uso de la herramienta de modelo en otro modelo

Ahora que el modelo tienen parámetros, puede añadirlo a ModelBuilder y conectar su salida a la entrada de Identidad, como se muestra a continuación.

Usar un modelo dentro de a modelo.

Resumen

Para hacer de su modelo una herramienta útil, cree parámetros de modelo. Los parámetros de modelo aparecen en el cuadro de diálogo. El nombre de la variable del modelo pasa a ser el nombre del parámetro en el cuadro de diálogo de la herramienta. No es necesario de cada de modelo un parámetro de modelo; en el ejemplo anterior, la variable AreaEstudio no es un parámetro de modelo porque nunca necesita cambiar.

Mediante la creación de parámetros de modelo puede convertir su modelo en una útil herramienta: puede utilizar la herramienta con diferentes datos, añadirla a otros modelo y usarla en secuencias de comandos. Con el tiempo, creará su propia biblioteca con útiles herramientas y podrá usarlas en situaciones que no había anticipado cuando creó el modelo por primera vez. Igualmente importante, es poder descomponer grandes y complejos modelos en modelos más pequeños (y en consecuencia más manejables), conectando la salida de una herramienta a la entrada de otra herramienta.

Para conocer más acerca de la creación de herramientas de modelo, consulte Crear herramientas con el tutorial de ModelBuilder.

9/11/2013