C# Crystal Report:如何为桌面基础程序使用超链接

C# Crystal Report:如何为桌面基础程序使用超链接,c#,crystal-reports,hyperlink,reporting,C#,Crystal Reports,Hyperlink,Reporting,我正在将Crystal Report与C#一起使用。 用于桌面 我想用一些参数超链接到另一个报表 我显示发票的摘要(Invoice.rpt),如编号(名为InvNo)、日期、项目和总金额。 如果我单击InvNo“0001”,它将把InvNo传递给项目的摘要(Item.rpt) 可能吗 如果可能的话,我想它需要一些crystal report公式中的代码,请也给我一个公式示例。起初,我认为答案是“不可能的”,但经过一些实验,我得到了比我预期的更远的结果 我基于Xtreme.mdb文件创建了两个报告

我正在将Crystal Report与C#一起使用。 用于桌面

我想用一些参数超链接到另一个报表

我显示发票的摘要(Invoice.rpt),如编号(名为InvNo)、日期、项目和总金额。 如果我单击InvNo“0001”,它将把InvNo传递给项目的摘要(Item.rpt)

可能吗


如果可能的话,我想它需要一些crystal report公式中的代码,请也给我一个公式示例。

起初,我认为答案是“不可能的”,但经过一些实验,我得到了比我预期的更远的结果

我基于Xtreme.mdb文件创建了两个报告,分别名为customers.rpt和order.rpt

customer.rpt有两列:customer Name和Order ID。Order.rpt有三列:Order ID、Order Date和Order Amount

目标是:如果我单击客户报告中的订单ID字段,它将打开订单报告并为该订单ID生成该报告

我将以下内容添加到与订单ID的超链接关联的条件公式中:

"file:///C:/Documents and Settings/Administrator/Desktop/order.rpt " + ToText({Orders.Order ID},"#")
单击链接时,会出现以下对话框:

不幸的是,Crystal Reports的EXE不支持命令行参数,因此操作失败:

要使其工作,您需要创建一个可以处理Crystal Reports的命令行参数的应用程序。它将具有以下特点:

  • 打包为EXE
  • “包装”Crystal Report Viewer控件(您可能不需要任何“设计”功能)
  • 处理数据库身份验证
  • 最重要的是,它需要支持命令行参数。在这方面,您可能可以在BusinessObjecs的基础上对参数列表进行建模