我有一个时间字段(LaborHed.ClockInTime),它在Epicor服务器(我正在使用的ERP)与当地时间有1小时的差异。我当地的时区是UTC(都柏林,爱丁堡,里斯本,伦敦)。我不知道如何将Epicor服务器时区转换为我当地的时区。
我尝试了这段代码(但它不起作用)
ShiftDateTime(cdate({BAQReportResult.LaborHed.ClockInTime}),“UTC,0”, “”)
我做错了什么?
答案 0 :(得分:1)
如果是打印字段,请增加公式中的小时。否则,这将使用当前用户时区:
ShiftDateTime ( CurrentDateTime, PrintTimeZone, CurrentCEUserTimeZone)
要强制执行时区,例如英国夏令时,请使用以下内容:
ShiftDateTime (cdate({BAQReportResult.LaborHed.ClockInTime}),"UTC,0, BST", "")
答案 1 :(得分:1)
plot(as.factor(chrs), comps2$X1.7, ylim = c(0,1), type = "l")
Epicor服务器(我正在使用的ERP)与本地时间相差1小时。我的当地时区是UTC(都柏林,爱丁堡,里斯本,伦敦)。
我做错了什么?
您需要输入服务器时区。
似乎ShiftDateTime (inputDateTime, inputTimeZone, newTimeZone)
输入和输出 您的本地时间。
如何将Epicor服务器时区转换为我的本地时区。
由于您的本地时间是UTC / London,所以我假设服务器时间是UTC + 1。 inputTimeZone 和 newTimeZone 的Crystal Reports语法为“ std,offset”。
尝试:
ShiftDateTime (cdate({BAQReportResult.LaborHed.ClockInTime}),"UTC,0", "")
,或像这样明确地编写本地时区:
ShiftDateTime (cdate({BAQReportResult.LaborHed.ClockInTime}), "UTC,-60", "")