Anmelden

View Full Version : Nachricht aus Batch-Job



PeterKarsten
16-03-13, 19:09
Kann mir jemand helfen ? Ich will aus einem Batch-Job (Nachtjob) also wenn keine Sitzungen und User aktiv sind, eine Nachricht generieren, die bestimmten Benutzern morgens beim Anmelden angezeigt werden. Schaffs aber nicht.

Fuerchau
17-03-13, 13:52
Der Befehl heißt einfach SNDMSG mit Angabe der OUTQ des Users.
Beim Anmelden wird diese ja dem User zugeordnet und Nachrichten der entsprechenden Wertigkeit (meist >= 60) auch direkt angezeigt.
Sende also eine Nachricht mit der Wertigkeit >= 60!

Pikachu
18-03-13, 08:57
Probier mal mit:

SNDPGMMSG MSGID(CPF9897) MSGF(QCPFMSG) MSGDTA('Nachricht') TOUSR(Benutzer)

Im Benutzerprofil des Benutzers muß der Parameter "Zustellung" (DLVRY) außerdem auf *BREAK stehen, damit Nachrichten beim Anmelden angezeigt werden.

Fuerchau
18-03-13, 10:20
Default wird bei der Anmeldung ein "CHGMSGQ ... DLVRY(*BREAK) SEV(60)" ausgeführt.
Um also die Nachricht sofort bei der Anmeldung anzuzueigen, muss die Bewertung mindestens 60 sein.
Da dies auf der MSGID selber definiert wird und nicht beim Senden angegeben werden kann, muss also eine MSGID erstellt werden, deren Bewertung mindestns 60 ist!
CPF9897 und CPF9898 haben aber nur 40 und das würde ich auch nicht ändern.

Definiere also eine eigene MSGID mit Bewertung >= 60!

PeterKarsten
18-03-13, 10:46
So einfach kann es sein. Da wäre ich jetzt nicht drauf gekommen. Also besten Dank ans Forum. Peter

EFueloep
18-03-13, 20:00
Default wird bei der Anmeldung ein "CHGMSGQ ... DLVRY(*BREAK) SEV(60)" ausgeführt.
...Sorry, aber dies ist mir völlig unbekannt. Wenn ich einfach einen neuen User mit CRTUSRPRF ohne speziellem Startpgm erstelle dann wird dies nicht so gesetzt.
Der Default ist DLVRY(*NOTIFY) SEV(0).
Natürlich kann ich dies beim CRTUSRPRF ändern.
Aber wo (oder seit wann?) gibt es den Default von DLVRY(*BREAK) SEV(60)?

Ich habe dies kurz mal mit V5R4, V6R1 und V7R1 ausprobiert.
Nirgends wird als Default etwas anderes als DLVRY(*NOTIFY) SEV(0) gesetzt.
Ich kenne auch nichts anderes.

Woher soll also der geänderte Wert von DLVRY(*BREAK) SEV(60) herkommen?

Fuerchau
19-03-13, 08:55
Vielleicht daher, dass ich diese Einstellung als "Default" eben automatisch festlege :).

EFueloep
19-03-13, 10:11
Verstehe :)

Aber dieser Default gilt dann wohl nicht unbedingt auch für den Themenstarter.