[NEWSboard IBMi Forum]
  1. #1
    Registriert seit
    Jul 2006
    Beiträge
    4

    Sitzung A oder B oder ...??

    Hallo zusammen,

    wenn der Anwender sich an der AS/400 anmeldet, soll automatisch ein Programm anlaufen - aber nur auf der Sitzung A, nicht für weitere Sitzungen.
    Wie kann ich denn die Sitzung abfragen,
    geht das mit irgendeinem CL-Befehl ??

    Anette

  2. #2
    Registriert seit
    Aug 2004
    Beiträge
    923
    Zitat Zitat von Anette
    ....Wie kann ich denn die Sitzung abfragen,
    geht das mit irgendeinem CL-Befehl ??
    Hello Anette,

    ich denke, da ist Handarbeit (=Programmierung) angesagt.
    Allerdings haben solche Systeme die unangenehme Eigenschaft, z.B. bei Absturz der Session den "Zähler" nicht zurückzusetzen.
    Um das alles sauber in den Griff zu bekommen, muss man schon viel Energie reinstecken.

    k.

    Zusatz: es gab mal son Minitool IFACTUSR, müsste ich mal in mich gehen/suchen....

  3. #3
    Registriert seit
    Jun 2001
    Beiträge
    1.978
    Hi,
    Wenn ihr feste Sitzungsnamen habt kannst du doch den JOBNamen abfragen. Ein CL als Startpgm hinter den User, call EXTRAPGM nur wenn JOBNAME DSPxx oder QPADEV00xx ...
    Robi

  4. #4
    Registriert seit
    Aug 2004
    Beiträge
    923
    Sodele, ich nochmal.
    Das Tool finde ich nicht mehr, aber es gibt nen API der analog zu WRKUSRJOB arbeitet.
    Ich denke Dein Freund wäre:
    List Signed-On Users (QEZLSGNU) API

    k.

    und noch ein Zusatz:
    es gibt schon ein Listing von Scott Klement.. hier
    http://www.as400network.com/isnetfor...p?t-42596.html

    ganz nach unten scrollen...

    und formatiert dann hier:
    http://www.iseriesnetwork.com/isnetf...ad.php?t=42596


    k.

  5. #5
    Registriert seit
    Feb 2001
    Beiträge
    20.248
    Nun, es gibt da eine ganz einfache Möglichkeit.
    Für jeden Benutzér gibt es eine MSGQ in der QUSRSYS die eigentlich automatisch für Zustellung Break zugeordnet wird.
    Dies geschieht eigentlich automatisch und kann nur einmal durchgeführt werden.

    Mittels "CHGMSGQ MSGQ(AktUser) DLVRY(*BREAK)" kann dies auch per CLP durchgeführt werden.
    Bei "MONMSG CPF2451" ist dies die mindestens 2. Anmeldung.
    Der AktUser kann per RTVJOBA ermittelt werden.

    Allerdings:
    Wird dies 1. Sitzung abgemeldet und eine 3. Sitzung gestartet kann die MSGQ natürlich wieder zugeordnet werden, was ja durchaus beabsichtigt sein kann.
    Dienstleistungen? Die gibt es hier: http://www.fuerchau.de
    Das Excel-AddIn: https://www.ftsolutions.de/index.php/downloads
    BI? Da war doch noch was: http://www.ftsolutions.de

  6. #6
    Registriert seit
    Jul 2001
    Beiträge
    2.646
    Zitat Zitat von Anette
    Hallo zusammen,

    wenn der Anwender sich an der AS/400 anmeldet, soll automatisch ein Programm anlaufen - aber nur auf der Sitzung A, nicht für weitere Sitzungen.
    Hallo Anette,

    Du müsstest festlegen:

    a) soll dieser Job nur auf einer Sitzung mit einem bestimmten Namen laufen? (RTVJOBA wäre hier Dein Freund)
    b) soll dieser Job für die *erste* Sitzung des Users laufen (Handarbeit mit WRKUSRJOB OUTPUT(*PRINT) JOBTYPE(*INTERACT) oder API)
    c) soll dieser Job nur einmal am Tag laufen?
    d) ...

    -h

  7. #7
    Registriert seit
    Jul 2006
    Beiträge
    4
    Hallo,

    ich meine Variante B, der Job soll nur auf der ersten Sitzung laufen, feste Sitzungsnamen haben wir auch nicht.

    Danke für die Antworten, leider bin ich überfordert damit. Ich hab mir eingebildet, dass man mithilfe CL die Sitzung rauskriegen kann ... aber dem scheint ja nicht so zu sein. Ich werde es mit Fuerchaus Vorschlag probieren oder hat sonst noch jemand eine Idee ?

    Gruß
    Anette

  8. #8
    Registriert seit
    Jul 2001
    Beiträge
    2.646
    Zitat Zitat von Anette
    Ich hab mir eingebildet, dass man mithilfe CL die Sitzung rauskriegen kann ...
    Hallo Anette, selbst mit CL und "altmodischen" Methoden geht das...

    mal so aus dem Kopf getippt:

    PHP-Code:
    PGM                                                                
    DCLF       FILE
    (QTEMP/QPDSPSBJ)                       
    DCL        VAR(&GRAFZAHLTYPE(*DECLEN(5VALUE(0)  
    WRKUSRJOB  STATUS(*ACTIVEOUTPUT(*PRINT)
         
    JOBTYPE(*INTERACT)                       
    CPYSPLF    FILE(QPDSPSBJTOFILE(QTEMP/QPDSPSBJ) +    
                              
    SPLNBR(*LAST)                            
    DLTSPLF    FILE(QPDSPSBJSPLNBR(*LAST)               
    loopy:                                                             
    RCVF                                                  
    MONMSG     MSGID
    (CPF0864EXEC(GOTO CMDLBL(AUSIST))   
    IF         
    COND(%SST(&QPDSPSBJ 39 5) *EQ 'INTER') +   
                              
    THEN(CHGVAR VAR(&GRAFZAHL) +             
                              
    VALUE(&GRAFZAHL +1))                     
    GOTO       
    CMDLBL(LOOPY)                              
    ausist:                                                               
    IF         
    COND(&GRAFZAHL 1THEN(SNDMSG MSG('Das ist +
                              der erste Job!'
    TOUSR(*REQUESTER))         
    ENDPGM 
    Vor dem Umwandeln:

    PHP-Code:
    CRTPF QTEMP/QPDSPSBJ RCDLEN(132

Similar Threads

  1. Client Access und 2. Sitzung
    By lossin in forum IBM i Hauptforum
    Antworten: 8
    Letzter Beitrag: 10-05-06, 09:57
  2. Client Access Sitzung startet nicht mehr
    By jogisarge in forum IBM i Hauptforum
    Antworten: 6
    Letzter Beitrag: 06-03-06, 08:03
  3. Alarm in Client Access Sitzung
    By mfriedland in forum IBM i Hauptforum
    Antworten: 32
    Letzter Beitrag: 29-06-05, 09:26
  4. Remote HMC und 5250 Sitzung
    By areichelt in forum IBM i Hauptforum
    Antworten: 2
    Letzter Beitrag: 07-12-04, 14:02
  5. ISeries Access - .ws Datei - Sitzung konfigurieren
    By steinkohl in forum IBM i Hauptforum
    Antworten: 1
    Letzter Beitrag: 17-06-04, 12:44

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • You may not post attachments
  • You may not edit your posts
  •