Skip to main content

Notice: this Wiki will be going read only early in 2024 and edits will no longer be possible. Please see: https://gitlab.eclipse.org/eclipsefdn/helpdesk/-/wikis/Wiki-shutdown-plan for the plan.

Jump to: navigation, search

Difference between revisions of "Ecore ODA Driver"

(Rearranged layout and added a tutorial for the new driver)
(Tutorial)
Line 49: Line 49:
 
* Create an instance of the library model in order to report on it.  
 
* Create an instance of the library model in order to report on it.  
 
** New | Example EMF Model Creation Wizards | EXTLibrary Model  
 
** New | Example EMF Model Creation Wizards | EXTLibrary Model  
 +
** A New Dialog window will be displayed
 +
*** Use your new BIRT Report Project as the parent of the library model document
 +
*** For the Model Object select Library, keep UTF-8 as the encoding
 
** The library model document will be created and will open in a EXTLibrary Editor.
 
** The library model document will be created and will open in a EXTLibrary Editor.
* Edit the  Library document to set something for the name and an address
+
* Edit the  Library document to set something for the name and an address properties.
properties.
+
** In the editor unfold the root entity to expose the Library element of the model
 +
** Select the Library element and right click to open a popup menu.
 +
** Select ''Show Properties View''
 +
** In the properties view edit the properties for Name and Address.
 
* Create a blank BIRT report and add a datasource pointing to the model instance
 
* Create a blank BIRT report and add a datasource pointing to the model instance
 
document you just created.
 
document you just created.
 +
** Browse the Workspace to your BIRT Report Project and select the library model document you just created
 
* Create a dataset referencing the just created datasource with the values:
 
* Create a dataset referencing the just created datasource with the values:
 
     Context Type:    extlibrary.Library
 
     Context Type:    extlibrary.Library

Revision as of 14:58, 9 January 2012

Introduction

The Ecore ODA Driver was created to allow an EMF ECore model to serve as an ODA data source. This makes it simple for BIRT reports to draw data from Ecore models.

The Ecore ODA Driver has been implemented in two projects:

  1. An interim driver was created as a DTP Incubator project. Its latest status can be found in Bugzilla 132958.
  2. A second official and more functional ODA driver has been added to EMF ECore for Indigo M4. See bug 330988 for details. This official EMF implementation effectively obsoletes the interim DTP Incubator implementation.

Interim Driver

Tutorial

Tim has written a tutorial for the Ecore ODA Driver at Overcoming Fear.

Backport to Eclipse 3.2, EMF 2.2 and JDK 1.4

For the original driver a backport of these plug-ins was checked-in to CVS for use with Eclipse 3.2, EMF 2.2 and JDK 1.4. The backport has no guarantee of future support. If you would like instructions for using these versions of the plug-ins, please look here.

Connection Properties and Profiles

In order to support requests for Connection Profiles and Connection Properties, we made some changes as of August 22, 2008 that will affect existing reports, i.e., the Model file location is now stored directly as a URI, the property for this URI has been renamed, Column Selections are contained in a single property (instead of in properties with increasing numbers), and the name of the Column Selection property has been changed. Hopefully these fixes will not be too disruptive to existing reports and the benefit of dynamic property binding will outweigh the inconvenience of either manually editing existing reports or re-creating those reports.

Installation

The Interim Driver build package is available on the DTP download page.

CVS

The Interim Ecore ODA Driver and UI can be checked out of CVS from the Datatools_Project Repository of dev.eclipse.org with a path of org.eclipse.datatools.incubator/plugins.

Browse: ViewCVS

EMF Driver

