​本文来自PowerBI星球嘉宾AgnesJ的分享,关于PowerBI Service 中显示时间的问题。

也许很多人都遇到过这个困惑,做好的可以正常显示本地时间的报告,发布到web后,时间却不正确了,这篇文章就告诉你原因以及解决的办法。


解决POWERBI服务中显示时间错误的问题

FIX POWER BI SERVICE TIMEZONE ISSUE

作者:AgnesJ

今天想和大家说一说,POWER BI服务中报表显示本地时间"错误"的问题。

POWER BI SERVICE是云服务,也就是说当我们把报表从POWER BI DESKTOP上传到POWER BI SERVICE后,数据集被寄存在Microsoft遍布全球的云服务器中的某一个。

这时,就会存在一个问题 : 我们本地环境的时间和云服务器的当地时间不同。所以,在本地使用一些与时间有关的函数,例如: NOW( ), TODAY( )时,就要考虑到这个情况。

比如,想要在报表中显示一个数据集的刷新时间(RefreshTime)时,有以下两种方法 :

使用DAX函数

Last Refreshed (Local) =

FORMAT(Today();"dd/mm/yyyy")&" " &FORMAT(TIME(HOUR(NOW());MINUTE(NOW());SECOND(NOW()));"hh:mm:ss")

使用Power Query

let

Source=#table(type table[LastRefresh=datetime], {{DateTime.LocalNow()}})

in

Source

此时,在POWERBI DESKTOP中,创建一个measure: [RefreshTime],使用卡片来展示,我们得到此刻的时间: 2019/10/16 17:15:34

但是,将报表上传到POWERBI SERVICE之后,诡异的事情发生了,同一个图表,我的时间却少了2个小时,从17点变成了15点?发生了什么呢?

由于我所在的巴黎,本地时区为CEST UTC+2,所以很明显,POWER BI SERVICE所展示的时间为UTC时间。

那么我们该如何解决这个问题呢?如何保证 POWER BI SERVICE 中显示的时间永远是我们的本地时间?

我在这里总结了两个方法,希望可以帮到大家。

第一种方法:已经知晓本地时区

同样可以使用DAX或Power Query增添时间,达到强制转换时区的效果。

DAX添加时间

RefreshTime=

FORMAT([Today];"dd-mm-yyyy")&""&" "&" "&FORMAT(TIME(HOUR(NOW())+2;MINUTE(NOW());SECOND(NOW()));"hh:mm:ss")

PowerQuery添加时间

let

Source= #table(type table[LastRefresh=datetime],{{DateTimeZone.SwitchZone(DateTimeZone.UtcNow(),2,0)}})

in

Source

因为我的本地时间和utc时间相差两个小时,所以我分别在两段代码中加了两个小时。

第二种方法:使用第三方的时间数据

使用来自Web的时间,比如以下的两个网站,可以查询全世界各个角落的当地时间和时区信息。

我找到了巴黎的当地时间页面:

这时,我们使用POWERBI DESKTOP增添新的Web数据源 :

写入链接,

或者直接使用这段代码 :

Let

