Columnas personalizadas de Esri

Las columnas personalizadas de Esri para XLSForm ofrecen funciones adicionales para usuarios de Survey123.

Tipo de campo

Utilice la columna personalizada de bind::esri:fieldType para controlar el tipo y la longitud del campo que se va a crear en ArcGIS para las preguntas de la encuesta.

Para muchas preguntas, puede determinar el tipo automáticamente en el servicio de conversión de XLSForm. Las preguntas del tipo select_one se convierten de manera predeterminada en un campo de cadena de caracteres en ArcGIS. Si necesita que la lista de opciones almacene valores como enteros, debe definir explícitamente el tipo de campo como un entero.

Para controlar el tipo de campo, introduzca uno de los valores siguientes en la columna bind::esri:fieldType:

  • esriFieldTypeString
  • esriFieldTypeDate
  • esriFieldTypeInteger
  • esriFieldTypeSingle
  • esriFieldTypeDouble
  • esriFieldTypeSmallInteger
  • esriFieldTypePointZ
  • esriFieldTypeGUID

Recuerde que bind::esri:fieldType solo controla el tipo de campo creado en la capa de entidades. Para controlar el tipo de campo de una pregunta durante una encuesta, utilice la columna bind::type. Por ejemplo, al introducir el valor int en la columna bind::type para una pregunta calculate, el campo se trata como un entero, en lugar de su tipo de campo predeterminado, que es el de cadena de caracteres. Los valores aceptados por la columna bind::type son los siguientes:

  • int
  • decimal
  • cadena de caracteres
  • fecha
  • dateTime
  • tiempo

La columna bind::esri:fieldType también acepta el valor nulo, lo que hace que la pregunta se omita de la capa de entidades creada. Aunque la pregunta siga presente en su encuesta y se comporte de forma normal, la respuesta no se remite a la capa de entidades ni está presente al revisar las respuestas. Esto resulta ideal para cálculos, restricciones u otras preguntas que necesitan estar presentes para fines de presentación, pero no se necesitan en los resultados.

Los siguientes tipos de preguntas no admiten el tipo de campo nulo:

  • select_one or other
  • select_multiple or other
  • image
  • hidden
Nota:

Las preguntas geopoint, geotrace y geoshape admiten un tipo de campo nulo solo si la encuesta incluye al menos otra pregunta geopoint, geotrace o geoshape que no tenga ningún tipo de campo nulo, o bien si el geopunto, geotrace o geoshape se repiten.

Longitud del campo

Utilice la columna personalizada de bind::esri:fieldLength para controlar la longitud de los campos de cadena de caracteres (de texto) que se van a crear en ArcGIS para las preguntas de la encuesta.

Nota:

No puede controlar las preguntas de enteros y decimales de esta forma. Las bases de datos no especifican una longitud de un campo numérico; el rango de valores válidos se rige por el tipo de campo numérico. Por ejemplo, un campo de tipo entero almacena cualquier valor entero de entre -2.147.483.648 y 2.147.483.647.

Alias de campos

De manera predeterminada, el alias del campo de una encuesta hereda el mismo valor que la etiqueta del campo, al que se hace referencia principalmente cuando se abre la encuesta en ArcGIS. Puede modificarlo introduciendo un valor en la columna bind::esri:fieldAlias, que se convierte en el nuevo alias del campo.

Puesto que las preguntas ocultas y calculadas no aparecen en el formulario, el contenido del campo de etiqueta no se conserva. Significa que cuando visualiza sus registros de encuesta en el sitio web de Survey123 o ArcGIS, ve que el nombre de la pregunta aparece en el encabezado de la columna para estos tipos de preguntas. Para obligar a que el encabezado de la columna de las preguntas hidden o calculate muestren una etiqueta, use la columna bind::esri:fieldAlias de su hoja de cálculo para especificar una etiqueta.

Máscara de entrada

Las máscaras de entrada proporcionan un formato definido para la entrada de datos mediante el uso de caracteres y símbolos. Cuando se aplica una máscara de entrada a una pregunta, todas las respuestas deben seguir el patrón definido por la máscara de entrada.

Para aplicar una máscara de entrada a su pregunta, defina la máscara en la columna personalizada de body::esri:inputMask.

La tabla siguiente muestra los caracteres y los símbolos que se pueden usar en una máscara de entrada:

CarácterSignificado

A

Se requiere un carácter alfabético ASCII. Los caracteres pueden ser de A a Z y de a a z.

a

Se permite un carácter alfabético ASCII, pero no es obligatorio.

N

Se requiere un carácter alfanumérico ASCII. Los caracteres pueden ser de A a Z, de a a z y de 0 a 9.

9

Se requiere un dígito ASCII. Los dígitos pueden ser de 0 a 9.

