Fecha y hora

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.

NombreDescripciónEjemplos

Formato ISO 8601

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 lecturaTiempo EpochTiempo 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:

ObjetivoCálculo tiempo EpochCá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:

  1. 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.
  2. Haga pruebas de los cálculos actualizados en la vista previa de Survey123 Connect para asegurarse de que funcionan según lo esperado.
  3. 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.
  4. Haga que los usuarios de campo actualicen la encuesta en la aplicación de campo Survey123.