Pular para o conteúdo
#107500
Marco Borges
Participante

    RESOLVIDO

    v_posIni :=
               case 
                 when (nvl(length(trim(REGEXP_SUBSTR(v_divbem,'[^|]*,',1,4))),0) <= 2) then
                     case 
                        when (nvl(length(trim(REGEXP_SUBSTR(v_divbem,'[^|]*,',1,4))),0) = 0) then 
                          INSTR(v_divbem,'|',1,3)
                        else
                          INSTR(v_divbem,trim(REGEXP_SUBSTR(v_divbem,'[^|]*,',1,4)),1,1) end 
                 when length(trim(REGEXP_SUBSTR(v_divbem,'[^|]*,',1,3))) <= 2 then
                     case 
                        when (nvl(length(trim(REGEXP_SUBSTR(v_divbem,'[^|]*,',1,3))),0) = 0) then 
                          INSTR(v_divbem,'|',1,2)
                        else
                          INSTR(v_divbem,trim(REGEXP_SUBSTR(v_divbem,'[^|]*,',1,3)),1,1) end 
    
                 when length(trim(REGEXP_SUBSTR(v_divbem,'[^|]*,',1,2))) <= 2 then
                      case 
                        when (nvl(length(trim(REGEXP_SUBSTR(v_divbem,'[^|]*,',1,2))),0) = 0) then 
                          INSTR(v_divbem,'|',1,1)
                        else
                          INSTR(v_divbem,trim(REGEXP_SUBSTR(v_divbem,'[^|]*,',1,2)),1,1) end 
                 when length(trim(REGEXP_SUBSTR(v_divbem,'[^|]*,'))) <= 2 then
                      case 
                        when (nvl(length(trim(REGEXP_SUBSTR(v_divbem,'[^|]*,'))),0) = 0) then 
                          INSTR(v_divbem,'|',1,1)
                        else
                          INSTR(v_divbem,trim(REGEXP_SUBSTR(v_divbem,'[^|]*,')),1,1) end 
                 else 
                      0 
               end;