Skip To Content

Calcular campo

La herramienta Calcular campo calcula valores de campo para un campo nuevo o uno existente. Puede utilizar funciones de Arcade para definir la expresión de cálculo.

Ejemplos

La herramienta Calcular campo puede utilizarse en situaciones como las siguientes:

  • Sustituir los valores vacíos por un valor predeterminado.
  • Convertir una columna de cadenas con todos los nombres en mayúsculas a mayúsculas de título utilizando la función Arcade Proper, por ejemplo, JANE SMITH a Jane Smith.
  • Utilizar funciones matemáticas de Arcade para redondear los valores de una columna numérica a un número específico de posiciones.
  • Mantiene el relleno cero de un valor de código postal convirtiendo el campo entero en un nuevo campo de cadena, por ejemplo, 1 a 00001.
  • Dividir una cadena de códigos postales no separados mediante comas, por ejemplo, 0051500234 en 00515,00234.

Parámetros

En la siguiente tabla se describen los parámetros utilizados en la herramienta Calcular campo:

ParámetroDescripción

Dataset de entrada

El dataset que tendrá un campo calculado.

Campo para calcular

Especifica si los valores calculados sustituirán a un campo existente (Campo existente) o crearán un campo (Campo nuevo).

Nuevo nombre de campo

El nombre del nuevo campo. Este parámetro es necesario si el valor del Campo para calcular es Nuevo campo.

Tipo de campo nuevo

El tipo del campo nuevo. Este parámetro es necesario si el valor del Campo para calcular es Nuevo campo.

Nombre de campo existente

El nombre del campo existente que se reemplazará por los valores calculados. Este parámetro se utiliza si el valor del Campo para calcular es Campo existente.

Expresión de Arcade

La expresión Arcade que se utilizará para calcular los nuevos valores.

Referencia espacial

Referencia espacial que se utilizará para procesar valores geométricos o funciones.

Notas de uso

Utilice el parámetro Campo para calcular para especificar si se calcularán valores para un campo nuevo o un campo existente.

Si está calculando valores para un nuevo campo, proporcione el nombre del nuevo campo y especifique un nuevo tipo para el campo utilizando los parámetros Nuevo nombre de campo y Nuevo tipo de campo. A continuación, se indican las opciones de tipo de campo:

  • Solo fecha: calcula un nuevo campo de tipo solo fecha. Los campos de solo fecha admiten valores de fecha, como, por ejemplo, 30/1/2024.
  • Fecha: calcula un nuevo campo de tipo fecha. Los campos de fecha admiten valores de fecha y hora, como por ejemplo, 30/1/2024, 10:30.
  • Doble: calcula un nuevo campo de tipo doble. Los campos dobles admiten números fraccionarios aproximadamente entre -2,2E308 y 1,8E308.
  • Entero: calcula un nuevo campo de tipo entero. Los campos de enteros admiten números enteros entre -2147483648 y 2147483647.
  • Cadena: calcula un nuevo campo de tipo cadena. Los campos de cadena admiten cadenas de caracteres (texto).
  • Punto: calcula un nuevo campo de geometría que contiene puntos.
  • Multipunto: calcula un nuevo campo de geometría que contiene puntos.
  • Polilínea: calcula un nuevo campo de geometría que contiene polilíneas.
  • Polígono: calcula un nuevo campo de geometría que contiene polígonos.

Para calcular los valores de un campo existente, seleccione el campo del dataset de entrada. El campo se devolverá con el mismo nombre y tipo y contendrá los nuevos valores calculados.

Tanto para los campos nuevos como para los existentes, proporcione una expresión de Arcade para calcular los nuevos valores. En el cuadro de diálogo de la expresión de Arcade, acceda a los campos del dataset de entrada desde la lista Variables de perfil o proporcione un valor como $record.field_nameen el que field_name es el nombre del campo. Si el campo tiene caracteres especiales, puede ser necesario utilizar un formato alternativo para hacer referencia a ese campo. Por ejemplo, un campo llamado %Employed no puede ser referenciado como $record.%Employed, que es una sintaxis inválida. En su lugar, debe utilizar sintaxis como $record["%Employed"]. Utilice la lista Funciones para acceder a funciones para crear la expresión.

Utilice el parámetro Referencia espacial para especificar el sistema de coordenadas que se utilizará para procesar cualquier valor geométrico o función. Si utiliza un campo de geometría en la expresión, las geometrías se proyectarán a esta referencia espacial para su procesamiento. Si está calculando un campo de geometría nuevo o existente, los valores de salida se almacenarán en esta referencia espacial. De forma predeterminada, el valor de referencia espacial se establecerá en la referencia espacial de un campo de geometría del dataset de entrada. Si no hay campos de geometría en el dataset de entrada, el parámetro de referencia espacial se establecerá en WGS 1984 (WKID 4326). Este parámetro no se utiliza si no se procesan geometrías.

