Quando precisamos de uma quebra, podes dar uma for each com break by e usar first-of/last-of para descobrir o ponto a quebra. A query possui uma sintaxe de break by também. É possível usar esse recurso diretamente num browse? Ou seja, poder fazer essas quebras diretamente no browse, usando o recurso existente na query?
o problema do break by é que ele não permite a nagegação nos itens do browse, vc até rola pra frente, mas se tentar voltar ele dá erro, vc pode usar somente BY que dai ele apresenta o browse ordenado pelo campo indicado e deixa navegar entre os registros.