@PluginSubReport

Applies to ReadyAPI 3.56, last modified on November 25, 2024

SubReport creates a custom SubReport data source to provide custom data for reporting. It is displayed in the Reporting window.

The annotated class should extend AbstractJasperSubReport.

Sample SubReport

package com.smartbear.ready.plugin.template.factories;

import com.eviware.soapui.model.ModelItem;
import com.eviware.soapui.plugins.auto.PluginSubReport;
import com.eviware.soapui.reporting.reports.support.AbstractJasperSubReport;
import net.sf.jasperreports.engine.JRDataSource;
import net.sf.jasperreports.engine.JRException;
import net.sf.jasperreports.engine.JRField;

/**
*
*/

@PluginSubReport(name = "SampleSubReport", description = "A sample SubReport", id = "SampleSubReport", level = "COMMON")
public class SampleSubReport extends AbstractJasperSubReport {

protected SampleSubReport(ModelItem modelItem, String nameInReport, boolean cacheDataSource) {
super(modelItem, nameInReport, cacheDataSource);
}

@Override
public JRDataSource buildDataSource(ModelItem modelItem) {

return new JRDataSource() {

int cnt = 0;

@Override
public boolean next() throws JRException {

return ++cnt < 5;
}

@Override
public Object getFieldValue(JRField jrField) throws JRException {
return jrField.getName() + " value " + cnt;
}
};
}
}
Highlight search results