0

ある条件に基づいて、2 つのクロス集計列を非表示にしたいと考えています。私はそれを使用してそれを達成することができました

 function onPrepareCell( cell, reportContext )
 if(some condition){
    if( cell.getCellID() == cell#){
    cell.getStyle().setDisplay("none");
    }
  }

クロス集計の onPrepare イベントで。PDF、HTML形式では正常に機能しますが、形式がExcelの場合、列は非表示になりません。早く終わらせたいので助けてください

4

2 に答える 2

1

BIRT exchange から回答を得ました。回答をここに投稿して、他の人に役立つようにします。

crosstab の onPrepare() イベントでは、以下のようにコードを記述できます。

function onPrepareCrosstab( crosstab, reportContext ) {
if(何らかの条件 ){ reportContext.getDesignHandle().getElementByID(ElementId#).setStringProperty("width","0px"); }

}

ここで ElementId# は、非表示にするセルの Id# です。ご覧のとおり、これを使用してセルの幅を動的に変更することもできます。

于 2012-10-15T05:55:19.143 に答える
0

OnCreateCell イベントでコードを試してください。

于 2012-10-09T23:33:25.883 に答える