hi luis,

could you please provide the generated sql ?

jakob

Luis Tiago wrote:

Hi,
I'm having problems doing report queries.
The results are not what I expect. I do not know what I'm doing wrong!

Exemple: I have these records in database, table movements

MOVEMENTID | USERID | COPYID | SIRIUSID 2.361 3.682 1.350 8 2.362 3.682 1.351 11 2.381 3.682 1.351 11 2.421 4.402 1.370 958447 2.441 4.402 1.370 958447

I want to execute the follow SQL statement:
        select siriusid, count(*) from movements group by siriusid order by count(*) 
desc

wich produces the follow results

SIRIUSID | EXPRESSION1 11 2 958447 2 8 1



Ok! now using reportQueries like the OJB tutorial says:

.....

Criteria criteria=new Criteria()

ReportQueryByCriteria rq = QueryFactory.newReportQuery(Movements.class, criteria);

rq.setColumns(new String[] { "siriusId", "count(siriusId)" });

rq.addGroupBy("siriusId");

rq.addOrderByDescending("count(siriusId)");

Iterator it = broker.getReportQueryIteratorByQuery(rq);

while (it.hasNext()) {

Object[] data = (Object[]) it.next();

String siriusId = new String("" + data[0]);

Integer total = new Integer("" + data[1]);

top.put(siriusId, total); //hastable

}

....

wich produces this result:

siriusId | count(siriusId)

11 | 2

8 | 1

958447 | 2

this result is not in order, it seems that this statement is not working < rq.addOrderByDescending("count(siriusId)") >

And if I change the collums order < rq.setColumns(new String[] { "count(siriusId)", "siriusId" });>

the results are:

siriusId | count(siriusId)

958447 | 2

8 | 1

Strange??? What I'm doing wrong???

If anyone could help me I would be thankfull.

Where can I find more complex tutorials and examples using ReportQueries!



THANKS

Tiago Rico



--------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]



Reply via email to