DateTime.From

La función DateTime.From devuelve un valor de tipo datetime a partir del valor que se especifique.

Sintaxis

DateTime.From(
    value as any,
    optional culture as nullable text
) as nullable datetime

Parámetros
  • value: valor a convertir a tipo datetime.
  • culture: (opcional) cadena de texto con información sobre la configuración regional a aplicar.
Información adicional

Si el parámetro value toma el valor null, la función devuelve null también. Si value es un valor de tipo datetime, la función devuelve el mismo valor value.

Los tipos convertibles a datetime son los siguientes:

  • text
  • date, en cuyo caso se asigna la hora 0:00:00 a la fecha indicada
  • datetimezone, devolviéndose el equivalente de la fecha indicada en el huso horario local
  • time, en cuyo caso se asigna la fecha del 30 de diciembre de 1899 a la hora indicada
  • number, cuya parte entera se interpreta como el número de días a partir del 30 de diciembre de 1899 y cuya parte decimal se interpreta como fracción de un día

Si se intenta convertir un valor de otro tipo, la función devuelve un error.

Ejemplos

Es posible convertir el texto "2020/2/17" en un valor de tipo datetime con la siguiente expresión:

DateTime.From("2020/2/17")

17/02/2020 0:00:00

Función DateTime.From

Como puede observarse, el resultado es de tipo datetime, habiendo recibido como hora las 0:00:00.

Si el formato del texto no coincide con la configuración regional de nuestro ordenador, puede resultar necesario especificar el parámetro culture. Por ejemplo, el texto "2/17/2020" representa una fecha con formato mes/día/año no reconocido en mi ordenador (que tiene configuración regional de español de España). En este caso basta agregar el parámetro "en-US":

DateTime.From("2/17/2020", "en-US")

17/02/2020 0:00:00

Función DateTime.From

Si el texto que estamos convirtiendo también incluye una hora, ésta se incluye correctamente en el resultado:

DateTime.From("2020/10/18 19:25:30")

18/10/2020 19:25:30

Función DateTime.From

En este ejemplo, el valor a convertir es de tipo date, devolviéndose el mismo valor y asignando como hora las 0:00:00:

DateTime.From(#date(2020, 10, 28))

28/10/2020 0:00:00

Función DateTime.From

Esta función también interpreta correctamente textos representando fechas y horas con formato ISO 8601:

DateTime.From("2020/5/28T10:21:34")

28/05/2020 10:21:34

Función DateTime.From

Si value es un valor tipo time, se asigna la fecha del 30 de diciembre de 1899:

DateTime.From(#time(23,59,7))

30/12/1899 23:59:07

Función DateTime.From

Si se pasa a la función un valor numérico como 0, se interpreta como el número de días a añadir a la fecha del 30 de diciembre de 1899:

DateTime.From(0)

30/12/1899 0:00:00

Función DateTime.From

En este caso se ha pasado el valor 0 y la fecha mencionada es la misma que se devuelve: 30/12/1899. Pero si pasamos el valor 1:

DateTime.From(1)

31/12/1899 0:00:00

Función DateTime.From

Si, siguiendo con el ejemplo anterior, añadimos una parte decimal al argumento value, éste se interpreta como fracción de un día:

DateTime.From(1.5)

31/12/1899 12:00:00

Función DateTime.From
Categoría
Funciones DateTime
Submitted by admin on Thu, 05/28/2020 - 09:55