The CASE statement should be used only to clearly define some new branches in the control flow. As soon as a WHEN clause
contains too many statements this highly decreases the readability of the overall control flow statement. In such case, the content of
WHEN clause should be extracted in a dedicated function.
Noncompliant code example
CASE my_variable
  WHEN 0 THEN -- 6 lines till next WHEN
    procedure1;
    procedure2;
    procedure3;
    procedure4;
    procedure5;
  WHEN 1 THEN
-- ...
END CASE;
Compliant solution
DECLARE
  PROCEDURE do_something AS
  BEGIN
    procedure1;
    procedure2;
    procedure3;
    procedure4;
    procedure5;
  END;
BEGIN
  CASE my_variable
    WHEN 0 THEN
      do_something;
    WHEN 1 THEN
-- ...
  END CASE;
END;
/