El formulario XLSForm puede contener preguntas de fecha, hora o dateTime. Estas preguntas pueden diseñarse para facilitar la captura de datos mediante el uso de apariencias.
Puede formatear fechas y horas con la función format-date de la columna de cálculo de preguntas de fecha, hora o datTime. Para obtener más información, consulte Formato de fecha.
Los tipos de campo de ArcGIS a los que Survey123 asigna preguntas de fecha y hora de forma predeterminada pueden cambiarse para capturar solamente la fecha, solo la hora o el desfase de marca de hora. Para obtener más información, consulte Columnas personalizadas de Esri.
Precaución:
En la versión de noviembre de Survey123 Connect 3.19 y anteriores no se puede asignar tipos de campo de solo de fecha, solo de hora o desfase de marca de hora. Aunque es posible publicar esos tipos de datos en la actualización de febrero de Survey123 Connect 3.19 a ArcGIS Enterprise 11.2, no son totalmente compatibles y su uso en las capas web de ArcGIS Enterprise 11.2 se considera funcionalidad en versión beta.
Las preguntas inicial y final capturan la fecha y la hora de inicio y finalización de la encuesta de forma automática y pueden utilizarse para calcular el tiempo que se tarda en completar una encuesta.
Formatos de fecha y hora
En Survey123 se pueden utilizar tres formatos de fecha y hora: formato ISO 8601, tiempo Epoch (Unix) y hora decimal.
En la siguiente tabla se resumen estos formatos.
Nombre | Descripción | Ejemplos |
---|---|---|
Cadena que puede incluir el desfase UTC. Este formato es compatible tanto con la aplicación Survey123 de campo y web. Este formato es útil para los valores predeterminados y las restricciones, ya que es legible. | 2015-08-31T09:07:01Z 2015-08-31T09:07:01Z-07:00 | |
Tiempo Epoch (Unix) | Número entero que representan el número de segundos transcurridos desde las 00:00:00 hora universal coordinada (UTC) del 1 de enero de 1970. Este formato no se admite en la aplicación web Survey123. Aunque se convierte en una fecha u hora legible para el usuario cuando se muestra en las aplicaciones de ArcGIS apps, el tiempo Epoch es la forma en que se almacenan los datos en ArcGIS Online y ArcGIS Enterprise, y es lo que devuelve el objeto de entidad. | 1441011600000 |
Tiempo decimal | Número decimal que representa el número de días transcurridos desde las 00:00:00 hora universal coordinada (UTC) del 1 de enero de 1970. Este formato es compatible con la aplicación Survey123 de campo y web. Al agregar o sustraer de un valor de fecha, se debe utilizar el tiempo decimal. | 16678.375 |
Sugerencia:
Para asegurarse de que las encuestas funcionan de manera uniforme en la aplicación de campo y en la aplicación web, debe usar el formato ISO 8601 o el tiempo decimal en los cálculos de fecha y tiempo.
Cálculos de tiempo Epoch y tiempo decimal
En la siguiente tabla se describe cómo el tiempo Epoch y el decimal equivalen a la hora legible.
Tiempo de fácil lectura | Tiempo Epoch | Tiempo decimal |
---|---|---|
1 segundo | 1000 | 0,00001157407407 (1 / 24 / 60 / 60) |
1 minuto | 60.000 (1000 * 60) | 0,00069444444444 (1 / 24 / 60) |
1 hora | 3.600.000 (1000 * 60 * 60) | 0,04166666666667 (1 / 24) |
1 día | 86.400.000 (1000 * 60 * 60 * 24) | 1 |
1 semana | 604.800.000 (1000 * 60 * 60 * 24 * 7) | 7 |
1 mes | 2.630.880.000 (1000 * 60 * 60 * 24 * 30,45) | 30,45 |
1 año | 31.557.600.000 (1000 * 60 * 60 * 24 * 365,25) | 365,25 |
Si tiene encuestas existentes creadas utilizando cálculos de tiempo basados en el formato Epoch, debe convertirlas a tiempo decimal para que su comportamiento sea correcto en la aplicación web Survey123. A continuación se muestran ejemplos de expresiones convertidas de tiempo Epoch a decimal:
Objetivo | Cálculo tiempo Epoch | Cálculo tiempo decimal |
---|---|---|
15 minutos en el futuro | ahora() + 15 * 60 * 1000 | fecha y hora(fecha y hora decimal(ahora()) + 0,0104166675) |
Dos semanas en el futuro | ahora() + 14 * 24 * 60 * 60 * 1000 | fecha(fecha y hora decimal(ahora()) + 14) |
Tiempo pasado en la comida en minutos | int(${LunchEnd} - ${LunchStart}) div (1000 * 60) | int((fecha y hora decimal(${lunchends}) - fecha y hora decimal(${lunchstarts})) * 24 * 60) |
Calcular la edad desde un cumpleaños (en años) | int((hoy() - ${birth_date}) div (1000 * 24 * 60 * 60 * 365.25)) | int((fecha y hora decimal(hoy()) - fecha y hora decimal(${birth_date})) div 365,25) |
Una vez que conozca los cambios que es necesario hacer en su encuesta, el proceso de actualización es el siguiente:
- En Survey123 Connect, actualice los cálculos de tiempo basado en Epoch para utilizar los cálculos de fecha decimal. Se recomienda guardar una copia de seguridad del XLSForm antes de hacer esto.
- Haga pruebas de los cálculos actualizados en la vista previa de Survey123 Connect para asegurarse de que funcionan según lo esperado.
- Vuelva a publicar la encuesta. Las actualizaciones de los cálculos no hacen que se vuelva a publicar la capa de entidades, de forma que ningún dato existente se perderá por hacer esto.
- Haga que los usuarios de campo actualicen la encuesta en la aplicación de campo Survey123.