Die allgemeingültige Variante (im obigen Link beschrieben) ist:

%DEC(Feld:%size(Feld):%decpos(Feld))

mit Monitor. Dasselbe gilt auch bei "eval testfeld = feld", wobei man "eval" auch weg lassen kann.
Letzteres ist das am schnellsten zu kodierende.
Der Nachteil ist halt, dass jedes Feld einzeln in eine Monitorgroup gepackt werden muss.

Dies wirkt auf zoned genauso wie auf packed. %size() gibt die Anzahl Stellen, %decpos() die Anzahl Nachkomma. Da %dec() ja nicht dynamisch ist, die Werte also konstan sein müssen, muss man hald jedes Feld prüfen.
TESTN funktioniert ja weiterin als fixed Anweisung. Man kann in Fullyfree durchaus mal ohne Aufwand eine C-Anweisung einschieben.
TESTN hält allerdings bei Zoned das "Ü" (x'D0' - x'D9') auf der rechten Seite für N-negativ.