La función datetimeswitchzone no cambia la hora a la hora local «real»

Un usuario Pregunto ✅

Aplicable88

Hola,

Estoy usando esta función para obtener la hora local correcta también en el servicio PowerBi, y también para cambiar el horario de verano dos veces al año:

Si [Summertime/Wintertime]= «S»
luego DateTimeZone.SwitchZone (DateTimeZone.FixedLocalNow (), 2,0) más
DateTimeZone.SwitchZone (DateTimeZone.FixedLocalNow (), 1,0)

Así que hice una columna para el horario de verano. Esa columna está conectada con otra columna para verificar qué día es hoy. Así que ahora definitivamente tenemos verano, por lo que «S» está activado.

Ahora, de acuerdo con mi función, cuando «S» es válida y actualizo en el servicio powerbi, normalmente debería obtener mi hora UTC + 2. En cambio, al hacer una doble verificación rápida en una tarjeta visual, todavía muestra solo el tiempo de servicio UTC + 0. Ni siquiera el +1 es válido aquí.

En PowerBi Desktop obtengo la fecha correcta, y la función también debería cambiar a UTC + 2 en el servidor cuando el informe se actualice.

¿Cuál podría ser el problema?

Gracias de antemano.

Mejor.

Hola @ Applicable88

Dado que está utilizando las funciones M en Power Query para obtener la hora local, los datos de hora en el servicio Power BI se actualizan solo cuando el conjunto de datos se actualiza en el servicio, no cuando se actualiza el informe. Primero puede actualizar el conjunto de datos y luego actualizar la página del informe para ver la actualización de la hora.

Si siempre desea mostrar la hora local en la página del informe, independientemente de si el conjunto de datos está actualizado, puede usar el método DAX para obtener la hora local.

Local time DAX = UTCNOW() + 2/24

En su escenario, intente

Local time = IF('Table'[SW]="S",UTCNOW()+2/24,UTCNOW()+1/24)

Saludos,
Equipo de soporte de la comunidad _ Jing
Si esta publicación ayuda, acéptela como la solución para ayudar a otros miembros a encontrarla.

Aplicable88

En respuesta a v-jingzhang

Hola @ v-jingzhang, gracias por el esfuerzo. Esa es una buena solución. También encontré otro problema por el cual la «información» en el tiempo utc + X no se transfirió al modelo de datos. Tuve que cambiar el tipo de datos a Datetimezone (que es el símbolo del globo terráqueo), en cambio, todavía estaba en Datetime solamente. Aunque veo el momento adecuado, ignora el valor UTC + X.

Gracias.

Mejor.

Hola @ Applicable88

Dado que está utilizando las funciones M en Power Query para obtener la hora local, los datos de hora en el servicio Power BI se actualizan solo cuando el conjunto de datos se actualiza en el servicio, no cuando se actualiza el informe. Primero puede actualizar el conjunto de datos y luego actualizar la página del informe para ver la actualización de la hora.

Si siempre desea mostrar la hora local en la página del informe, independientemente de si el conjunto de datos está actualizado, puede usar el método DAX para obtener la hora local.

Local time DAX = UTCNOW() + 2/24

En su escenario, intente

Local time = IF('Table'[SW]="S",UTCNOW()+2/24,UTCNOW()+1/24)

Saludos,
Equipo de soporte de la comunidad _ Jing
Si esta publicación ayuda, acéptela como la solución para ayudar a otros miembros a encontrarla.

Aplicable88

En respuesta a v-jingzhang

Hola @ v-jingzhang, gracias por el esfuerzo. Esa es una buena solución. También encontré otro problema por el cual la «información» en el tiempo utc + X no se transfirió al modelo de datos. Tuve que cambiar el tipo de datos a Datetimezone (que es el símbolo del globo terráqueo), en cambio, todavía estaba en Datetime solamente. Aunque veo el momento adecuado, ignora el valor UTC + X.

Gracias.

Mejor.

Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *