百灵报表(BIRT)接口学习:设计report design

第一步,初始化ReportDesignHandleElementFactory的对象,前者代表生成的report design;后者用来创建所用到的报表元素。

 

IDesignEngine designEngine = new DesignEngine( new DesignConfig( ) );

ReportDesignHandle reportDesignHandle = designEngine.newSessionHandle(

            ULocale.ENGLISH ).createDesign( );

ElementFactory elementFactory = new ElementFactory( reportDesignHandle

            .getModule( ) );

 

第二步,创建Parameter

 

ScalarParameterHandle scalarParameterHandle = elementFactory

            .newScalarParameter( "param" );

scalarParameterHandle.setIsRequired( false );

scalarParameterHandle.setDefaultValue( " Australia " );

reportDesignHandle.getParameters( ).add( scalarParameterHandle );

 

第三步,创建Data Source

 

OdaDataSourceHandle dataSourceHandle = elementFactory.newOdaDataSource(

"data source",

"org.eclipse.birt.report.data.oda.jdbc" );

dataSourceHandle.setProperty(

"odaDriverClass",

"org.eclipse.birt.report.data.oda.sampledb.Driver" );

dataSourceHandle.setProperty( "odaURL", "jdbc:classicmodels:sampledb" );

dataSourceHandle.setProperty( "odaUser", "ClassicModels" );

// dataSourceHandle.setProperty( "odaPassword", "ClassicModels" );

reportDesignHandle.getDataSources( ).add( dataSourceHandle );

 

第四步,创建Data Set

 

OdaDataSetHandle dataSetHandle = elementFactory.newOdaDataSet(

"data set",

"org.eclipse.birt.report.data.oda.jdbc.JdbcSelectDataSet" );

dataSetHandle.setDataSource( dataSourceHandle.getName( ) );

dataSetHandle.setQueryText( "select * from CLASSICMODELS.CUSTOMERS" );

FilterCondition filterCondition = StructureFactory.createFilterCond( );

filterCondition.setOperator( DesignChoiceConstants.FILTER_OPERATOR_EQ );

filterCondition.setExpr( "row[/"COUNTRY/"]" );

filterCondition.setValue1( "params[/""

            + scalarParameterHandle.getName( ) + "/"].value" );

dataSetHandle.addFilter( filterCondition );

reportDesignHandle.getDataSets( ).add( dataSetHandle );

 

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值