select C1BCT as sortorder, trim(C1Y56CH01), trim(C1Y56CH02), trim(C1Y56CH03), trim(C1Y56CH04), trim(C1Y56CH08)
, trim(C1Y56CS09), trim(C1Y56CS03), trim(C1Y56CS04), trim(C1Y56CS05), trim(C1Y56CS06)
, trim(C1Y56CS07), trim(C1Y56CS08), trim(C1Y56CS10), trim(C1Y56CS11), trim(C1Y56CS12)
, trim(C1Y56CS13), trim(C1Y56CS15), trim(C1Y56CD05), trim(C1Y56CD13), trim(C1Y56CD04)
, trim(C1Y56CD14), trim(C1Y56CD06), trim(C1Y56CD11), trim(C1Y56CD07), trim(C1Y56CD10)
, trim(C1Y56CD12), C1BCT
from CRPDTA.F56055C1 A
where C1Y55ELM01 = 'REP_ABSO'
and (trim(C1Y55ELM03) is null or trim(C1Y55ELM03) in ('EDITED'))
and C1ICU = (select MAX(C1ICU) from CRPDTA.F56055C1)
union
select C1BCT+iteration.rn+1 as sortorder, trim(C1Y56CH01), trim(C1Y56CH02), trim(C1Y56CH03), trim(C1Y56CH04), trim(C1Y56CH08)
, trim(C1Y56CS09), trim(C1Y56CS03), trim(C1Y56CS04), trim(C1Y56CS05), trim(C1Y56CS06)
, trim(C1Y56CS07), trim(C1Y56CS08), trim(C1Y56CS10), trim(C1Y56CS11), trim(C1Y56CS12)
, trim(C1Y56CS13), trim(C1Y56CS15), trim(C1Y56CD05), trim(C1Y56CD13), trim(C1Y56CD04)
, trim(C1Y56CD14), trim(C1Y56CD06), trim(C1Y56CD11), trim(C1Y56CD07), trim(C1Y56CD10)
, trim(C1Y56CD12), C1BCT
from CRPDTA.F56055C1 r_outer, ( select rownum rn
from dual connect by level < ( select count(*)
from ( select C1BCT, trim(C1Y56CH01)
from CRPDTA.F56055C1 A
where C1Y55ELM01 = 'REP_ABSO'
and (trim(C1Y55ELM03) is null or trim(C1Y55ELM03) in ('EDITED'))
and C1ICU = (select MAX(C1ICU) from CRPDTA.F56055C1)
) t1)
) iteration
where C1Y55ELM01 = 'REP_ABSO'
and (trim(C1Y55ELM03) is null or trim(C1Y55ELM03) in ('EDITED'))
and C1ICU = (select MAX(C1ICU) from CRPDTA.F56055C1)
and trim(C1Y56CH01)='B'
and ( select count(C1Y56CH01)
from ( select C1BCT, C1Y56CH01
from CRPDTA.F56055C1 A
where C1Y55ELM01 = 'REP_ABSO'
and (trim(C1Y55ELM03) is null or trim(C1Y55ELM03) in ('EDITED'))
and C1ICU = (select MAX(C1ICU) from CRPDTA.F56055C1)) r_inner
where trim(r_inner.C1Y56CH01)='D'
and r_inner.C1BCT>r_outer.C1BCT
and r_inner.C1BCT<( select nvl(MIN(C1BCT), 99999999) as mincolindex
from ( select C1BCT, C1Y56CH01
from CRPDTA.F56055C1 A
where C1Y55ELM01 = 'REP_ABSO'
and (trim(C1Y55ELM03) is null or trim(C1Y55ELM03) in ('EDITED'))
and C1ICU = (select MAX(C1ICU) from CRPDTA.F56055C1)) t1 r_min
where trim(r_min.C1Y56CH01)='B'
and r_min.C1BCT>r_outer.C1BCT))>iteration.rn
order
by sortorder