Las reglas de cálculo se usan para rellenar automáticamente las configuraciones de atributo de una entidad. Es posible crearlas como reglas de cálculo inmediato o reglas de cálculo por lotes, en función del momento en que se necesite evaluar la regla:
- Reglas de cálculo inmediato: la evaluación de la regla se produce de inmediato durante las operaciones de edición. El tipo de evento desencadenador especificado durante la creación de la regla permite que la evaluación de la regla se realice en base a las operaciones de inserción, actualización o eliminación.
- Reglas de cálculo por lotes: la evaluación de la regla se produce en el momento especificado por el usuario.
Los campos de atributos asociados con una regla de cálculo se pueden configurar para permitir ediciones del usuario o para solo lectura. Al crear reglas de cálculo, la casilla de verificación Es editable está disponible bajo el campo de entrada al que se aplica:
- Activado: las ediciones de atributos definidas por el usuario están permitidas en un campo. La entrada del usuario en este campo se puede sobrescribir mediante la evaluación de una regla de atributo basada en la definición de regla.
- Desactivado: las ediciones de atributos definidas por el usuario no están permitidas y el campo atributo respecto al cual está creada la regla se define como un campo mantenido por el sistema. La regla de cálculo se aplicará durante el evento desencadenador definido en la regla.
Precaución:
Una vez que un campo definido por el usuario se configura como mantenido por el sistema, no se puede cambiar.
Reglas de cálculo inmediato
Las reglas de cálculo que se evalúan durante las operaciones de edición basadas en ciertos eventos desencadenadores se conocen como reglas de cálculo inmediato. Este tipo de regla de cálculo se utiliza en flujos de trabajo en los que los cálculos se deben realizar automáticamente conforme se realizan las ediciones.
Las reglas de cálculo inmediato se crean en la Vista Reglas de atributo al hacer clic en el botón desplegable Regla de cálculo y al hacer clic en Cálculo inmediato . Este tipo de regla también se puede crear utilizando la herramienta Agregar regla de atributo, con la opción por lotes configurada como False, o la herramienta Importar reglas de atributo.
Las reglas de cálculo inmediato se evalúan en el momento de la operación de edición, en función de eventos desencadenadores específicos. Los eventos desencadenadores (insertar, actualizar o eliminar) se especifican como una propiedad de la regla.
Explorar:
Es posible que los cambios de datos directos de un registro que se está eliminando no se tengan en cuenta con una regla de cálculo inmediato. Sin embargo, dependiendo del script de Arcade, es posible que se tenga en cuenta otra funcionalidad avanzada de la regla de atributo, como la edición de otra entidad con el desencadenador de eliminación. Consulte Palabras clave de diccionario de reglas de atributos para obtener más información.
Reglas de cálculo por lotes
Las reglas de cálculo que se evalúan en el momento especificado por el usuario se conocen como reglas de cálculo por lotes. Este tipo de regla de cálculo se ha diseñado para situaciones en las que se realizan cálculos en entidades existentes o se necesita control sobre cuándo ocurre la evaluación de la regla. Esto podría ocurrir en los casos en que el cálculo es demasiado costoso para realizarse en el momento de la operación de edición.
Nota:
Las reglas de cálculo por lotes y atributo de validación solo se admiten en tablas o clases de entidad de punto, línea y polígono. En el caso de las geodatabases corporativas, estos tipos de reglas solo se admiten para datasets versionados en rama.Las reglas de cálculo por lotes se crean en la Vista Reglas de atributo al hacer clic en el botón desplegable Regla de cálculo y al hacer clic en Cálculo por lotes . Este tipo de regla también se puede crear utilizando la herramienta Agregar regla de atributo con la opción por lotes configurada como True o la herramienta Importar reglas de atributo.
Para evaluar las reglas de cálculo por lotes para un dataset se utiliza la herramienta Evaluar reglas o el Inspector de errores.
Nota:
El espacio de trabajo de entrada para evaluar reglas de validación y cálculo por lotes depende del tipo de geodatabase en la que se almacene el dataset con reglas de atributos:- Geodatabases móviles o de archivos: la geodatabase es el espacio de trabajo de entrada para evaluar.
- Geodatabases corporativas: un servicio de entidades con la capacidad Validation es el espacio de trabajo de entrada para evaluar. Si se publica el mismo dataset en varios servicios, tenga en cuenta que las capas de error y el atributo de estado de validación se comparten en la versión predeterminada.
A continuación se indican los pasos generales relacionados con la configuración y la evaluación de reglas de cálculo por lotes para datasets de una geodatabase corporativa:
- Registre el dataset como versionado en rama.
- Configure la conexión de la base de datos como rama para el tipo de versionado.
- Agregue la regla de atributos al dataset.
- Comparta el dataset como una capa de entidades web con la capacidad Validación habilitada.
- Realice ediciones en la capa de entidades web.
- Evalúe las reglas y verifique las entidades con el Inspector de errores.
- Revise las entidades de error y haga ediciones para corregir los errores.
- Evalúe las reglas una vez más.
Para obtener más información, consulte Compartir datasets con reglas de atributos, Evaluar reglas de atributos y Administrar errores de reglas de atributos.
Orden de evaluación
Al evaluar las reglas, el orden controla la secuencia en que se evalúan las reglas. En las reglas de cálculo, el orden en que se evalúan las reglas en un dataset es importante, ya que puede hacer que el resultado de la evaluación de la regla sea diferente.
El orden de evaluación es importante cuando se calculan dependencias de otros campos para la entidad que se está almacenando. La siguiente imagen muestra cómo el resultado de dos reglas de cálculo puede variar según el orden de evaluación de las reglas:
El orden de evaluación es una propiedad de una regla de atributo que puede verse utilizando la Vista Reglas de atributo o con la función arcpy.Describe para imprimir las propiedades de la regla de atributos. El orden de evaluación se determina inicialmente por el orden en que se crean las reglas para el dataset y se almacena como un valor entero que comienza con el valor de 1. El orden aumenta en uno conforme se crean nuevas reglas. Las reglas de cálculo inmediato y por lotes mantienen independientemente su propio orden de evaluación.
La vista Reglas de atributo enumera las reglas de cálculo según el orden de evaluación, en las secciones Inmediato y Lote. Para realizar cambios en el orden de evaluación, edite la columna Orden de la Vista Reglas de atributo o use la herramienta Reordenar regla de atributo.
Cuando un dataset contiene varias reglas de atributos, la ejecución también sigue un orden específico según el tipo de regla. Consulte Evaluar reglas de atributos para obtener más información.
Ejemplos
A continuación, se muestran ejemplos de cómo se pueden usar las reglas de atributos de cálculo en una geodatabase:
- Concatene un conjunto de valores de campo de texto en un campo especificado.
- Cuando el atributo LifeCycleStatus de una tubería se actualiza a Abandonado, el atributo PressureZone se actualiza a Ninguno.
- Cuando un poste eléctrico tenga una longitud superior a 65 pies (19,8 metros), el valor de material se calculará como acero.
- Cuando se crea un nuevo poste, se genera un valor de texto basado en la secuencia assetid_seq.
Sugerencia:
Al crear reglas de cálculo, asegúrese de que los resultados de la expresión de script utilicen el mismo tipo de datos que el campo que se está calculando.Consulte el perfil de Arcade para conocer los requisitos y variables globales para crear tipos de reglas de atributos. La Guía de introducción a ArcadeArcade e Índice de función son recursos adicionales que puede utilizar para construir expresiones de scripts para reglas de atributos.
Consulte ejemplos específicos de las expresiones de script de la regla de atributo