Skip to main content



      Home
Home » Archived » BIRT » How to get data from data set inside beforeGeneration( chart, context ) on Meter Chart?
How to get data from data set inside beforeGeneration( chart, context ) on Meter Chart? [message #185558] Thu, 17 August 2006 09:52
Eclipse UserFriend
Originally posted by: kukawkap.poczta.gazeta.pl

This is a multi-part message in MIME format.
--------------030006030404070007060704
Content-Type: text/plain; charset=ISO-8859-2; format=flowed
Content-Transfer-Encoding: 7bit

Hi,
I'm quite new to BIRT and I'm trying to write some functionality in Java
Script. Currently I'm developing a Meter Chart and writing code
beforeGeneration( chart, context ). During this work I found few issues.

1) How to read data from data set in beforeGeneration function?
I have data set calles set2_meter_chart and it has few columns
(date, value, end_value, 1st_split, 2nd_split). I would like
to read the values for that columns for current row of Report.

2) I wrote also some code (bellow) that should change the regions.
I don't know why, but it changes the regions only from 2nd
to n-th (last) row. By first row the regions are not changes.

Thanks for Help.
Przemek Kukawka




--------------030006030404070007060704
Content-Type: text/plain;
name="meter_beforeGeneration.txt"
Content-Transfer-Encoding: 7bit
Content-Disposition: inline;
filename="meter_beforeGeneration.txt"

function beforeGeneration( chart, context ){

importPackage(Packages.org.eclipse.birt.chart.factory);
importPackage(Packages.org.eclipse.birt.chart.model);
importPackage(Packages.org.eclipse.birt.chart.model.attribut e);
importPackage(Packages.org.eclipse.birt.chart.model.attribut e.impl);
importPackage(Packages.org.eclipse.birt.chart.model.attribut e.util);
importPackage(Packages.org.eclipse.birt.chart.model.componen t);
importPackage(Packages.org.eclipse.birt.chart.model.componen t.impl);
importPackage(Packages.org.eclipse.birt.chart.model.componen t.util);
importPackage(Packages.org.eclipse.birt.chart.model.data);
importPackage(Packages.org.eclipse.birt.chart.model.data.imp l);
importPackage(Packages.org.eclipse.birt.chart.model.data.uti l);
importPackage(Packages.org.eclipse.birt.chart.model.impl);
importPackage(Packages.org.eclipse.birt.chart.model.layout);
importPackage(Packages.org.eclipse.birt.chart.model.layout.i mpl);
importPackage(Packages.org.eclipse.birt.chart.model.layout.u til);
importPackage(Packages.org.eclipse.birt.chart.model.type);
importPackage(Packages.org.eclipse.birt.chart.model.type.imp l);
importPackage(Packages.org.eclipse.birt.chart.model.type.uti l);
importPackage(Packages.org.eclipse.birt.chart.model.util);
importPackage(Packages.org.eclipse.birt.chart.plugin);
importPackage(Packages.org.eclipse.birt.chart.render);
importPackage(Packages.org.eclipse.birt.chart.script);
importPackage(Packages.org.eclipse.birt.chart.style);
importPackage(Packages.org.eclipse.birt.chart.util);
importPackage(Packages.org.eclipse.birt.report.engine.api.sc ript.instance);

var chart = context.getChartInstance();
//var series = chart.getSeries(0);

importPackage(Packages.java.io);
fd = new RandomAccessFile("c:\\BirtLog.txt","rw");
fd.seek(fd.length());
fd.writeChars("Run|");
fd.writeChar(10);
fd.close();

var seriesDefinition_0 = chart.getSeriesDefinitions().get(0);
var seriesDefinition_0_0 = seriesDefinition_0.getSeriesDefinitions().get(0);
var series_0_0_X = seriesDefinition_0_0.getSeries().get(0);
var series_0_0_Y = seriesDefinition_0_0.getSeries().get(1);

var seriesX1dial = series_0_0_X.getDial();
/* For Dial of base */
var seriesX1dial_scale = seriesX1dial.getScale( );
seriesX1dial_scale.setMin( NumberDataElementImpl.create( 0 ) );
seriesX1dial_scale.setMax( NumberDataElementImpl.create(10000) );
seriesX1dial_scale.setStep( 500 );

var dialRegion1 = DialRegionImpl.create();
var dialRegion2 = DialRegionImpl.create();
var dialRegion3 = DialRegionImpl.create();

dialRegion1.setFill(ColorDefinitionImpl.GREEN());
dialRegion1.setStartValue( NumberDataElementImpl.create( 0 ) );
dialRegion1.setEndValue( NumberDataElementImpl.create( 3000) );
seriesX1dial.getDialRegions().add(dialRegion1);

dialRegion2.setFill(ColorDefinitionImpl.YELLOW());
dialRegion2.setStartValue( NumberDataElementImpl.create( 3000 ) );
dialRegion2.setEndValue( NumberDataElementImpl.create( 6500 ) );
seriesX1dial.getDialRegions().add(dialRegion2);

dialRegion3.setFill(ColorDefinitionImpl.RED());
dialRegion3.setStartValue( NumberDataElementImpl.create( 6500 ) );
dialRegion3.setEndValue( NumberDataElementImpl.create( 10000 ) );
seriesX1dial.getDialRegions().add(dialRegion3);

fd.close();
--------------030006030404070007060704--
Previous Topic:Data Set Property Binding doc?
Next Topic:How to create a dependency between two XML data sets
Goto Forum:
  


Current Time: Tue May 13 15:09:52 EDT 2025

Powered by FUDForum. Page generated in 0.02752 seconds
.:: Contact :: Home ::.

Powered by: FUDforum 3.0.2.
Copyright ©2001-2010 FUDforum Bulletin Board Software

Back to the top