Na das nenne ich ja mal eine übertriebene Sicherheit:

c dow %subst(TEXT:1:1)='0'
c if %subst(TEXT:1:1)='0'
c eval %subst(TEXT:1:1)=' '
c eval TEXT = %trim(TEXT)
c endif
c enddo

Im DOW wird ja bereits geprüft und warum soll ich was ersetzen, wenn ich es anschließend wieder wegschmeiße ?

Der %EDITC ist da schon eher ein Ansatz, vervollständigt könnte das dann so aussehen:

text = %char(%dec(TEXT:4:0)); // linksbündig

evalr text = %char(%dec(TEXT:4:0)); // rechtsbündig