@Birgitta:

Serviceprogramme werden garnicht aufgerufen. Was aufgerufen wird, sind Procedures (die in SRVPGMs enthalten sein können) und das geht nur mit CALLB oder CALLP (das beim Compile über den EXTPROC Eintrag im Prototyp in ein CALLB umgesetzt wird).

Neben SRVPGMs, die man nie mit reclaim bearbeiten braucht, gibt es noch die Variante mit eigener Activation Group beim SRVPGM, wenn man eine eigene Commit Scope haben will.

Bei Activation Group *CALLER eines SRVPGMS kann es durchaus zu Mehrfach Aktivierungen kommen, wenn Procedures des SRVPGMs aus Programmen oder anderen Service Programmen referenziert werden, die in unterschiedlichen Aktivierungsgruppen laufen.

Dieter

Zitat Zitat von B.Hauser
Da geht wohl einiges durcheinander:

3. Ob ein Service-Programm mit Main-Prozedur mit CALL oder CALLP aufgerufen wird, hat keinen Einfluss auf die Aktivierungs-Gruppe. (Ich bin mir nicht einmal sicher, ob der CALL ohne P überhaupt funktionniert, da nur Programme dynamisch aufgerufen werden können).

4. Es macht auch durch aus Sinn Service-Programme in einer benannten Aktivierungs-Gruppe laufen zu lassen, nämlich dann, wenn diese Prozeduren in fast jedem Programm verwendet werden, z.B. Aufbereiten von numerischen Datumswerten.

Ein Service-Program wird statisch (über Signatur) in ein Programm eingebunden, und beim ersten Programm-Aufruf (also PGMA) aktiviert. Wird das Service-Programm mehrfach aufgerufen, erfolgt keine neue Aktivierung. Wird also die Aktivierungs-Gruppe, in der das Birgitta