Ich denke, dein Ansatz ist richtig. Es geht hier weniger um Designschwäche sondern um "'rumspielen" und du möchstest einige Vorschläge.

Also erster Vorschlag: Du arbeitest mit Übergabeparamter. Du definierst mit
*ENTRY eine Übergabeliste und damit übergibst du an deinem RPG die Werte die er benötigt.

Zweiter Vorschlag, du legst die Werte in einer *DTAARA und liest zur Laufzeit die *DTAARA mit *NAMVAR und danach IN zur Laufzeit. Änderungen an der *DTAARA werden, werden mit CHGDTAARA durchgeführt.

Dein Vorschlag, das ganze in einer Datei. Ist grundsätzlich möglich, aber du musst die Daten in der Datei auch pflegen, oder ?
Dafür brauchst du ein Pflegeprogramm (mußt es schreiben) oder du pflegst mit STRDFU (Standard) oder du pflegst mit SQL-Update.

Wie gesagt, es gibt viele Möglichkeiten zur Lösung. Die Frage ist immer diesselbe: Wieviel Aufwand will ich 'reinstecken??
Gruß
DVE