0

下面的示例是获取行名或列名。我想通过仅索引而不是列名来隐藏列名。是否可以通过使用表元素进行索引来获取列名?我还想根据索引隐藏行。请提供解决方案?

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
<html>

<head>
  <meta http-equiv="content-type" content="text/html;charset=utf-8" />
  <title>Viewer Page</title>
</head>

<body onload="init()">
  <script type="text/javascript" language="JavaScript" src="http://localhost:8700/iportal/jsapi"></script>
  <script type="text/javascript" language="JavaScript">
  function init() {
    actuate.load("viewer");
    actuate.load("dialog");
    actuate.initialize("http://localhost:8700/iportal", null, "administrator", null, runReport);
  }

  function runReport() {
    var viewer = new actuate.Viewer("viewerpane");
    var manUIOptions = new actuate.viewer.UIOptions();
    manUIOptions.enableToolBar(false);
    manUIOptions.enableFilter(true);
    viewer.setUIOptions(manUIOptions);
    viewer.setReportName("/Resources/xyz.rptdesign");
    viewer.submit(getColumnAndHide);
  }
  callBackError = function(exception) {
    window.alert('ERROR: ' + exception);
  };

  function getColumnAndHide(viewer) {
    var myTable = viewer.getCurrentPageContent().getTableByBookmark("detail");
    //var myColumn=myTable.getColumnName(2);
    //myTable.getRow(2);
    myTable.submit();
  }
  </script>
  <div id="viewerpane"></div>
</body>

</html>
4

1 回答 1

0

这是为您提供的概述。首先,我会在 birt 报告中“配置”所有内容,无论是否隐藏。如果报告在使用时被操纵,我认为这是一个糟糕的设计。它可能导致严重的竞争条件、错误的结果和困难的调试问题。创建 birt 报告的基础知识在此基本介绍完毕: Vogel,“使用 Eclipse BIRT 和 Java 对象(PO​​JO's)进行报告 - 教程”

然后,当您有一个数据集或假设一种数据容器(如变量)时,您可以将内容放入您的模板(*.rptdesign 文件)中。

工作流程如下:

  • 将 Grid 放入页面
  • 将标签或数据单元或任何可以包含可变文本的内容放入网格中
  • 通过point-and-click™选择元素
  • 在“属性编辑器”中,有一个可见性选项卡可供单击。
  • 输入正确的表达式(例如 JS),保存并运行测试。

简单示例截图

如果你喜欢我做了一个简单的例子来向你展示如何隐藏元素,如果满足要求。你可以下载它。 BIRT 报告设计示例

无论如何,它都是免费的 GNUv2……希望这对您有所帮助。AFAIK

于 2016-09-19T13:16:39.570 回答