Das Problem bei Kommandos mit Listenwerten (SUPGRPPRF ist ein Listenwert) ist, dass die Werte nicht in EINER Variablen verwendet werden können.
Jeder Listenwert muss in einer eigenen Variablen stehen.
Wenn jedoch die Anzahl der Listenwerte nicht bekannt ist, bzw. erst zur Laufzeit ermittelt wird, muss der gesamte Befehl in einer Variablen aufgebaut und per QCMDEXC ausgeführt werden.

Zu deinem 2. Problem habe ich auch noch nichts gehört.