Tutorial

  • Download and install the BIRT All-In-One from http://download.eclipse.org/birt/downloads/
  • Start up Eclipse and and install EMF and the EMF ODA Driver
    • Help | Install New Software | Site: Indigo
    • In the Modeling folder select
      • EMF - Eclipse Modeling Framework SDK
      • EMF ODA SDK
  • After the install of the EMF Framework and ODA SDKs, reboot Eclipse and create sample EMF model, edit and the editor projects in your workspace:
    • New | Examples | Eclipse Modeling Framework | Extended Library Model Example.
  • In order to write reports on instances of the Extended Library Model, the library model has to be registered. The easiest way to do this is to launch an Eclipse Application using the 3 library projects.
    • Right click on the org.eclipse.emf.examples.library.editor project and launch an Eclipse Application
      • Run as | Eclipse Application
  • After the launched workspace comes up create a BIRT Report project.
  • Create an instance of the library model in order to report on it.
    • New | Example EMF Model Creation Wizards | EXTLibrary Model
    • A New Dialog window will be displayed
      • Use your new BIRT Report Project as the parent of the library model document
      • For the Model Object select Library, keep UTF-8 as the encoding
    • The library model document will be created and will open in a EXTLibrary Editor.
  • Edit the Library document to set something for the name and an address properties.
    • In the editor unfold the root entity to expose the Library element of the model
    • Select the Library element and right click to open a popup menu.
    • Select Show Properties View
    • In the properties view edit the properties for Name and Address.
  • Create a blank BIRT report and add a datasource pointing to the model instance

document you just created.

    • Browse the Workspace to your BIRT Report Project and select the library model document you just created
  • Create a dataset referencing the just created datasource with the values:
   Context Type:     extlibrary.Library
   Query Text:    self
   Result Type:    extlibrary.Library
  • You should now be able to create your BIRT Report using this dataset

Classloader Issue

Depending on your model you may or may not encounter the need to configure Report Designer Classpath user preferences. See Bugzilla 359306

EclipseCon Talk

2011 EclipseCon Session: Reports and Charts right from your EMF models


Installation

EMF ODA Driver SDK can be obtained through the p2 Eclipse Modeling Project Update Site - http://www.eclipse.org/modeling/updates/

  • The EMF ODA Driver builds are not yet available for download as a zips.

CVS

The EMF Ecore ODA Driver and UI can be checked out of CVS from the Modeling Repository of dev.eclipse.org with a path of /cvsroot/modeling.

You will find the EMF Driver implemented as features under org.eclipse.emf/features:

  • org.eclipse.emf.oda-feature
  • org.eclipse.emf.oda.ecore-feature
  • org.eclipse.emf.oda.ecore.ui-feature


Dependencies

After obtaining the code, you may notice the drivers have a number of dependencies that might be un-met in your workspace:

Dependency Download Site
BIRT Report Designer http://download.eclipse.org/birt/downloads/
Datatools Connectivity http://www.eclipse.org/datatools/downloads.php
EMF Query http://www.eclipse.org/modeling/emf/downloads/?project=query
Object Constraint Language (OCL) Integration http://www.eclipse.org/modeling/mdt/downloads/?project=ocl

Using the Driver to Create BIRT Reports

Those less familiar with EMF or without a handy EMF model should install the EMF Examples from http://www.eclipse.org/modeling/emf/updates and create an instance of an .extlibrary file with some data. It's outside the scope of this document to describe this process, but typical readers will already have familiarity with EMF editors.

Of course, any serialized EMF model will do, as long as the package has been registered so that the Java classes representing the model are available at runtime.

Create a Report

The primary consumer of ODA data sources is BIRT. Typically, creating a BIRT report is the first step to using the Ecore ODA Driver.

Create an Ecore ODA Data Source

Any ODA driver registered with the platform show up within BIRT as data source types, each with a wizard to allow for the entry of connection information. In the case of the Ecore ODA Driver, the only information required by the connection is the path to a serialized Ecore model of a registered model type. (If you aren't familiar with registering EMF models, see this question in the EMF/FAQ.) Attempting to load a serialized model for an unregistered package will result in an error.

Create an Ecore ODA Data Set

Once a data source has been created for your Ecore model, use the New Data Set wizard to launch the Ecore ODA Data Set Wizard.

...to be continued... Feature changes in process--screen shots forthcoming...

Back to the top