PROBLEMA

El valor total no se calcula si algún campo de entrada de un formulario de encuesta de Survey123 for ArcGIS está vacío

Last Published: July 25, 2022

Descripción

En Survey123 Connect for ArcGIS, las fórmulas se usan para realizar cálculos entre varias entradas con el fin de calcular el valor total. Cuando el campo de valor total se establece como de solo lectura y se especifica la columna de cálculo del valor total, al especificar todos los campos de entrada se calcula automáticamente el valor total. Por ejemplo, al calcular el coste total de un trabajo de construcción (valor total) en función del precio de las baldosas, las tuberías, el cemento y la mano de obra (entrada) o al hacer un cálculo estimado de la fauna en una reserva natural (valor total) en función de la observación de varias especies animales (entrada).Sin embargo, cuando una de las entradas se deja en blanco, el valor total no se calcula.

La siguiente imagen muestra el campo de valor total de solo lectura (coste total) configurado para calcular la suma de varias entradas (coste administrativo, coste financiero, cuota legal, cuota de ingeniería y seguros) en el XLSForm de Survey123 Connect for ArcGIS.

El XLSForm.

La siguiente imagen muestra el formulario web de Survey123 for ArcGIS donde no se calcula el campo de valor total (coste total) cuando una de las entradas (seguro) está en blanco.

El formulario web.

Causa

Un campo en blanco se considera un valor nulo. Survey123 for ArcGIS no identifica valores nulos en un cálculo, de modo que el campo de valor total no se calcula cuando un campo de entrada está en blanco.

Solución o solución alternativa

Siga estos pasos para crear un campo de solo lectura que calcule automáticamente el valor total aunque un campo de entrada se deje en blanco o no responda:

Definir una condición para asumir que el campo en blanco es igual a cero
El campo de valor total se calcula estableciendo campos de entrada con la condición Si . La condición se especifica para asumir que el valor de un campo en blanco es cero.

  1. Abra Survey123 Connect for ArcGIS. Abra la encuesta deseada o cree una nueva encuesta con una plantilla Avanzado.
  2. Cree campos de entrada y el campo de valor total con el tipo decimal o entero . En este ejemplo, el tipo decimal se utiliza para los campos de entrada (coste administrativo, coste financiero, cuota legal,cuota de ingeniería y seguros) y el campo de valor total (Coste total). El valor total es la suma de todas las entradas.
  3. Configure la encuesta de la siguiente manera:
    1. Cree un campo oculto para cada campo de entrada. Para obtener más información sobre la configuración del campo oculto, consulte Survey123 for ArcGIS: Referencia rápida.
    2. Para todos los campos ocultos, especifique la siguiente condición en la columna calculation:
if(${decimal_fieldname}>0, ${decimal_fieldname}, 0)
Nota: Si una condición está definida en el campo decimal o entero en lugar del campo oculto, se devuelve el mensaje de error "Error al convertir XLSForm". El mensaje de error.
  1. Para el campo de valor total, seleccione yes en la columna readonly y especifique la siguiente expresión en la columna calculation:
round(${hidden_fieldname1} + ${hidden_fieldname2} + {hidden_fieldname3} + ..., número de posiciones decimales)

La siguiente imagen muestra el XLSForm de Survey123 Connect for ArcGIS configurado con condiciones y el cálculo del valor total.

El XLSForm.

La siguiente imagen muestra el formulario web de Survey123 for ArcGIS. Aunque una de las entradas (seguro) está en blanco, se calcula el valor total (Coste total).

El formulario web.

Establecer el valor predeterminado en cero
Si el valor predeterminado se define como cero, cualquier campo de entrada que no se responda se calcula como cero, en lugar de dejarse en blanco y almacenarse como un valor nulo.

Nota: Las desventajas de este método son: • Si no se especifica un valor en el campo de entrada, el número cero siempre aparece en la pantalla. • Se debe borrar manualmente el valor cero del campo de entrada para poder especificar un valor. • Si un usuario especifica un valor en el campo de entrada y posteriormente decide dejar el campo sin ninguna respuesta específica, el usuario debe insertar el número cero manualmente después de eliminar el valor de entrada especificado. Si no lo hace, el campo se considera nulo y el campo de valor total no puede calcular.
  1. Abra Survey123 Connect for ArcGIS. Abra la encuesta deseada o cree una nueva encuesta con una plantilla Avanzado.
  2. Para todos los campos de entrada, establezca la columna default en cero.
  3. Para el campo de valor total, seleccione yes en la columna readonly y especifique la siguiente expresión en la columna calculation:
round(${decimal_fieldname1} + ${decimal_fieldname2} + {decimal_fieldname3} + ..., número de posiciones decimales)

La siguiente imagen muestra el XLSForm de Survey123 Connect for ArcGIS configurado con el valor predeterminado y el cálculo del valor total.

Establezca los valores predeterminados en cero.

La siguiente imagen muestra el formulario web de Survey123 for ArcGIS. Dado que el valor predeterminado se establece como cero, el campo de valor total se calcula aunque uno de los campos de entrada no responda.

El formulario web.

Id. de artículo: 000022441

Recibir notificaciones y encontrar soluciones a problemas nuevos o comunes

Obtenga respuestas resumidas y soluciones de vídeo de nuestro nuevo chatbot de IA.

Descargar la aplicación de soporte de Esri

Información relacionada

Descubrir más sobre este tema

Obtener ayuda de expertos en ArcGIS

Contactar con el soporte técnico

Descargar la aplicación de soporte de Esri

Ir a opciones de descarga