Para obtener más información sobre Arcade, consulte el tema ArcGIS Arcade. Para empezar a usar Arcade, puede intentar crear expresiones de práctica con Arcade Playground.

La siguiente tabla muestra las expresiones comunes de Arcade utilizadas en la herramienta Calcular campo:

Operaciones comunesDescripciónEjemploInformación adicional

Copiar campo

Copie los valores del campo de origen en el campo de destino.

Copie valores de my_origin_field a un nuevo campo.

return $record.my_origin_field

Establecer valor predeterminado

Establezca un valor predeterminado para un campo.

Sustituya los valores nulos de my_field_name por la cadena my default value.

if ($record.my_field_name == null) {
    return "my default value"
} else {
    return $record.my_field_name
}

Cambiar entre mayúsculas y minúsculas

Cambia entre mayúsculas y minúsculas de la cadena de origen.

Convierta los valores de my_field_name a mayúsculas o minúsculas.

// To convert a string to lowercase:
return Lower($record.my_field_name)

// To convert a string to uppercase:
return Upper($record.my_field_name)

Minúsculas

Mayúsculas

Combinar valores

Concatene valores de origen en una cadena.

Combine field_1 y field_2 para crear un campo. Separe los valores con una coma.

var values_to_combine = [
    $record.field_1, 
    $record.field_2
]
var separator = ", "
return Concatenate(values_to_combine, separator)

Concatenar

Izquierda

Extraiga un número de caracteres desde el inicio de una cadena de caracteres.

Devuelva los tres primeros caracteres de cada valor de my_string_field.

Left($record.my_string_field, 3)

Izquierda

Derecha

Extraiga un número de caracteres del final de una cadena de caracteres.

Devuelva los tres últimos caracteres de cada valor de my_string_field.

Right($record.my_string_field, 3)

Derecha

Subcadena

Extraiga un conjunto de caracteres del medio de una cadena.

Devuelva cinco caracteres de my_string_field a partir del carácter 2.

Mid($record.my_string_field, 2, 5)

Medio

Dividir

Divida una cadena en partes y devuelve una de ellas.

Divida un campo de cadena en una matriz en función del separador `. Devuelva la primera parte.

var parts = Split($record.my_string_field, ',')
return parts[0] // Return the first part

Dividir

Valor condicional

Devuelva diferentes valores en función de una instrucción if/else.

Si el valor de my_field_name es igual a 1 para un registro determinado, devuelve true; de lo contrario, devuelve false.

if($record.my_field_name == 1) {
    return true
} else {
    return false
}

Buscar y reemplazar

Sustituye todas las instancias de un valor por otro diferente.

Sustituya las instancias de search_value en my_field_name por new_value.

var search_value = "my old string"
var new_value = "my new string"
if($record.my_field_name == search_value){
    return new_value
} else {
    return $record.my_field_name
}

Reemplazar

Acceder a valores anidados

Devuelva un valor anidado desde un campo struct.

Devuelve el valor de la clave myKey en un campo struct denominado my_struct_field.

var nested_value = $record.my_struct_field.myKey
return nested_value

Comprobar que existe una clave

Devuelva verdadero o falso según la presencia de la clave especificada.

Devuelve true si la clave myKey existe en un campo struct denominado struct_field, devuelve false si la clave no existe.

return HasValue($record.struct_field, 'myKey')

HasValue

Obtener valores de una clave o establecer un valor predeterminado si el valor de la clave no existe

Devuelve los valores de la clave especificada o un valor predeterminado si la clave no existe.

Devuelve el valor de la clave si la clave myKey existe en un campo struct denominado struct_field; devuelve un valor predeterminado de MyDefault si la clave no existe.

return DefaultValue($record.struct_field, 
                                  ['myKey'],
                                  'MyDefault')

DefaultValue

Salidas

La salida de la herramienta es un dataset con todos los campos del dataset de entrada, así como los nuevos valores de campo calculados.

Limitaciones

A continuación se indican las limitaciones conocidas de la herramienta Calcular campo:

  • Solo se puede calcular un campo por ejecución de herramienta.
  • Un tipo de campo existente no se puede cambiar. Utilice la herramienta Actualizar campos para actualizar un campo existente a un nuevo tipo.

Requisitos de licencia

Se requieren las siguientes licencias y configuraciones:

  • Tipo de usuario Creator o Professional
  • Rol de publicador, moderador o administrador, o rol personalizado equivalente

Para obtener más información sobre los requisitos de Data Pipelines, consulte Requisitos.