【问题标题】:Datetime Parameter in SSRS - input validationSSRS 中的日期时间参数 - 输入验证
【发布时间】:2014-09-23 09:25:16
【问题描述】:

我有一个输入参数“StartDate”,其数据类型设置为“日期/时间”。除了使用日历控件外,用户还可以手动输入值。我想知道是否有任何方法可以验证它,以便出现以下错误

本地报告处理过程中发生错误。提供的价值 报告参数“StartDate”对其类型无效。

在提供一些垃圾值作为输入时不显示。看到一个跟这个here类似的帖子, 并尝试使用自定义代码来验证参数值,仍然无法正常工作。

有没有办法使用日期/时间作为数据类型并仍然验证值以便不引发错误?

任何帮助将不胜感激。谢谢!

【问题讨论】:

  • 如果验证失败,则必须抛出异常,因此您无法摆脱错误消息(并且您不想...)。不幸的是,“仍然无法正常工作”并不是对您有用的技术描述。怎么了?你试过什么?失败在哪里?请发布一些代码。
  • 我在报表属性中添加了自定义代码,然后添加了一个文本框以在报表设计器中显示错误消息。并尝试通过文本框属性中可用的文本框可见性访问该函数,如下所示 =IIF(Code.FunctionName(Parameters!DateTimeName.Value),TRUE,FALSE) 现在它说:“文本框'TextBoxName 的 VisibilityHdden 表达式' 包含错误:'FunctionName' 不是 'ReportExprHostImpl.CustomCodeProxy' 的成员。"
  • FuntionName 应该是您在此处尝试调用的类的名称。另外只是为了确保您应该使用 VB 作为后面的代码。我这样说是因为有些人在意识到它不受支持之前就使用了 C#。

标签: sql-server datetime reporting-services


【解决方案1】:

选择日期格式 使用这种格式得到结果。

我认为您在“MM-dd-yyyy”中的日期日期格式显示无效

【讨论】:

    【解决方案2】:

    错误:

    The value provided for the report parameter 'StartDate' is not valid for its type. (rsReportParameterTypeMismatch)
    

    更改日期格式: 使用这种格式传入参数 - “dd-MM-yyyy”。 如果格式没有改变,请检查您的系统日期格式。

    【讨论】:

    • 当您在 reportviewer 中选择日期时,检查格式应为“dd-MMM-yyyy”,即“23-Sep-2014”
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-11-29
    • 1970-01-01
    • 2012-10-28
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多