有没有办法修改Crystal Reports XI报告RPT文件的元数据?

时间:2012-08-29 20:56:58

标签: crystal-reports crystal-reports-xi

有没有办法将Crystal Reports XI报告.rpt文件的元数据修改为文本?
假设我需要修改Crystal Reports XI .rpt文件以更改常见事件
整个文件。我知道如果更改表名或数据源,Crystal Reports
处理从旧到新的重映射过程。我不是在寻找那个 我在这里寻找的是一种表示.rpt文件或对象的方法 作为文本,在文本编辑器中手动修改,然后将其导入.rpt格式 一个很好的类比是Borland Builder 6表单文件(.dfm)。我可以复制一个按钮对象
作为文本并将其粘贴到文本编辑器。修改一些属性和事件,复制
对象阻止并将其粘贴回Borland Builder 6设计模式窗口 Borland Builder 6知道这个文本块是一个dfm对象并将其粘贴在
适当的地方,根据您输入的属性显示新修改的按钮。
Crystal Reports中有这样的东西吗?

2 个答案:

答案 0 :(得分:0)

不幸的是,不是我知道的。在没有第三方软件的情况下,甚至没有办法在对象之间进行搜索和替换(参见this post)。在我看来,这是CR的一个主要缺陷。

但是,没有什么可以阻止某人使用Crystal Reports API创建您描述的工具。

答案 1 :(得分:0)

使用XI,您可以使用SDK做很多事情,但需要在Crystal Reports之外完成。例如,RptToXml

使用2008年,您可以创建Add-In。它将为Crystal Reports添加一个名为“Add-Ins”的新顶级菜单。一些快速研究表明,您只能对活动报告进行操作,通过参数传递给您的代码(在您的代码作用于它之前复制它)。遗憾的是,API不允许您访问Crystal Reports本身,这将非常强大(想想宏)。我怀疑SAP的OEM合作伙伴可以访问功能更强大的附加SDK。

如果您有BusinessObjects Enterprise,则可能需要调查MetaData Manager($ 40K)。

另一个选项可能Crystal Reports for Eclipse。也许你可以使用Eclipse的插件框架或third-party scripting language与它结合使用(CR for Eclipse)来做一些满足你需求的东西。