brizola727 20 de jun. de 2016 1 like
Senhores consegui resolver. Para quem interessar:
penultimo
select = session .select ( tbMaintRepProd ) ;
select .where ( WhereConditions .equal ( tbMaintRepProd .prodIdentifierCode , bean .getProdIdentifierCode ())) ;
select .orderBy ( Ordenation .desc ( tbMaintRepProd .dateCreation )) ;;
size = select .getCollection () .size () ;
if ( size > 1 ) {
for ( Row row1 : select .getCollection ()) {
bean = row1 .getBean ( tbMaintRepProd ) ;
if ( bean .getDateCreation () .before ( dateCreation ) && ! rmaReturn .equals ( bean .getMaintenanceReportCode ())) {
rmaReturn = bean .getMaintenanceReportCode () ;
break ;
}
}
}
antepenultimo
select = session .select ( tbMaintRepProd ) ;
select .where ( WhereConditions .equal ( tbMaintRepProd .prodIdentifierCode , bean .getProdIdentifierCode ())) ;
select .orderBy ( Ordenation .desc ( tbMaintRepProd .dateCreation )) ;;
size = select .getCollection () .size () ;
if ( size > 1 ) {
for ( Row row1 : select .getCollection ()) {
bean = row1 .getBean ( tbMaintRepProd ) ;
if ( bean .getDateCreation () .before ( dateCreation ) && ! rmaReturn .equals ( bean .getMaintenanceReportCode ()) && count == 0 ) {
count ++ ;
}else if ( bean .getDateCreation () .before ( dateCreation ) && ! rmaReturn .equals ( bean .getMaintenanceReportCode ()) && count == 1 ) {
rmaReturn = bean .getMaintenanceReportCode () ;
count ++ ;
break ;
}
}
}
vlw!
Fabianoabreualves 24 de jun. de 2016
Olá, Marco.
Com sql, você poderia resolver desta forma:
select * from [tabela] order by [campo] desc limit 1,2;
Abraços.
brizola727 11 de jul. de 2016
Hum bacana obrigado pela resposta!
Eu fiz do jeito que coloquei acima e deu certo…
Mas mesmo assim agradeço sua ajuda!