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 obtener más información sobre los tipos de campo admitidos, consulte Tipos de datos de campo de ArcGIS.
En algunas preguntas, puede cambiar el tipo de campo que Survey123 asigna de forma predeterminada. En la tabla siguiente figuran algunos ejemplos:
Tipo de pregunta | Tipo de campo predeterminado | Comentarios |
---|---|---|
select_one | esriFieldTypeString | Para asegurarse de que la opción se guarde como entero, cambie a esriFieldTypeInteger. |
date | esriFieldTypeDate | esriFieldTypeDate siempre incluye un elemento de hora. Cambie a esriFieldTypeDateOnly para que solamente se almacene una fecha. |
dateTime | esriFieldTypeDate | esriFieldTypeDate no ofrece indicación de la zona horaria. Para incluir la zona horaria en el campo, cambie a esriFieldTypeTimestampOffset. Cuando se configura esriFieldTypeTimestampOffset, en el formulario se muestra un selector de zona horaria para la pregunta dateTime. La zona horaria actual del dispositivo se aplicará de forma predeterminada. |
time | esriFieldTypeString | Para guardar la hora como valor de tiempo, cambie a esriFieldTypeTimeOnly. |
Para controlar el tipo de campo, proporcione uno de los valores siguientes en la columna bind::esri:fieldType:
- esriFieldTypeString
- esriFieldTypeDate
- esriFieldTypeDateOnly
- esriFieldTypeTimeOnly
- esriFieldTypeTimestampOffset
- esriFieldTypeInteger
- esriFieldTypeBigInteger
- 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 proporcionar 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 de cadena de caracteres. Los valores aceptados por la columna bind::type son los siguientes:
- int
- decimal
- cadena de caracteres
- fecha
- dateTime
- hora
La columna bind::esri:fieldType también acepta el valor null, lo que hace que la pregunta se omita de la capa de entidades creada. Aunque la pregunta siga presente en la 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 deben 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
- 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 proporcionando 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 los 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 la hoja de cálculo para especificar una etiqueta.
Máscara de entrada
Las máscaras de entrada proporcionan un formato definido para preguntas de texto 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. En la aplicación web y la aplicación de campo Survey123, las respuestas de la encuesta no se pueden enviar hasta que se cumplan todas las máscaras de entrada.
Sugerencia:
Las máscaras de entrada solo se pueden aplicar al tipo de pregunta text. Para los tipos de preguntas integer o decimal, utilice la columna constraint para limitar las respuestas. Para obtener más información, consulte Restricciones.
Para aplicar una máscara de entrada a la pregunta, defina la máscara en la columna body::esri:inputMask. La tabla siguiente muestra los caracteres y los símbolos que se pueden usar en una máscara de entrada:
Carácter | Significado |
---|---|
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. |
n | Se permite un carácter alfanumérico ASCII, pero no es obligatorio. |
X | Se requiere cualquier carácter que no esté en blanco. |
x | Se permite cualquier carácter que no esté en blanco, pero no es obligatorio. |
9 | Se requiere un dígito ASCII. Los dígitos pueden ser de 0 a 9. |
0 | Se permite un dígito ASCII, pero no es obligatorio. 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. |
d | Se permite un dígito ASCII, pero no es obligatorio. Los dígitos pueden ser de 1 a 9. |
# | Se permite un dígito ASCII o un signo más o menos, pero no es obligatorio. |
H | Se requiere un carácter hexadecimal. Los caracteres pueden ser de A a F, de a a f y de 0 a 9. |
h | Se permite un carácter hexadecimal, pero no es obligatorio. |
B | Se requiere un carácter binario. Los caracteres pueden ser de 0 a 1. |
b | Se permite un carácter binario, pero no es obligatorio. |
> | 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 para finalizar la máscara de entrada y por un carácter usado para los espacios en blanco. Los caracteres en blanco se eliminan del texto después de la edición. La tabla siguiente muestra máscaras de ejemplo:
Máscara de ejemplo | Descripció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 separadores, con un signo de punto y coma al final de la máscara de entrada seguido de un guion bajo 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. Un signo de punto y coma finaliza la máscara de entrada, seguido de un guion utilizado 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. |
Flujo de trabajo
Utilice la columna personalizada bind::esri:workflow para indicar que el campo se puede completar desde la tesela Telémetro iniciada desde la galería. Esta columna solo es compatible con preguntas de texto, y la columna bind::esri:workflow acepta los siguientes valores:
- rangefinderMode=height
- rangefinderMode=offset
- rangefinderMode=height,offset
- rangefinderHeight
Cada uno de los valores de rangefinderMode permite una experiencia de usuario similar para el trabajador de campo. Una vez que se selecciona el flujo de trabajo del telémetro deseado, se indica al usuario que seleccione una encuesta y realice de 1 a 3 instantáneas con el instrumento, y luego la encuesta se inicia automáticamente para que el trabajador de campo complete cualquier otra pregunta.
El valor de rangefinderHeight es único, ya que permite al trabajador de campo navegar a través de cada pregunta de la encuesta configurada para recibir un valor de altura, utilizando flechas hacia adelante y hacia atrás. Una vez medidas todas las alturas, el trabajador de campo pulsa Hecho y procede con la encuesta para completar cualquier otra pregunta.