Wie wäre es mit RegEx per SQL?
Da kannst du dann entsprechende Ausdrücke verwenden:

^[a-zA-Z ]{5}\d*$

Wert muss mit 5 Alpah oder blank anfangen und muss bis zum Ende Ziffern enthalten.
Wenn die Prüfung keinen Match enthält, ist dann halt führende Blanks einzufühgen.

Somit per SQL:
dcl-s Match varchar(100);
dcl-s Check varchar(100);

exec sql set : Match = regexp_substr(:check, '^[a-zA-Z ]{5}\d*$');
if Match = *blank;
Check = '_____' + Check; // _ = Blank