Source=Web.Page(Web.Contents(")),

Data1= Source{1}[Data],

#"ChangedType" = Table.TransformColumnTypes(Data1,{{"Column1", typetext}, {"Column2", type text}}),

date= #"Changed Type"{1}[Column2],

time=#"ChangedType"{0}[Column2],

datetime=DateTime.FromText(date&""&time)

in

datetime

在PQ中进行一些删减操作,

得到最终想要的结果,

使用这种方法,只要网站上的时间是准确的,那我就可以一直得到巴黎的当地,数据集的最终刷新时间啦。

再上传到POWERBI SERVICE上时,

虽然,网站传过来的时间有时候会有一秒左右的延迟哦。

但是经过一番折腾,总算是解决了这个TimeZone的问题,开心。


感谢AgnesJ的分享,如果你仔细看文章中的示例,应该注意到了,她是身在巴黎的小姐姐哦,Power BI用的非常溜,果然PowerBI爱好者遍布全世界。

更多推荐:

采悟 @PowerBI星球

clr20r3错误问题定位与解决_解决Power BI服务中显示时间错误的问题相关推荐

  1. power bi导入文件夹_从Power BI Desktop中的PDF文件导入数据

    power bi导入文件夹 Power BI Desktop is a useful reporting and analytical tool to represent data in variou ...

  2. 未发现数据源名称_在Power BI中管理数据源Analysis Services

    添加数据源 有关如何添加数据源的信息,请参阅添加数据源. 如果要连接到多维或表格服务器,请选择 Analysis Services 作为"数据源类型" . 填写数据源的信息(包括服 ...

  3. ubuntu双系统时间同步_解决Ubuntu 16.04.6 + Win10 双系统时间错误且不一致问题

    1.在Win系统下,按Win键 + R,输入regedit 运行 2.打开注册表,按照路径查找 计算机 \HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Con ...

  4. python画图显示中文乱码_解决Python pandas plot输出图形中显示中文乱码问题

    解决方式一: import matplotlib #1. 获取matplotlibrc文件所在路径 matplotlib.matplotlib_fname() #Out[3]: u'd:\\Anaco ...

  5. python图片显示中文_解决Python pandas plot输出图形中显示中文乱码问题

    解决方式一: import matplotlib #1. 获取matplotlibrc文件所在路径 matplotlib.matplotlib_fname() #Out[3]: u'd:\\Anaco ...

  6. 解决windows文件在linux系统中显示乱码的问题

    解决windows文件在linux系统中显示乱码的问题 参考文章: (1)解决windows文件在linux系统中显示乱码的问题 (2)https://www.cnblogs.com/liyanpin ...

  7. 解决alert在ios版微信中显示url的问题(重写alert)

    为了解决alert在ios版微信中显示url的问题 window.alert = function(name){var iframe = document.createElement("IF ...

  8. python上一行的代码打错了怎么办_写Python代码过程中碰到各种错误异常要怎么样去处理?...

    错误异常即便Python程序的语法是正确的,在程序运行的过程中,也可能发生错误.运行期检测到的错误被称为异常. 如果发生了错误,可以事先约定返回一个错误代码,这样,就可以知道是否有错,以及出错的原因. ...

  9. ASP.NET Core中显示自定义错误页面-增强版

    之前的博文 ASP.NET Core中显示自定义错误页面 中的方法是在项目中硬编码实现的,当有多个项目时,就会造成不同项目之间的重复代码,不可取. 在这篇博文中改用middleware实现,并且放在独 ...

最新文章

  1. rman备份后为什么要同时备份归档日志
  2. 我的第三个网页制作:b、i、s、u、sub、sup标签的使用
  3. 废芯片做出来的艺术品!值得一看!
  4. 自制口袋妖怪_承诺和口袋妖怪-我如何学会异步思考
  5. get_class 方法
  6. “打工皇帝”唐骏借收购重返IT
  7. OPNET网络仿真分析-1.4、OPNET文件存储内容
  8. android 人脸识别边框_Android相机预览,指定区域显示预览框,在区域内出现人脸进行人脸识别,并抓拍人脸照片存在本地,CameraX,虹软人脸识别...
  9. 图像复原方法(matlab)
  10. 一清机、二清机、跳码,你知道这些POS机猫腻的原理吗?
  11. 如何修改echarts源码(其他框架也可适用)
  12. 一个前端程序员的日常
  13. 自动驾驶仿真软件SCANeR studio(四)scenario模式下脚本
  14. OpenCV4-C++读图、显示图
  15. 简单三行JS代码实现滑动门
  16. sqlserver2005 sql server database services安装失败解决方法
  17. jdk8移除了PermGen,取而代之的是MetaSpace
  18. seo说_百度指数看世间沉浮_如何快速排名-互点快速排名_企业新网站如何优化快速出排名?...
  19. C++快速入门|系列(第一篇)
  20. 百度测开实习感受分享

热门文章

  1. 【英语学习】【医学】【化学】Chemistry: the Central Science (14e) 的目录
  2. Intel 64/x86_64/IA-32/x86处理器 - SIMD指令集 - SSE扩展(8) - 数据类型转换指令
  3. startActivity流程(上)
  4. dcdc模块降额设计_一款高性能电源模块的设计思路
  5. calling '**' with incomplete return type
  6. sql server 2008 每次都要use_这个方法选的都是强势股,短线操作,快进快出,不恋战,建议收藏...
  7. 代码管理工具TortoiseGit配置(GIT的客户端)
  8. 后端http缓存策略
  9. 【BZOJ】1901: Zju2112 Dynamic Rankings(区间第k小+树状数组套主席树)
  10. IDUdpServer研究心得