Thanks that was helpful.

Brett

On Mon, Dec 15, 2008 at 7:00 PM, guo weizhan <[email protected]> wrote:

> I have create jira
> before(https://issues.apache.org/jira/browse/OFBIZ-1348) but not
> finished all of them, yes, you can use the javascript and create one
> special datasource,
> here is example code:
> public class CreateDataSource {
>
>        public static final String module =
> CreateDataSource.class.getName();
>
>        private String viewName ;
>
>        public CreateDataSource(String viewName){
>                this.viewName = viewName;
>        }
>
>        public List readData(){
>                List dataSources = null;
>                try{
>                        GenericDelegator delegator =
> GenericDelegator.getGenericDelegator("default");
>                        dataSources = delegator.findAll(viewName);
>                }catch( GenericEntityException e ){
>                         Debug.logWarning(e.getMessage(), module);
>                }
>                return dataSources;
>        }
> }
>
>
> in design file,something like this:
>
>  <property name="dataSource">OrderItemPriceInfo</property>
>            <method name="open"><![CDATA[orderItemPriceInfoClass = new
> Packages.org.ofbiz.birt.CreateDataSource("OrderItemPriceInfo");
> orderItemPriceInfo = orderItemPriceInfoClass.readData();
> totalrows = orderItemPriceInfo.size();
> currentrow = 0;]]></method>
>            <method name="fetch"><![CDATA[if( currentrow >= totalrows){
>        return (false);
> }
>
> var gv = orderItemPriceInfo.get(currentrow);
>
> var orderId = gv.get("orderId");
> var orderItemSeqId = gv.get("orderItemSeqId");
> var productPriceRuleId = gv.get("productPriceRuleId");
> var productPriceActionSeqId = gv.get("productPriceActionSeqId");
> var modifyAmount = gv.get("modifyAmount");
>
> row["orderId"] = orderId;
> row["orderItemSeqId"] = orderItemSeqId;
> row["productPriceRuleId"] = productPriceRuleId;
> row["productPriceActionSeqId"] = productPriceActionSeqId;
> row["modifyAmount"] = modifyAmount;
>
> currentrow = currentrow +1 ;
> return (true);]]></method>
>            <method name="close"><![CDATA[orderItemPriceInfoClass = null;
> orderItemPriceInfo = null;]]></method>
>
>
> 2008/12/16 Brett Palmer <[email protected]>:
> > Which script language are you referring to?  Do you mean BIRT's
> JavaScript
> > support or something else (bsh, groovy, etc)?
> >
> > Brett
> >
> > On Mon, Dec 15, 2008 at 6:20 PM, guo weizhan <[email protected]>
> wrote:
> >
> >> I remember BIRT can support the script language and can invoke the
> >> entity method directly. they can work fine with each other.
> >>
> >> 2008/12/16 Brett Palmer <[email protected]>:
> >> > We want to integrate BIRT reports more closely with OFBiz.  Our BIRT
> >> design
> >> > templates use standard SQL to generate the reports.   We would like to
> >> use
> >> > the OFBiz entity engine to generate the SQL so we can leverage our
> >> existing
> >> > OFBiz application code.
> >> >
> >> > For example, we would like to use a class similar to the
> GenericDelegator
> >> > but instead of retrieving the data from a table the class would
> generate
> >> the
> >> > SQL for the report.   We would pass in entity names and conditions as
> we
> >> do
> >> > with the Delegator and this new class would generate the SQL for us.
> >> >
> >> > I can see some helper classes like SQLProcessor or GenericDAO that we
> >> could
> >> > use to help generate the SQL but wanted to know if anyone else has
> done
> >> this
> >> > before.
> >> >
> >> > Thanks in advance for your help.
> >> >
> >> >
> >> >  Brett
> >> >
> >>
> >
>

Reply via email to