- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我的问题:如何运行报告并将其下载为文本?在 BusinessObjects 中,您可以将报告下载为纯文本文件。 API 的文档表明您可以下载各种格式的报告。这是如何实现的?
如何将其下载为 PDF:在 the documentation 中,他们描述了如何将它们下载为 PDF 文件:
ViewSupport pdfViewSupport = new ViewSupport();
pdfViewSupport.setOutputFormat(OutputFormatType.PDF);
pdfViewSupport.setViewType(ViewType.BINARY);
pdfViewSupport.setViewMode(ViewModeType.DOCUMENT);
RetrieveBinaryView retBinView = new RetrieveBinaryView();
retBinView.setViewSupport(pdfViewSupport);
RetrieveData retBOData = new RetrieveData();
retBOData.setRetrieveView(retBinView);
DocumentInformation docInfo = boReportEngine.getDocumentInformation(struid, null, null, null, retBOData);
BinaryView myBOView = (BinaryView) boDocInfo.getView();
byte[] docContents = myBOView.getContent();
当我改变时:
pdfViewSupport.setOutputFormat(OutputFormatType.PDF);
pdfViewSupport.setViewType(ViewType.BINARY);
pdfViewSupport.setViewMode(ViewModeType.DOCUMENT);
至
pdfViewSupport.setOutputFormat(OutputFormatType.INT_HTML);
pdfViewSupport.setViewType(ViewType.INT_CHARACTER);
pdfViewSupport.setViewMode(ViewModeType.INT_REPORT_PAGE);
我收到以下错误:
org.apache.axis2.AxisFault: Binary view of such a document should be only requested with the use of ViewType.BINARY (WRE 01151)
有趣的是,我将 ViewType 设置为 INT_CHARACTER,而不是 BINARY...
它断线了:
DocumentInformation docInfo = boReportEngine.getDocumentInformation(struid, null, null, null, retBOData);
我想做的事情:这确实很复杂,但我基本上想要一个返回单行的报告,并将其打印在报告上(没有其他内容),然后下载该报告以文本形式报告,因为文本是我在另一个程序中使用的 xml。
任何帮助都会很棒!
<小时/>注意:我正在 3.2 服务器上运行,但我们很快就会升级到 4.0。因此,如果该解决方案适用于两个版本,那就太棒了,否则 v4 和 v3.x 解决方案也很棒:)
最佳答案
这一行的问题:
RetrieveBinaryView retBinView = new RetrieveBinaryView();
所以我不知道这一切是如何运作的,但这就是您正在寻找的:
ViewSupport viewSupport = ViewSupport.Factory.newInstance();
viewSupport.setOutputFormat(OutputFormatType.INT_XML);
viewSupport.setViewType(ViewType.INT_CHARACTER);
viewSupport.setViewMode(ViewModeType.INT_REPORT_PAGE);
RetrieveData retBOData = RetrieveData.Factory.newInstance();
RetrieveXMLView retXMLView = RetrieveXMLView.Factory.newInstance();
retXMLView.setViewSupport(viewSupport);
retBOData.setRetrieveView(retXMLView);
DocumentInformation boDocInfo = getDocInfo(actions, retBOData);
XMLView bView = (XMLView) boDocInfo.getView();
ByteArrayOutputStream out = new ByteArrayOutputStream(bView.getContentLength());
bView.getContent().save(out);
byte[] reportBytes = out.toByteArray();
String reportInString = new String(reportBytes);
但是,这里的reportInString
是表示报告的XML。所以我所做的就是用前缀和后缀封装我想要从报告中得到的内容。因此,举例来说,假设我用 @#$ThisIsWhatYouWant-
和 -End$#@
封装它,那么我将执行以下操作:
Pattern patt = Pattern.compile("(?i)@#$ThisIsWhatYouWant-(.*?)-End$#@", Pattern.DOTALL);
Matcher match = patt.matcher(reportInString);
if (match.find()) {
return match.group(1);
}
return null;
附注这应该适用于 3.x 和 4.0 BO 服务器。
关于java - 如何以文本形式运行和下载 BusinessObjects 报告,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13203828/
如何实现 BusinessObjects 的版本控制(如在 BI 解决方案中)?理想情况下,我们希望有某种方式将工件放入我们的 Subversion 存储库中。 (说实话,我对 BusinessObj
我的问题:如何运行报告并将其下载为文本?在 BusinessObjects 中,您可以将报告下载为纯文本文件。 API 的文档表明您可以下载各种格式的报告。这是如何实现的? 如何将其下载为 PDF:在
我有一个应用程序,它使用 Crystal Report COM SDK 创建和操作针对 Crystal Enterprise 10 存储库的报告。我想从 Crystal Enterprise 10 升
我继承了一些需要一些 TLC 的旧版 Business Objects 代码。该代码是一个 Servlet。为 Servlet 中的每个新请求创建一个新的 IEnterpriseSession。我最初
我正在寻找编写一个从 CMS 提取信息的应用程序。这将仅获取所有用户和用户组,并将获取所有报告及其路径。我可以担心以后会得到更多。也许我可以部署它一次,它会每晚更新。我打算用 Java 而不是 .NE
在 C# 泛型出现之前,每个人都会通过创建一个实现了 IEnumerable 的集合基础来为其业务对象编写集合代码 即: public class CollectionBase : IEnumerab
如何通过 Java SDK 访问 BusinessObjects 简单报表过滤器和输入控件?我在 DocumentInstance 类中进行了搜索,但我发现的只是查询过滤器。我错过了一些事情或者没有解
我对(我认为是)一个关于 SAP BusinessObjects/Crystal Reports 存储其数据源的看似简单的理论问题感到困惑,以帮助我更改它们以与我们新升级的 Maximo 集成。 一句
我在字符串中有以下 XML: 1 Foo 2 Bar . .
我想将 BusinessObjects 存储库中包含的信息用作 Crystal Reports 的数据源。不幸的是,这些信息并没有保存在简单的表结构中——大多数属性都存储在加密的二进制字段中。 以下是
首先,我知道有很多问题和解决方案来纠正后台线程以外的线程的线程编码。我发现的所有问题和解决方案都集中在列表或业务对象本身引发事件的场景Windows 窗体可以订阅更新,然后正确地将更新编码到主 UI
我正在尝试关注 this从我的开发电脑连接到运行 SAP Crystal Reports Enterprise 4.1 的服务器的指南。当我运行我的解决方案时,出现此错误: An exception
我从 SAP 站点获得了一个示例应用程序,该应用程序使用 BusinessObjects 附带的 SDK。我对其进行了修改,将报告从一个文件夹移动到另一个文件夹。它用于删除报告。它使用 getSess
我正在使用业务对象通过 JDBC 连接到新数据库。我收到错误: Database error: (CS) “Java Exception : java.lang.UnspportedClassVers
我要在这里回答我自己的问题,但我想发布此问题以引起一些注意,以防其他人遇到此问题。 在 BusinessObjects 数据服务设计器中,我有两个十进制 (36, 10) 值,我想将一个值除以另一个值
您好,我正在为 businessobjects (SAPBI 4.1) 编写一个小型 SDK 应用程序。我正在使用 Java,我想使用 BOE 调度功能。我有一个问题 - 我正在实现 IProgram
任何人都可以介绍 SAP BusinessObjects BI 4.0 中自定义 Java Web 应用程序集成的分步指南(使用 BI Tomcat6)。我在互联网上找不到任何解决方案,遗憾的是。例如
我正在尝试编译一个使用 SAP Business Objects 4.0 Universe 设计器 API 的简单程序。我基本上遵循这个简单的指南: Getting Started with Desi
我在字符串中有以下 XML: 1 Foo 2
我是一名优秀的程序员,十分优秀!