我在XCode Playground中有以下代码:
let currentDate = NSDate()
var starttime = NSCalendar.currentCalendar().nextDateAfterDate(currentDate, matchingUnit: NSCalendarUnit.Minute, value: 15, options: NSCalendarOptions.MatchNextTime)
如果currentDate为“2016-01-03 03:57 +0100”,则starttime正确设置为“2016年1月3日,上午4:15”,但如果currentDate为“2016-01-03 03:56 +0100” “starttime错误地设置为”2016年1月4日,上午12:00“。我无法弄清楚什么是错的。我忽视了什么吗?
答案 0 :(得分:2)
我无法解释意外行为,但将匹配选项设置为
WITH
SET [~FILTER] AS
{[Created_Date.Created_Hir].[Created_On].[2014-04-01]:[Created_Date.Created_Hir].[Created_On].[2014-04-30]}
SET [~ROWS] AS
{[Sales Order Attributes SO.Sales_order].[Sales Order ID].Members}
SELECT
NON EMPTY {[Measures].[CONT_AMT_GROSS], [Measures].[CONT_AMT_NET]} ON COLUMNS,
NON EMPTY [~ROWS] ON ROWS
FROM [SALES_ORDER]
WHERE [~FILTER]
解决问题并在我的所有测试中给出正确的结果。
[.MatchNextTime, .MatchStrictly]
记录为
指定操作应根据需要向前或向后移动以寻找匹配。