Los valores contingentes, a veces denominados valores de atributos contingentes, son una entidad de diseño de datos que permite hacer que valores de un campo sean dependientes de los valores de otro campo. Los dominios de atributo permiten restringir las entradas válidas de un campo a una lista de conjuntos o rango de valores. Los valores contingentes amplían este modelo al hacer que su elección para el valor de un campo restrinja aún más los valores de dominio que se pueden colocar en otro campo. De esta manera, los valores contingentes imponen la integridad de los datos al aplicar restricciones adicionales para reducir el número de entradas de campo válidas. Esto puede ser útil al modelar partes y activos del mundo real en un SIG, particularmente para empresas de servicios. Esto también puede ser útil para crear árboles de decisión o preguntas de encuestas donde al hacer una elección se determina el siguiente conjunto de opciones válidas.
Precaución:
La creación de valores contingentes en una tabla o clase de entidad es incompatible con ArcMap y las versiones anteriores a ArcGIS Pro 2.3 y ArcGIS Enterprise 10.7.x. Consulte Compatibilidad de cliente y geodatabase para obtener más información sobre la funcionalidad disponible al utilizar versiones de cliente y geodatabases distintas.
Un ejemplo relacionado con una aplicación de valores contingentes es comprar un vehículo.
El árbol de decisión puede aparecer así: seleccionar Marca de coche > Modelo de coche > Nivel de acabado > Color
Primero se elige la marca de automóviles, por ejemplo, Honda.
Basándonos en esa marca, están disponibles una serie de modelos.
En Honda, pueden ser Pilot, CRV, Accord y Civic.
En Toyota, está disponible una lista diferente de modelos de automóvil.
En función del modelo elegido, hay disponibles una serie de niveles de acabado.
En el Honda Pilot, pueden ser LX, EX-L, Sport y Touring.
Para el nivel de acabado elegido, hay disponibles varios colores, como Rojo, Azul, Negro y Blanco.
Cada opción del árbol de decisión presenta una lista de opciones dependiendo de lo elegido anteriormente. Elegir una marca de automóviles diferente ofrece un conjunto diferente de modelos. El modelo de automóvil que elija determina los niveles de acabado disponibles y cada nivel de acabado puede tener un conjunto diferente de opciones de color. Las elecciones pueden dar como resultado un Honda > Pilot > EX-L > Blanco, o bien en un Toyota > 4Runner > TRD Sport > Inferno, dependiendo de la opción elegida en cada paso.
Los valores contingentes permiten configurar estos tipos de dependencias de campo en datos en los que la elección del valor de un campo define y restringe la lista de valores válidos de otro campo.
Para un ejemplo SIG del mundo real, considere la clase de entidad StructureJunction del paquete de activos de la red de servicios. Existe una clase de entidad de punto para cruces de estructura que tiene subtipos para activos como postes eléctricos, alcantarillas, plataformas, etc.
Para el subtipo Poste, se han aplicado los dominios a tres de los campos. Los dominios restringen los valores que se pueden colocar en cada campo a una lista de valores válidos. Por ejemplo, un poste puede ser de la clase de poste 1, 2 o 3, el material del poste puede ser fibra de vidrio, madera o acero y la altura del poste puede ser de 30, 35, 40, 45 pies, etc.
Para restringir aún más los valores válidos para este conjunto de campos, se pueden utilizar valores contingentes. Por ejemplo, al usar valores contingentes se puede definir un poste de clase 1 como hecho solo de material de fibra de vidrio y restringido a solo 30, 35, 40 o 45 pies de altura.
Considere las contingencias que desee entre los valores de campo ara el subtipo Poste. Para este grupo de campos (clase, material y altura), el conjunto de contingencias puede ser el siguiente:
Campo | Valores contingentes | Valores contingentes | Valores contingentes |
---|---|---|---|
Clase | 1 | 2 | 3 |
Material | Fibra de vidrio | Madera | Acero |
Altura | 30, 35, 40, 45 | 30, 35, 40, 45 | 50, 55, 60, 65 |
Una vez creados estos valores contingentes, si se coloca una nueva entidad de poste o se modifica una existente, y se la designa como poste eléctrico de Clase 1, el conjunto de valores que se puede colocar en el campo Material se limitará a Fibra de vidrio. Del mismo modo, los valores válidos para la altura de un poste de fibra de vidrio de Clase 1 están restringidos a 30, 35, 40 o 45.
La creación de valores contingentes como este en los datos permite restringir aún más los valores válidos de los conjuntos de campos y administrar de manera más eficiente la validez e integridad de los datos.
Preparar datos para valores contingentes
Los valores contingentes se crean para los grupos de campos de una tabla o clase de entidad. Antes de crear los valores contingentes, se deben configurar estos campos con dominios apropiados que contengan una lista o rango de valores válidos.
En el ejemplo anterior del poste eléctrico, los valores contingentes están en un grupo de tres campos: Clase, Material y Altura. Cada campo tiene el dominio apropiado asignado. Por ejemplo, el campo Material tiene un dominio para materiales del tipo Fibra de vidrio, Madera y Acero. Una vez configurados correctamente los valores del dominio, asignados los dominios a sus respectivos campos y determinado el grupo de campos para crear las contingencias, debe crear las contingencias entre los valores del dominio.
Para crear valores contingentes en una tabla o clase de entidad, debe realizar lo siguiente:
- Crear dominios con una lista o rango de valores válidos.
- Asignar esos dominios a los campos apropiados de una clase de entidad o tabla.
- Abrir la vista de valores contingentes de dicha clase de entidad o tabla.
- Crear un grupo de campos que contenga los campos que vayan a tener valores contingentes.
- Crear los valores contingentes de los campos de dicho grupo de campos.
Nota:
Cuando se crea una clase de relación de muchos a muchos o con atributos, se crea una nueva tabla de clase de relación intermedia. Esta tabla de clase de relación intermedia no es una clase de objeto. Como resultado, con este tipo de tabla no se pueden utilizar dominios, subtipos, valores contingentes, reglas de atributos ni valores predeterminados.
Abrir la vista Valores contingentes
La vista Valores contingentes es donde se crean, eliminan y administran los valores contingentes.
La vista Valores contingentes se puede abrir realizando una de las siguientes acciones:
- Haga clic con el botón derecho en una tabla o clase de entidad en el panel Catálogo, apunte a Diseño de datos y haga clic en Valores contingentes.
- Haga clic con el botón derecho en una tabla o clase de entidad en el panel Contenido, apunte a Diseño de datos y haga clic en Valores contingentes.
- Con una capa seleccionada en el panel Contenido, haga clic en el botón Valores contingentes de la pestaña Datos del conjunto de pestañas Capa de entidades. Con una tabla seleccionada en el panel Contenido, haga clic en el botón Valores contingentes de la pestaña Tabla independiente. Para una capa y una tabla, la vista pasa a ser Valores contingentes.
- En las vistas Campos, Subtipos o Atributos, haga clic en el botón Valores contingentes del grupo Diseño de datos. La vista cambia a la vista Valores contingentes.
Nota:
Si es la primera vez que abre la vista Valores contingentes en una tabla o clase de entidad, no habrá valores contingentes configurados y se le solicitará crear primero un grupo de campos.
Vista Valores contingentes
La vista Valores contingentes tiene una pestaña para crear y administrar valores contingentes y botones para cambiar a las otras pestañas de diseño de datos.
La pestaña Valores contingentes contiene los siguientes grupos:
- Portapapeles proporciona las opciones estándar del portapapeles para Pegar, Copiar, Cortar y Eliminar.
- Diseño de datos proporciona los siguientes botones para abrir la otra vista de diseño de datos:
- Campos
- Subtipos
- Dominios
- Reglas de atributos
- Grupos de campos: proporciona un botón para abrir el cuadro de diálogo Grupos de campos.
- Valores contingentes proporciona los siguientes botones para crear y administrar valores contingentes:
- Nuevo: agrega una fila para crear los valores contingentes de los campos de un grupo de campos activo de la vista.
- Importar: importa grupos de campos y valores contingentes de un archivo de valores separados por comas (.csv).
- Exportar: exporta grupos de campos y valores contingentes a un archivo .csv.
- Retirar valor: le permite marcar la fila resaltada como valor contingente retirado. Los valores retirados siguen siendo visibles en otros lugares de la interfaz de usuario, como un valor de los campos del panel Atributo, pero no son seleccionables.
- Alternar Id. de valores: muestra u oculta el Id. de valor en la cuadrícula de datos.
- Alternar código/descripción: muestra alternativamente el código de los dominios o su descripción en el valor de campo en la cuadrícula de datos.
- Guardar: guarda todos los cambios realizados en la vista Valores contingentes. Los cambios se mantienen en la memoria hasta que se hace clic en Guardar.
Crear un grupo de campos
Antes de crear los valores contingentes de los campos de una clase de entidad o tabla, se debe crear un grupo de campos. Un grupo de campos es una colección de campos con nombre en una tabla o clase de entidad. En el ejemplo anterior del poste eléctrico, un grupo de campos consta de la clase, el material y la altura del poste. Una vez creado un grupo de campos, puede asignar contingencias a los valores de los campos en ese grupo.
Para crear un grupo de campos, haga lo siguiente:
- Duración del vídeo: 0:52
- Este vídeo se ha creado con ArcGIS Pro 3.2.
- Haga clic en el botón Grupos de campos de la pestaña Valores contingentes.
Aparece el cuadro de diálogo Grupos de campos.
- En la sección Nombre, haga clic en el texto Haga clic aquí para agregar un nuevo grupo de campos.
Se crea un nuevo grupo de campos llamado Field_Group. Puede cambiar el nombre de este grupo de campos.
- Haga clic en el menú desplegable Agregar campos.
Se enumeran todos los campos de la tabla o clase de entidad.
- Seleccione los campos que desee incluir en el grupo de campos y haga clic en el botón Agregar.
- Use el cuadro de texto Buscar, en la parte superior de la lista, para encontrar un campo específico.
- Para agregar todos los campos al grupo de campos, haga clic en Seleccionar todo y haga clic en Agregar.
- Opcionalmente, desactive la casilla de verificación Restrictivo.
- Activada: crea un grupo de campos restrictivos y los valores que se introduzcan en un campo del grupo de campos se restringen a los especificados como valores contingentes. Los grupos de campos son restrictivos de manera predeterminada para permitir el control de la experiencia de edición al utilizar valores contingentes.
- Desactivada: el ajuste restrictivo queda desactivado. Si la casilla queda desactivada, el grupo de campos creado no es restrictivo, lo cual permitirá confirmar valores en un grupo de campos, aunque no estén especificados como valores contingentes.
- Haga clic en Aceptar para crear el grupo de campos.
Sugerencia:
Para explorar por el cuadro de diálogo Grupo de campos, se pueden usar las siguientes teclas de acceso directo del teclado:- Ctrl+N: crea un grupo de campos.
- Alt+G: sitúa el puntero en la cuadrícula de datos del Grupo de campos en la parte superior del cuadro de diálogo.
- Alt+A: coloca el puntero en el menú desplegable Agregar campos.
- Alt+F: coloca el puntero en la cuadrícula de datos de Campos en la parte inferior del cuadro de diálogo.
Crear valores contingentes
Una vez creado el grupo de campos, puede crear los valores contingentes para los campos participantes.
Si la tabla o clase de entidad con la que está trabajando en la vista Valores contingentes tiene varios grupos de campos asociados, se puede alternar entre ellos haciendo clic en el menú desplegable Grupo de campos y seleccionando otro grupo de campos.
Si la tabla o clase de entidad con la que está trabajando en la vista Valores contingentes tiene subtipos, se puede alternar entre ellos usando el menú desplegable Subtipos. De esta forma, es posible configurar valores contingentes de manera diferente para los campos de cada subtipo. Asegúrese de que los dominios se apliquen en los campos en el nivel de subtipo de la vista Subtipos antes de comenzar.
Para crear valores contingentes en un grupo de campos, complete los siguientes pasos:
- Haga clic en el botón Nuevo del grupo Valores contingentes, o bien haga clic en la fila vacía donde dice Haga clic para agregar valores contingentes.
- Elija un valor de campo en el menú desplegable para cada campo del grupo de campos.
Los valores <ANY> y <NULL> también están disponibles en el menú desplegable para agregarlos como valores contingentes. <ANY> siempre está disponible, incluso si el campo donde se está agregando un valor contingente no tiene un dominio aplicado, y <NULL> está disponible cuando el campo permite valores nulos.
- <ANY>: agregar el valor contingente <ANY> significa que cualquier valor colocado en el campo se considera válido.
- <NULL>: agregar el valor contingente <NULL> significa que tener un valor nulo colocado en el campo se considera válido.
- Repita los pasos 1 y 2 para todos lod valores contingentes que esté creando.
- Cuando termine, haga clic en Guardar para guardar los cambios.
Nota:
Si ha aplicado un subtipo, los valores contingentes se aplican solo para el subtipo enumerado. Para aplicar valores contingentes a otros subtipos, haga clic en la flecha desplegable Subtipo, elija otro subtipo y repita los pasos anteriores.En el ejemplo del poste anterior, en un grupo de campos llamado Contingencia de postes, los valores contingentes son los siguientes:
Una vez preparados los valores contingentes para los datos, las restricciones creadas se ejecutan en la aplicación cada vez que se coloque un valor en un campo durante la edición, como en el panel Atributo o en la vista Tabla de atributos.
Más información sobre cómo editar campos con valores contingentes.
Retirar un valor contingente
Puede retirar un valor contingente. Al retirar un valor contingente, sigue apareciendo en la lista de valores válidos del campo en lugares como el panel Atributo, pero no está disponible y no se puede seleccionar como valor de campo. Por ejemplo, su organización ya no utiliza el amianto como material de construcción, pero en los activos actuales hay lugares donde se ha utilizado el amianto. Esto significa que aún es un valor válido que puede estar presente en el campo del material de construcción para algunas entidades, pero que ya no se va a usar más. Para evitar que se utilice en más campos, el valor se puede retirar.
Para retirar un valor contingente, seleccione la fila que desea retirar y haga clic en el botón Retirar valor del grupo Valores contingentes.
Para volver a usar un valor contingente retirado, seleccione la fila retirada y haga clic en el botón Retirar valor.
Copiar valores contingentes entre datasets
Una vez establecidos los valores contingentes para un dataset, puede añadirlos a otro dataset. Puede copiar valores contingentes entre datasets de las siguientes formas:
- Copiar y pegar
- Exportar e importar valores contingentes
Copiar y pegar
La función de copiar y pegar en la vista Valores contingentes es compatible con los accesos directos del teclado, el menú contextual y el portapapeles. Los prerrequisitos para las operaciones de copiar y pegar incluyen que el dataset de destino tenga un grupo de campos que incluya tipos de datos de campos coincidentes y un dominio aplicado a los campos.
Para copiar valores contingentes de un dataset a otro, complete los siguientes pasos:
- Abra la vista Valores contingentes del dataset de origen que contiene los valores contingentes de interés y el dataset de destino adonde se copiarán los valores contingentes.
Se abre la vista Valores contingentes para los datasets de origen y destino.
- En el dataset de origen, seleccione los valores contingentes que desee copiar en el dataset de destino.
Los valores contingentes quedan seleccionados.
- Copie los valores contingentes seleccionados mediante la opción Copiar del Portapapeles, el acceso directo del teclado para copiar o la opción Copiar del menú contextual.
- En el dataset de destino, seleccione el grupo de campos que contenga los tipos de datos coincidentes con los dominios coincidentes aplicados a los campos y pegue los valores contingentes mediante la opción Pegar del Portapapeles, el acceso directo del teclado para pegar o la opción Pegar del menú contextual.
- Haga clic en el botón Guardar de la pestaña Valores contingentes.
Los valores contingentes se guardan en el dataset de destino.
Exportar e importar valores contingentes
La exportación y la importación pueden resultar útiles para compartir los valores contingentes y los grupos de campo de cualquier tabla o clase de entidad, para crear una copia de seguridad o para realizar actualizaciones en una base de datos de producción sin bloquearla extensivamente para la edición del esquema. Como parte de una exportación de valores contingentes desde un dataset se crean dos archivos de valores separados por comas (.csv). El archivo .csv del grupo de campos contiene metadatos e información acerca de los campos participantes, y el archivo .csv de valores contingentes contiene metadatos y las combinaciones de los valores contingentes.
Exportar valores contingentes
Puede utilizar el botón Exportar del grupo Valores contingentes de la pestaña Valores contingentes o la herramienta de geoprocesamiento Exportar valores contingentes para exportar grupos de campos y valores contingentes.
Para exportar grupos de campos y valores contingentes para un dataset, complete los siguientes pasos:
- Abra la vista Valores contingentes del dataset que contiene los valores contingentes que vaya a exportar.
Se abre la vista Valores contingentes correspondiente al dataset.
- En la pestaña Valores contingentes, haga clic en el botón Exportar del grupo Valores contingentes.
Se abre el cuadro de diálogo Exportar valores contingentes.
- Para CSV de Grupo de campos y CSV de valores contingentes, indique una ruta y un nombre para el archivo .csv o bien haga clic en el botón Examinar, vaya a la carpeta donde vaya a guardarse el archivo .csv y proporcione un nombre para el archivo .csv.
Se crean dos archivos .csv, uno para el grupo de campos y otro para los valores contingentes.
Importar valores contingentes
Puede utilizar el botón Importar del grupo Valores contingentes de la pestaña Valores contingentes o la herramienta de geoprocesamiento Importar valores contingentes para importar grupos de campos y valores contingentes.
Para importar grupos de campos y valores contingentes para un dataset, complete los siguientes pasos:
- Abra la vista Valores contingentes del dataset que contiene los valores contingentes que vaya a exportar.
Se abre la vista Valores contingentes correspondiente al dataset.
- En la pestaña Valores contingentes, haga clic en el botón Importar del grupo Valores contingentes.
Se abre el cuadro de diálogo Importar valores contingentes.
- Para CSV de Grupo de campos y CSV de valores contingentes, indique una ruta y un nombre para el archivo .csv o bien haga clic en el botón Examinar, vaya a la carpeta donde está guardado cada archivo .csv y haga clic en Aceptar.
Los valores contingentes aparecen en la vista Valores contingentes.
- Si desea sustituir los valores contingentes, active la casilla Sustituir valores.
Esta opción le permite sustituir los valores existentes en lugar de mezclar los campos con los valores contingentes existentes en un dataset.
- Haga clic en el botón Guardar de la pestaña Valores contingentes.
Los valores contingentes se guardan en el dataset de destino.