Anmelden

View Full Version : Welche User verwenden ein Programm



tierock
27-04-18, 10:21
Hallo zusammen,

wir verwalten unsere Programmaufrufe in teilweise sehr verschachtelten CL-Menüs. Wie kann ich herausfinden, welche User auf ein bestimmtes Pgm Zugriff haben?

Danke für jeden Hinweis.

Flappes
27-04-18, 10:51
Hallo,

Wenn es ein Dialogprogramm ist, per
WRKOBJLCK "DSPF-Name" *FILE

Bei Batchprogrammen oder gar Web-Serviceprogrammen, bei denen der Job auch im System schwer zu finden ist, kann man eine Dummy-PRTF erstellen, und diese im Programm verwenden.
Dies ist für die ganzen Server-Jobs extrem nützlich.

tierock
27-04-18, 11:00
Danke für die Info, ich habe mich aber wohl falsch ausgedrückt.

Ich meine nicht, wer AKTUELL ein Pgm im Zugriff hat, sondern wer grundsätzlich aufgrund seines Start-Programms und der nachfolgenden CL-Menüs ein Programm aufrufen könnte.

BenderD
27-04-18, 12:07
... das lässt sich nur aus den Quellen der Menü-Programme raus analysieren, in denen man auch sieht, ob da externe Konfigurationen eine Rolle spielen.

D*B

GeorgG
27-04-18, 15:57
wenn es keine ile quellen sind, könntest du dictionary database (dicdb) verwenden.
Liefert die verwendeten Dateien, PGM Aufrufe etc. auf.

Gruss
Georg

Fuerchau
27-04-18, 17:23
Schau einfach mal nach DSPPGMREF, da werden die Call-Bezüge doch ausgegeben.
Wenn also ein User PGM A aufruft, dass B aufruft, ist die Wahrscheinlichkeit eben hoch, dass dies auch passiert.
Das Startprogramm ist ja bekannt. Wenn es ein altes CL-Menü ist ist, liefert das u.U. DSPPGMREF, ansonsten sollte der Startname doch in einer Menüverwaltungsdatei stehen.
Somit lässt sich DSPGMREF in eine Outfile ausgeben und dann aus der Menüdatei per rekursivem CTE ganze Aufrufbäume entwickeln.
Stehen die Call-Anweisung ein einer MSGF, so lässt diese sich ja auch in einen Spool und somit letztlich in eine PF ausgeben.

tierock
01-05-18, 09:50
Danke für alle Hinweise.
Da es sich um alte CL-Menüs handelt, hat das mit DSPPGMREF gut funktioniert. Leider habe ich noch nie mit rCTE's gearbeitet, um diese Outfile auswerten zu können. Die Google Suche hat mich nicht weiter gebracht. Hat evtl. jemand ein Beispiel?
Ich müsste das Programmobjekt angeben und als Ergebnis alle obersten Aufruf-CLs bekommen, die ich wiederum mit dem Startprogramm aller USRPRFs abgleichen müsste?! Letzteres auch als Outlfile über DSPUSRPRF.