D

Se requiere un dígito ASCII. Los dígitos pueden ser de 1 a 9.

H

Se requiere un carácter hexadecimal. Los caracteres pueden ser de A a F, de a a f y de 0 a 9.

B

Se requiere un carácter binario. Los caracteres pueden ser de 0 a 1.

>

Todos los caracteres alfabéticos siguientes están en mayúsculas.

<

Todos los caracteres alfabéticos siguientes están en minúsculas.

!

Desactivar la conversión entre mayúsculas y minúsculas.

\

Como escape de los caracteres especiales que se han enumerado con el fin de usarlos como separadores.

La máscara se compone de una cadena de caracteres y separadores, seguidos opcionalmente por un signo de punto y coma y por el carácter usado para los espacios en blanco. Los caracteres en blanco siempre se eliminan del texto después de la edición. La tabla siguiente muestra máscaras de ejemplo:

Máscara de ejemploDescripción

>A<xxxxxxxxxxxx

Texto que empieza con una letra mayúscula seguida de cualquier número de caracteres en minúsculas.

AAA-AAA-AAA;_

Identificador único que usa guiones como separador y signos de subrayado para representar cada carácter que se debe completar.

B9.99;-

Representa un valor de pH. El número solo puede empezar con un 0 o un 1 y solo puede incluir dos posiciones decimales. Se usa un guion para representar cada carácter que se debe completar.

999-99-9999

Número de la Seguridad Social en Estados Unidos.

(999) 999-9999

Número de teléfono de Estados Unidos.

900 kg

Peso en kilogramos entre 0 y 999.

99999

Código postal de 5 dígitos de Estados Unidos.

AAA

Código de aeropuerto de IATA.

Visibilidad de las preguntas

Puede ocultar una pregunta de la vista con una expresión con la columna body::esri:visible. Esta columna oculta la pregunta si la expresión que contiene no se evalúa como true, pero sigue manteniendo el contenido de la pregunta en sí misma. Por ejemplo, la expresión ${edit_location}='yes' hace que la pregunta solo se muestre si la pregunta edit_location se ha definido como el valor yes.

Tiene un comportamiento similar al de la columna relevant y las dos columnas ocultan una pregunta hasta que la expresión de la columna se evalúa como true. La diferencia principal es que body::esri:visible no borra el valor de una pregunta oculta por la expresión y sigue enviando el valor oculto a la capa de entidades. Esto hace que body::esri:visible sea útil si el contenido predeterminado del campo debe ser necesario, por ejemplo, un valor predeterminado o un cálculo.

Nota:

Las preguntas de imagen y audio no admiten que la columna body::esri:visible las oculte.

Simbología de geopunto

Las preguntas geopoint pueden mostrar un símbolo personalizado para el marcador de punto en el mapa utilizando el parámetro symbol de la columna body::esri:style de su encuesta. El parámetro debe proporcionar el nombre de archivo del símbolo personalizado, que debe ser un archivo PNG de la subcarpeta Contenido multimedia de su encuesta. El contenido de la columna debe tener esta apariencia:

symbol=imagefile.png

El valor del parámetro también puede aceptar parámetros opcionales para configurar la visualización del símbolo en el mapa. Separe estos parámetros del nombre de archivo con un signo de interrogación y entre ellos mediante un ampersand (&).

  • El parámetro x determina el punto de anclaje horizontal del símbolo. Acepta un valor de entre 0 (que representa el borde izquierdo de la imagen) y 1 (que representa el borde derecho). Si no se define, el valor predeterminado es 0,5.
  • El parámetro y determina el punto de anclaje vertical del símbolo. Acepta un valor de entre 0 (que representa el borde superior de la imagen) y 1 (que representa el borde inferior). Si no se define, el valor predeterminado es 1.
  • El parámetro scale determina la escala a la que se visualiza la imagen. Los valores inferiores a 1 escalan la imagen hacia abajo, mientras que los valores superiores a 1 escalan la imagen hacia arriba.
Estilo del símbolo para geopunto

El valor proporcionado puede ser una constante o una referencia a una pregunta, por ejemplo, symbol=${symbol_question}. Las expresiones en línea no son compatibles.

Superposiciones de puntos en mapas

Las ubicaciones de puntos de la primera pregunta de geopunto dentro de una repetición se pueden mostrar en cualquier pregunta de mapa de la encuesta al establecer la columna body::esri:style para una pregunta de geopunto, geotrace o geoshape en overlay=repeat_name. Todos los puntos capturados para la primera pregunta de geopunto dentro de esa repetición se mostrarán en el mapa. Si lo desea, puede usar parámetros adicionales para personalizar la simbología de superposición.

