# Extended Item Data Prepare-Time Support

###### Identifier:

org.eclipse.birt.report.engine.reportitemQuery

###### Since:

1.0

###### Description:

This extension point specifies how the data that the new report item needs should be prepared. In a server environment, the plugin registry uses this extension point registration to discover supported report item extensions.

###### Configuration Markup:

<!ELEMENT extension (reportItem)>

<!ATTLIST extension

point CDATA #REQUIRED

id CDATA #IMPLIED

name CDATA #IMPLIED

>

<!ELEMENT reportItem EMPTY>

<!ATTLIST reportItem

name CDATA #IMPLIED

class CDATA #IMPLIED

getAllRows (true | false)

>

- name - name of the extension item, such as "chart" for chart.
- class - class which implements IReportItemQuery
- getAllRows - getAllRows only applies when an ExtendedItem does not have a dataset defined, and the ReportItem is sharing data with its container. True means rowSet contains all rows, while false means rowSet contains only one row.

###### Examples:

The following is a sample usage of the reportItemQUery extension point:

    <extension point="org.eclipse.birt.report.engine.reportitemquery"
    name="chart report query extension">
      <reportItem name="org.eclipse.birt.chart" class="org.eclipse.birt.report.chartitem.ChartQuery"/>
     </extension>

###### API Information:

The value of the class attribute must be the fully qualified name of a class that implements `org.eclipse.birt.engine.extension.IReportItemQuery`. The interface provides the following functions:

- `public void setModelObject(ExtendedItemHandle handle)` ---- passes the model object to the extension provider.
- `public IBaseQueryDefinition[] getReportQueries(IBaseQueryDefinition parent) throws BirtException;` ---- returns report queries that engine uses to prepare data for the extended item.

###### Supplied Implementation:

Chart as an extended item

Copyright (c) 2005 Actuate Corporation. All rights reserved. This program and the accompanying materials are made available under the terms of the Eclipse Public License v2.0 which accompanies this distribution, and is available at http://www.eclipse.org/legal/epl-2.0.html
Contributors: Actuate Corporation - initial API and implementation