【问题标题】:Populate Crystal Reports data at runtime without data source在没有数据源的情况下在运行时填充 Crystal Reports 数据
【发布时间】:2015-06-28 05:21:24
【问题描述】:

有没有办法在 Crystal Reports 中生成报表而不定义其数据源。我想做的是使用 Crystal Reports 来设计一个布局并在运行时用数据填充它。通过这样做,它不会绑定到任何东西,使其与数据源无关。

【问题讨论】:

  • 没有来源是什么意思?您要求在没有来源的情况下填充数据。如果没有数据源,那么如何填充?您的意思是不在数据库资源管理器中创建与数据库的连接?
  • 是的。我的意思是,不创建数据库连接。我希望报表不受数据源的限制,只需将其填充到我的应用程序的不同模块中。
  • 我认为您不能这样做,因为报表基于具有特定类型的字段,而 Crystal Reports 使用这些类型和其他一些字段属性;)。
  • @justelouise 使用数据集 (dataset.xsd) 而不创建与 dbms 的连接。

标签: c# crystal-reports datasource


【解决方案1】:

我认为这个解决方案可以帮助你:

  • 您需要与数据库建立连接(例如使用 ADO)。
  • 您可以使用 SQL Query 选项而不是选择表或视图
  • 对于您的查询,请使用以下语法(对于 SQL Server):

    SELECT CONVERT(0 AS bigint) As Id,
           CONVERT(0 AS varchar(20)) As FirstName,
           CONVERT(0 AS varchar(20)) AS LastName,
           CONVERT(0 AS bit) AS isActive,
           ....
    

    注意这几点:

    • 将当前SELECT 语句的类型与运行时查询匹配。
    • 在运行时,Crystal 将忽略字段名称之间的差异,它会从左到右为字段分配值(不基于名称)。

【讨论】:

  • @downvoter:作为 SO 的原则,请解释您的反对意见! ;)
猜你喜欢
  • 1970-01-01
  • 2011-02-13
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2011-02-17
相关资源
最近更新 更多