Puede proporcionar un comportamiento propio para el cuadro de diálogo de la herramienta de script, como habilitar y deshabilitar parámetros, proporcionar valores predeterminados y actualizar palabras clave de cadena de texto. Al agregar el código Python, puede hacer lo siguiente:
- Habilitar o deshabilitar un parámetro según los valores incluidos en otros parámetros.
- Actualizar un filtro de parámetro. Con un filtro de campo, puede crear una lista de tipos de campos válidos, como Long y Double. Con un filtro de cadena de texto, puede configurar una lista de palabras clave válidas, como se muestra a continuación. Existen seis tipos de filtros: Lista de valores, Rango, Clase de entidad, Archivo, Campo y Espacio de trabajo.
- Proporcione valores predeterminados para los parámetros, como el tamaño de celda para los rásteres.
- Personalice los mensajes de advertencia y error que aparecen en el cuadro de diálogo.
- Coloque los parámetros en diferentes categorías.
- Actualice la descripción de los datasets de salida que desea utilizar en ModelBuilder.
Cómo funciona la validación
La validación se realiza con un bloque de código Python que utiliza el geoprocesamiento para controlar cómo cambia el cuadro de diálogo de la herramienta y la ventana Python según la entrada del usuario. Las herramientas del sistema (proporcionadas por Esri) son capaces de reaccionar a la entrada del usuario y posteriormente modificar el cuadro de diálogo de la herramienta como se describe anteriormente.
Validación
Validación significa verificar que todos los parámetros de la herramienta sean correctos y proporcionar mensajes útiles si es el caso contrario. Hay dos partes en la validación:
- El código que usted agrega.
- La validación interna automática (o validación básica) realizada por el geoprocesamiento de ArcGIS.
La validación interna hace lo siguiente:
- Si se requiere un parámetro, comprueba que esté vacío (nada introducido aún) y, si es así, indica que se requiere un valor en el cuadro de diálogo de la herramienta (con un punto verde en lugar de una X roja).
- Comprueba que el valor introducido sea del tipo correcto (por ejemplo, introducir un ráster en lugar de una clase de entidad o un carácter alfabético en vez de un número).
- Comprueba la pertenencia del filtro. Es decir, si tiene un filtro de Lista de valores que incluye palabras clave como ROJO, NARANJA y AMARILLO y usted escribe AZUL, recibirá un mensaje de error porque AZUL no se encuentra en el filtro de Lista de valores.
- Comprueba la existencia de datasets de entrada.
- Genera una ruta de catálogo predeterminada para datasets de salida.
- Actualiza la descripción de los datos de salida de acuerdo con un conjunto de reglas incluidas en el objeto especial, Esquema.
- Verifica la existencia de un dataset de salida con la opción de sobreescritura de geoprocesamiento de salida. Si el dataset existe y la opción es falsa, se produce un error; de lo contrario, aparece una advertencia.
- Si el parámetro es un tipo de datos de campo, confirma la existencia del campo en la tabla asociada.
- Comprobar que el dataset de salida no sea el mismo que el dataset de entrada (a menos que se derive la salida, como con Agregar campo).
- Para los parámetros que contienen tipos de datos de unidad de área y lineales, configura los valores predeterminados al examinar los valores correspondientes en ArcMap (si se ejecuta desde ArcMap).
- Si la salida es una cobertura, cuadrícula o tabla INFO, comprueba el límite de 13 caracteres del nombre del archivo para estos datasets.
La validación interna no realiza lo siguiente (pero lo puede realizar con su propio código de validación):
- Actualizar los filtros de acuerdo con la interacción con otros parámetros. Por ejemplo, si el usuario introduce una clase de entidad de punto en el primer parámetro, usted quiere que el cuadro de diálogo de la herramienta visualice ROJO, NARANJA y AMARILLO en el tercer parámetro. Si introduce una clase de entidad poligonal, querrá visualizar AZUL, ÍNDIGO y VIOLETA en el tercer parámetro.
- Habilitar o deshabilitar parámetros.
- Calcular valores predeterminados.
- Ejecutar cualquier interacción de parámetro específica de la herramienta.
El código que agrega funcionará con la validación interna como sigue:
- Puede proporcionar un conjunto de reglas que la validación interna utilizará para actualizar la descripción de los datasets de salida. Estas reglas se incluyen en un objeto de esquema.
- Puede actualizar los filtros antes de que se lleve a cabo la validación interna. Con el ejemplo anterior, si se introduce una clase de entidad de puntos, actualice el filtro para incluir ROJO, NARANJA y AMARILLO. La validación interna verifica el valor introducido frente a los valores del filtro.
Además, como se menciona, puede hacer que su código de validación calcule los valores predeterminados, habilite y deshabilite parámetros y personalice mensajes. Estos tipos de acciones no influyen en la validación interna; sólo afectan la apariencia del cuadro de diálogo de la herramienta.