Los parámetros opcionales admitidos por el estilo de superposición son los siguientes y pueden separarse con el símbolo Et (&), por ejemplo: overlay=repeat_name&preview=true.

ParámetroDescripciónEjemplo

vista

Muestre los puntos de superposición en la pregunta del mapa. El valor predeterminado es verdadero.

view=false

vista previa

Muestre los puntos de superposición en el mapa de vista previa. El valor predeterminado es false.

preview=true

icono

El nombre del símbolo de punto que se utilizará para las chinchetas de los mapas. Los símbolos disponibles se pueden encontrar en la documentación de ArcGIS Developer, en Símbolos de punto.

icon=esri_pin_two

iconColor

El color del icono utilizado para las chinchetas de los mapas. El valor predeterminado es el negro.

iconColor=blue

iconOutlineColor

El color del contorno utilizado para las chinchetas de los mapas. El valor predeterminado es el blanco.

iconOutlineColor=black

iconSize

El tamaño del icono tal como aparece en el mapa. El valor predeterminado es 30.

iconSize=40

etiqueta

Nombre de la pregunta de la encuesta para usar como etiqueta.

label=question_name

labelColor

Color de la etiqueta para un punto. El valor predeterminado es el negro.

labelColor=blue

labelOutlineColor

Color del contorno de la etiqueta. El valor predeterminado es el blanco.

labelOutlineColor=black

fontSize

Tamaño de fuente de la etiqueta para un punto. El valor predeterminado es 13.

fontSize=16

Colores de grupos y repeticiones

Es posible definir los colores de grupos, páginas y repeticiones independientemente del estilo general de la encuesta en la columna body::esri:style.

Puede utilizar las propiedades backgroundColor y borderColor en grupos y repeticiones, y pueden admitir nombres de color estándar (por ejemplo, backgroundColor="red") y valores RGB (por ejemplo, backgroundColor="#fafad2"). Puede proporcionarlos como constante o referencia a una pregunta.

Nota:

Los grupos con estilo de tipo cuadrícula no admiten borderColor.

Altura de pregunta

La columna body::esri:style acepta un parámetro height para las preguntas de mapa.

Puede configurar la altura de una pregunta proporcionando el parámetro height con un número y, opcionalmente, una unidad. La unidad predeterminada es lines, que hace referencia a la altura de la fuente de texto de entrada actual. Por ejemplo, height=5 provoca que cualquiera de estas preguntas se muestre con una altura de cinco líneas.

Como alternativa, puede establecer la unidad en un porcentaje de la altura de pantalla o por número de píxeles, agregándolos como sufijo al valor sin dejar espacios. Por ejemplo, se aceptan los siguientes valores:

  • height=5
  • height=5lines
  • height=25%
  • height=250pixels

Las preguntas de imagen admiten el parámetro previewHeight, que controla la altura de la vista previa de la imagen una vez seleccionada esta. Este parámetro admite todos los tipos de unidades admitidos por height, pero recuerde que la altura de la imagen de vista previa está limitada en último término por la anchura de la pantalla del dispositivo y por la relación de aspecto de la imagen. Use previewHeight=0 si desea que su vista previa de imagen tenga el máximo tamaño sin ningún espacio vacío innecesario.

Las preguntas de texto con la apariencia multiline admiten el parámetro defaultHeight similar, que controla la altura del cuadro de texto antes de que la respuesta que se introduzca en él lo amplíe. El parámetro defaultHeight no admite mediciones de altura alternativas y solo se puede definir por el número de líneas, por ejemplo, defaultHeight=5.

Nota:

Controlar la altura de las preguntas no se admite en la aplicación web Survey123.

Métodos de captura de imágenes

Puede limitar una pregunta de imagen a un método de captura determinado especificando method=camera o method=browse en la columna body::esri:style del XLSForm. También puede definir el valor de apariencia como new-front o new-rear para que una pregunta de imagen esté limitada a usar solamente la cámara del dispositivo, usando la cámara de cara frontal o posterior, respectivamente como predeterminada. Cuando se utiliza el tipo de apariencia annotate, también puede especificar method=map.

Texto del marcador de posición

Se puede proporcionar texto de marcador de posición para preguntas que acepten una entrada escrita (incluidas preguntas de texto, enteros y decimales y preguntas select_one con apariencia autocomplete) definiendo el parámetro placeholderText en la columna body::esri:style. Al utilizar placeholderText=@[hint] o placeholderText=@[guidance_hint], la sugerencia o sugerencia de orientación se ocultará y el texto de sugerencia se colocará dentro del área de entrada de la pregunta. El texto de marcador de posición aparecerá en el área de entrada si la pregunta está vacía.

Nota:

No se admite texto de marcador de posición en la aplicación web Survey123.