The ultimate Fabric, Power BI, SQL, and AI community-led learning event. Save €200 with code FABCOMM.
Get registeredEnhance your career with this limited time 50% discount on Fabric and Power BI exams. Ends August 31st. Request your voucher.
Recientemente tuve un problema extraño en el que estaba convirtiendo un BST datetime a una fecha usando transform to date y en el escritorio se veía bien, pero cuando se publicó en el servicio, el día era un día antes para cualquier datetime agregado como 1/9/21 00:00:00 BST. Esto se debió a que esto es 31/8/21 23:00:00 UTC y el servicio no puede manejar esto. Incluso convertir la hora de la fecha usando "Usar configuración regional" en el escritorio no resolvió esto.
Hablé extensamente sobre el soporte de Power BI e inconcebiblemente este es un error importante que el servicio no puede manejar en ningún otro momento que no sea UTC. Estoy seguro de que hay miles de personas con el mismo problema. Es posible que muchas personas no se den cuenta de que los datos del servicio son incorrectos, ya que su modelo de escritorio se ve correcto. ¡Estoy sorprendido de que Microsoft priorice nuevas imágenes elegantes sobre los datos correctos de havcing!
La solución que me han dado es extremadamente horrible, especialmente si tienes varias columnas de fecha y hora, pero la estoy publicando aquí para obtener información general.
1) Este escenario lo probamos en la llamada y como actualmente no hay forma de cambiar la zona horaria en el servicio. Puede intentar cambiar la hora a la configuración regional en Power BI Desktop como se muestra a continuación y probar. (Esto no hizo ninguna diferencia para mí)
2) Suponiendo que actualmente tenemos la columna 'Hora' y 'UTC' en una tabla, donde [Hora] almacena la hora UTC real, [UTC] almacena el recuento de horas cambiadas entre el Usuario y UTC. Según la diferente zona horaria, los valores UTC cambian dentro del rango de -12 a 12.
Cuando los datos se carguen en Power BI, abra el Editor de consultas, en la pestaña Agregar columna, haga clic en Agregar columna personalizada y, a continuación, en la parte de fórmula, copie y pegue lo siguiente: DateTime.AddZone([Time],0)
Haga clic en Aceptar. Este paso agrega la zona horaria UTC predeterminada (0 aquí) debajo de la hora almacenada en [Hora], a la columna 'ZoneTime' recién creada. Después de eso, necesitamos crear otra columna para cambiar la zona horaria al cliente, también hacer clic en la columna Agregar personalizado, luego copiar y pegar la siguiente fórmula: DateTimeZone.SwitchZone([ZoneTime],[UTC])
Después de eso, hemos agregado con éxito la información de la zona horaria en la hora. Luego necesitamos formatear la columna en formato 'fecha/hora/zona horaria'.
Seleccione la columna ClientTime, navegue hasta la pestaña Transformar, elija el tipo de datos y seleccione Fecha/Hora/Zona horaria:
Después de eso, haga clic en cerrar y aplicar.
Hasta entonces deberíamos haber terminado de convertir la hora en hora local del cliente.
3) Esta fórmula también se puede usar para cambiar la hora (aquí hemos tomado la hora de Australia): Cambiar hora = UTCNOW() + (11/24) & "AUS"
4) dejar
Source = Web.Page(Web.Contents("Reemplace esto con su sitio web de hora local.")),
Data1 = Fuente{1}[Datos],
#"Changed Type" = Table.TransformColumnTypes(Data1,{{"Column1", type text}, {"Column2", type text}}),
fecha = #"Tipo cambiado"{1}[Columna2], hora=#"Tipo cambiado"{0}[Columna2],
datetime=DateTime.FromText(date&" "&time)
en
datetime
5) change = DateTimeZone.SwitchZone(DateTimeZone.LocalNow(),11,0) to = DateTimeZone.SwitchZone(DateTimeZone.LocalNow(),Parameter,0)
Las siguientes limitaciones y consideraciones se aplican actualmente a la segmentación de datos y al filtro del intervalo de fechas relativo [Aplicable si los está utilizando]:
Acabo de votar sobre esto.
Actualmente estoy trabajando con un informe que tiene una estructura de datos compleja, que consta de más de 50 columnas de fecha y hora procedentes de Dataverse.
Convocó una reunión con el soporte técnico de Microsoft en los EE. UU. y se le informó que no hay forma de abordar esto en el servicio sin crear nuevas columnas de fecha y hora y aplicar la zona horaria correcta. Un resultado absolutamente espantoso para lo que debería ser una función muy básica. Si mis datos se almacenan como AEST, por ejemplo, deben mostrarse en Servicio como AEST.
Ir ahora y duplicar 50+ columnas solo para mostrar la zona horaria correcta no es factible, particularmente debido a todos los cálculos personalizados, etc. que se construyen contra las columnas originales / existentes. Esto realmente se está convirtiendo en una decisión sobre si esta plataforma es confiable o no para continuar o volver a Tableau.
Hay @masplin ,
Perdón por molestarse, esto parece ser un problema de diseño existente en power bi ahora, puede verificar esta descripción de idea similar y votar:
https://ideas.powerbi.com/ideas/idea/?ideaid=6636c895-418e-4477-9e68-f216c3162015&page=1
Saludos
Liu Yang
Si esta publicación ayuda,entonces considere Aceptarla como la solución para ayudar a los otros miembros a encontrarla más rápidamente.
Hay @masplin ,
Puede intentar agregar una función + time() después de la medida de tiempo para mostrar la hora en su zona horaria local al servicio power bi.
Por ejemplo:
La zona horaria del servicio Power BI se basa en UTC. Mi zona horaria está separada por 8 horas de UTC.
Usé now(), mi hora local mostrada es: 2021.9.14 4:31:09 PM.
Con la función now()+TIME(8,0,0), en Power BI Desktop, se agregarán 8 horas desde la hora en nuestra zona horaria local.
En Power BI Desktop se convertirá.
La publicación en el servicio Power BI cambiará la hora UTC de 8 horas en mi zona horaria local:
Saludos
Liu Yang
Si esta publicación ayuda,entonces considere Aceptarla como la solución para ayudar a los otros miembros a encontrarla más rápidamente.
Hola. Seguro que hay muchas maneras de cambiar la fecha, pero si tiene 20 columnas de fecha y hora, es completamente ridículo tener que crear 20 columnas calculadas para manejar lo que es bastante fundamental. Estoy atónito de que esto no se haya solucionado. También el horario de vida es un verdadero dolor, ya que solo tiene que aplicar el cambio en ciertas fechas.