Reporting services 使用时区的SSR

Reporting services 使用时区的SSR,reporting-services,datepicker,timezone,ssrs-2008,timezone-offset,Reporting Services,Datepicker,Timezone,Ssrs 2008,Timezone Offset,检索字段CreatedDate时,我在DB中遇到问题,结果相差5小时。在开始时,我使用了DATEADD函数 DATEADD(HOUR, 5, IncidentDimvw.CreatedDate) AS CreatedDate Id-DataBaseCreatedDate-EditedCreatedDate IR21-02/02/2013 09:04:56下午-03/02/2013 02:04:56上午 IR67-03/02/2013 06:02:02 AM-03/02/2013 11:02:0

检索字段CreatedDate时,我在DB中遇到问题,结果相差5小时。在开始时,我使用了DATEADD函数

DATEADD(HOUR, 5, IncidentDimvw.CreatedDate) AS CreatedDate
Id-DataBaseCreatedDate-EditedCreatedDate

IR21-02/02/2013 09:04:56下午-03/02/2013 02:04:56上午

IR67-03/02/2013 06:02:02 AM-03/02/2013 11:02:02 AM

IR78-03/02/2013 09:22:44下午-04/02/2013 02:22:44上午

选择@StartDate=03/02/2013和@EndDate=03/02/2013后运行查询时

它给了我两个结果IR21和IR67

EditedCreatedDate实际上是原始事件创建日期和时间

但是,当我在这里使用日期范围过滤器时,我会遇到一些计时问题,比如;如果我选择@startdate=06/20/2013(06/20/2013 00:00:00 AM,实际上这次它会拾取)

应该有一些时区问题,请帮助我在这个问题上,因为我不知道如何解决它。如果我应用(@timezone)过滤器可能会有帮助,但不幸的是,我不知道在哪里应用这个过滤器


嗨,关于我的问题,我有一些想法。 请执行以下步骤以添加部件。 1.在“设计”视图中,在报表边框外的设计图面上单击鼠标右键,然后单击“报表属性”。 2.单击“参考”。 3.在“添加或删除程序集”中,单击“添加”,然后单击省略号按钮浏览到该程序集

在您的场景中,如果要添加时区程序集,可以添加System.Core。有关详细信息,请参阅:

希望这有帮助

问候,


Muhammad Ahsan Misbah

您的客户发送的日期必须转换为UTC或您的服务器时间。在此基础上,您将需要实现转换过程。如果您已经有了诸如UTCTimeToLocalTime(时区)或LocalTimeToutTime(时区)之类的本地化功能,那么我建议将该程序集添加到您的报表中。如果没有,则必须在SQL中手动添加TZ计算:(如果没有经过验证的动态日光节约转换方法,这可能会变得很麻烦。目前我在美国的EST,计算时间为GMT-4。但是,在某个时间点和时间将更改为GMT-5。感谢Lrb,应该有本地化功能。因为SCSM默认报告显示的转换时间正好是事件发生的时间。)ion time有。但我不知道如何将该程序集添加到我的报告中。或者,您可以给我任何引用链接。保存记录时,是使用服务器本地时间GETDATE()存储的CreatedDate?或者计算中使用的是用户配置的语言环境-您是否从考虑用户tz的逻辑发送CreatedDate?