由于您的 20130707 成员不存在,因此多维数据集无法知道它应该去哪里。
您的日期维度不包含一个月中的所有日期,这似乎很奇怪。我建议重新填充您的日期维度,以便它具有所有日期。如果使用表格多维数据集,则可以从Azure 数据市场获取完全填充的日期维度。如果您使用的是多维,您可以让 SSAS 为您生成一个。如果您有根据日期构建的参数,您可以限制列表以填充它们以仅显示存在使用 Exists 的度量的数据。
我还想知道为什么您希望用户输入日期而不是从有效列表中选择日期。当它们输入一个完全无效的值时,你如何处理错误?似乎最简单/最安全的选择是为他们提供可供选择的日期列表。如果他们输入的内容没有数据并且您有错误处理,则结果应该与他们从有效列表中选择的结果相同。
话虽这么说,你应该能够像下面这样。我检查日期是否为有效成员。如果不是,我会替换我在成员列表中找到的第一个有效成员(您可以选择自己的日期并将其插入其中)。对于范围的末尾,我找到最后一个有效成员(同样,您可以替换自己的值)。
{Iif(Count(Exists([Date].[Int Date].members, [Date].[Int Date].[20130704]))>0,[Date].[Int Date].[20130704], [Date].[Int Date].firstchild):
Iif(Count(Exists([Date].[Int Date].members, [Date].[Int Date].[20130707]))>0,[Date].[Int Date].[20130707], [Date].[Int Date].lastchild)}