Zitat Zitat von AG1965_2 Beitrag anzeigen
Stimmt; Dieters Methode ist sehr praktisch. Man kann sich da das Serviceprogramm im Speicher wie die Instanz einer Java-Klasse vorstellen und mit Gettern und Settern Variablen, die man sonst bei jedem Aufruf übergeben müsste, nur einmal setzen. Die sitzen im Speicher des Serviceprogramms. Ich hab' halt nur eine "Instanz", aber das reicht mir für meine Zwecke auch völlig.
Z.B. habe ich bei unserem XML-Modul die Notwendigkeit, 4 Keyfelder zu kennen, die setze ich mit einem SetKey(Feld1,Feld2,Feld3,Feld4). Das verringert die Anzahl der Parameter bei den restlichen Funktionen deutlich und macht die Programme viel lesbarer.
... sowas ähnliches wie Mehrfach Aktivierungen bekommt man, wenn man alle globalen (statefull) Variablen in eine Datenstruktur legt (ich nenne die this) mit dim MAXINST. Dann macht man eine Procedure getHandle, die eine int zurückgibt (Constructor lässt grüßen); diese Procedure gibt dann den Index auf ein freies Element des arrays mit und muss bei jedem Aufruf als erster Parameter mitgegeben werden. Wer ein wenig damit gespielt hat, kann dann das Array auch dynamisch machen etc....

D*B