[NEWSboard IBMi Forum]
Seite 1 von 2 1 2 Letzte
  1. #1
    Registriert seit
    Aug 2001
    Beiträge
    309

    prüfen ob Job schon läuft

    guten morgen *all

    kennt jemand eine Möglichkeit, zu prüfen, ob ein bestimmter Job schon läuft!

    Erklärung:
    ich habe ein Programm (sagen wir mal PgmA), welches von einem anderen Pgm. an die JobQ "QBATCH" übergeben wird.
    Hier kommt es vor, dass in dieser OutQ schon andere Job's (die nicht's mit diesem zu tun haben => "FIFO") stehen, bzw. noch laufen.
    Es kann jetzt sein, dass genau dieses PgmA noch mal an eine andere JobQ z.B. "QBACHT2"übergeben wird.

    meine Frage:
    ist es möglich zu Beginn dieses Pgm's zu prüfen (API, CMD, etc.), ob schon ein PgmA läuft?

  2. #2
    Registriert seit
    Mar 2005
    Beiträge
    74
    Über die API QUSRJOBI lässt sich das ermitteln.

  3. #3
    Registriert seit
    Aug 2003
    Beiträge
    1.508

  4. #4
    Registriert seit
    Mar 2002
    Beiträge
    5.287
    ... das ist beides nicht Wasserdicht (da könnten 2 gerade am prüfen sein und legen dann beide los). Sowas regelt man über Sperrobjekte oder Satzsperren in einer Datenbank, man holt sich dann als erstes eine Sperre, die dann bei Jobende verschwindet, oder vorher freigegeben werden kann.

    D*B
    AS400 Freeware
    http://www.bender-dv.de
    Mit embedded SQL in RPG auf Datenbanken von ADABAS bis XBASE zugreifen
    http://sourceforge.net/projects/appserver4rpg/

  5. #5
    Registriert seit
    Feb 2001
    Beiträge
    20.241
    Was aber das Problem nicht löst, wenn der 1. Job in der JOBQ noch wartet.
    Hier könnte der Job sich selber prüfen.
    Sobald die von Dieter erwähnte Sperre aktiv ist, kann der 2. Job sich ja sofort wieder beenden, wenn eine gleichzeitige Verarbeitung nicht erlaubt ist.
    So wird zwar ggf. zuviel submitted, aber was macht das schon.
    Laufen die Jobs nämlich hintereinander, merkt's sowieso keiner.
    Doppelte Verarbeitung verhindert man ggf. über Satzflags oder Existenzprüfung des Ergebnisses.
    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
    Mar 2002
    Beiträge
    5.287
    ... die aber nicht zum prüfen gegen doppelte Ausführung herangezogen werden dürfen, da sie erst bei erfolgreichem Ende gesetzt werden dürfen, sonst verhungert der ganze Kram, wenn ein Job abbricht.

    D*B

    Zitat Zitat von Fuerchau Beitrag anzeigen
    Doppelte Verarbeitung verhindert man ggf. über Satzflags oder Existenzprüfung des Ergebnisses.
    AS400 Freeware
    http://www.bender-dv.de
    Mit embedded SQL in RPG auf Datenbanken von ADABAS bis XBASE zugreifen
    http://sourceforge.net/projects/appserver4rpg/

  7. #7
    Registriert seit
    Aug 2001
    Beiträge
    309
    mit diesem Programm PgmA werden bestimmte Daten per FTP an einen externen FTP-Server übertragen.

    Mein Problem ist hier:
    die FTP-Befehle schreibe ich in ein und die selbe Datenbank!

    es kommt jetzt von Zeit zu Zeit vor, dass, falls der Job in "QBATCH" noch steht und der Job in "QBATCH2" schon läuft, die Daten in der FTP-Protokolldatei für den Job in "QBATCH" nicht mehr stimmen. :-(

  8. #8
    Registriert seit
    Feb 2001
    Beiträge
    20.241
    Dann würde ich die Scriptdatei in die QTEMP kopieren, per OVRDBF auf die QTEMP verweisen und dann den FTP starten.
    Dann benötigst du keine Sperren, es sei denn, es soll die selbe Datei übertragen werden.

    Alternativ kannst du auch eine FTP-JOBQUEUE anlegen, einem Subsystem zuweisen und per JOBD ansteuern um sicherzustellen, dass die FTP-Jobs nur nacheinander laufen.
    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

  9. #9
    Registriert seit
    Aug 2001
    Beiträge
    309
    Jobs in JobQ und QTEMP funktioniert das?

  10. #10
    Registriert seit
    Feb 2001
    Beiträge
    20.241
    Diese Frage verstehe ich nun gar nicht.
    Was hat eine JOBQ mit QTEMP zu tun ?

    Du erstellst eine JOBQ mit CRTJOBQ.
    Per ADDJOBQE ordnest du diese einem Subsystem zu.
    Per CRTJOBD erstellst du eine JOBD, die du wiederum obiger JOBQ zuordnest.

    Beim SBMJOB für deine FTP's gibst du dann diese JOBD mit.

    Die QTEMP betrifft nur deine STDIN/STDOUT für den FTP.
    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

  11. #11
    Registriert seit
    Aug 2001
    Beiträge
    309
    sorry,

    hast natürlich recht.
    vergiss die letzte Frage von mir einfach
    (war wohl mit meinen Gedanken mom. wo anders) :-(

  12. #12
    Registriert seit
    Aug 2001
    Beiträge
    309
    hab grad mal so wegen JobQ's (zum Testen, etc.) geschaut!

    (hat zwar nicht's mit dem eigentlichen Thema zu tun, interessiert mich aber trotzdem)

    haben hier auf unserem System eine JobQ mit Namen "QNIGHT" die aber nirgends (außer mit dem Befehl wrkobj) auftaucht!

    (ist auch nicht eingens von erstellt sonder mit User "QSYS")

    was hat es mit der auf sich?

Similar Threads

  1. Prüfen, ob PROGRAMM in Benutzung ist
    By JIM in forum NEWSboard Programmierung
    Antworten: 10
    Letzter Beitrag: 28-10-09, 09:01
  2. Prüfen, ob es für einen Job bereits Spools gibt.
    By hwalk in forum NEWSboard Programmierung
    Antworten: 5
    Letzter Beitrag: 09-02-09, 17:42
  3. Prüfen ob DataQ gelesen wird
    By jc_denton in forum NEWSboard Programmierung
    Antworten: 1
    Letzter Beitrag: 26-09-08, 14:42
  4. auf aktiven Job prüfen
    By TARASIK in forum IBM i Hauptforum
    Antworten: 1
    Letzter Beitrag: 26-10-06, 11:07
  5. TCP/IP FTP prüfen ob Rechner an ist
    By malzusrex in forum IBM i Hauptforum
    Antworten: 3
    Letzter Beitrag: 23-07-02, 10:07

Berechtigungen

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