neroni.it 

Job

Aggiornato: 13-03-2015      Home  

24-09-2006 --> JACT: Job is active?   

Il lavoro e' attivo? Dato il nome di un lavoro (solo il nome), risponde se attivo o no. Stampa il WRKACTJOB e lo rilegge. Non usa API.

Se si dispone di JobName, JobUserName e JobNumber non serve una utility ma basta un

CHGJOB JOB(JobNumber/JobUser/JobName) SWS(XXXXXXXX)

Riporto un'utility trovata sul web che fa la stessa cosa tramite api:

Check Active Job, by Richard Cranston trascritta alla mia maniera in 17-02-2009 --> JAC2: Check Active Job 2

E un'altra, che fa anche cose piu' complesse:

Check Active Job, by Vengoal Chang trascritta in 17-02-2009 --> JAC1: Check Active Job 1

11-07-2014 --> JRJA: Retrieve job activity   

E alla fine, per comodita' l'ho scritto e usato.

17-02-2009 --> JWUJ: Work User Jobs Outfile   

File di emissione per l'elenco dei lavori utente.

Vista la mancanza di outfile nel comando WRKUSRJOB (Work User Jobs) e non volendo come in passato restare legato alla intercettazione ed interpretazione delle stampe ottenibili dal comando, troppo variabili al variare di release e lingua, ho costruito un file di scarico tramite l'api QUSLJOB (List Job), data per equivalente al comando stesso.

L'api utilizzata e' di particolare chiarezza e semplicita'. Purtroppo pero' richiede l'autorita' *JOBCTL per recuperare le caratteristiche dei job. Senza quella, la lista dei lavori manca proprio delle informazioni per le quali l'utility nasce. Male si presta quindi in contesti troppo protetti, dove il programmatore non e' il deus ex machina del sistema. Ho percio' realizzato la successiva utility JWAJ (Work Active Job Outfile), che non necessita di tale autorita'.

JWUJ fa uso di JCPYCLR (Copy Clear).

12-09-2014 Sto su sistemi che portano tanti job da sfondare la misura dello user space di lavoro dell'api di recupero delle informazioni. Troppo oneroso cercare un rimedio, ho intercettato pero' meglio l'errore che si presenta. Questo rinforza la mia stima per le tecniche a base di api.

22-02-2009 --> JWAJ: Work Active Job Outfile   

File di emissione per l'elenco dei lavori attivi.

Valgono le stesse considerazioni fatte per la precedente JWUJ (Work User Job Outfile), solo che il comando scimmiottato e' il WRKACTJOB (Work Active Jobs) e l'api utilizzata e' QGYOLJOB (Open List of Jobs).

Scopiazzata andando di forbici e poi di martello su un'utility complessa ed ermetica nella quale l'autore tenta di convincere gli gnari a far video coi panel group, per maggiore chiarezza. Bella, bella, bella, bella, bella, bella...

Work with Job Queue Jobs (WRKJOBQJOB), by Carsten Flensburg trascritto alla mia maniera in 22-02-2009 --> JWJQJ: Work with Job Queue Jobs

Un altro esempio che ho consultato:

Finds interactive CPU hogs and notifies caller, by Carsten Flensburg trascritto alla mia maniera in 22-02-2009 --> JWIATS: Who Is Abusing The System?

Ne faro' uso al piu' presto in JACT (Job is active?) e l'ho usata in JBRKACT (Break Active Jobs).

Mi piace l'idea di avere per i comandi di esplorazione del sistema quegli outfile che ci sono stati negati da quando la pattuglia dei primi sviluppatori del software di base e' andata in pensione e la seconda generazione ha perso la fede nell'interfaccia unica e nelle descrizioni esterne, primi e principali motivi del successo del 38/400.

JWAJ fa uso di JCPYCLR (Copy Clear).

23-02-2009 Parametrizzati con nomi generici lavori e utenti.

13-03-2015 Invece di riscrivere JACT, ne ho fatta una versione basata su JWAJ e l'ho chiamata JWAJQ (Work Active Jobs Query).
Mentre JACT permette di cercare un solo nome di job, JWAJQ permette un nome di job generico e anche un nome di utente generico.
Migliora cosi' la base tecnica e l'usabilita' della nuova utility rispetto alla vecchia.
Per verificare la fuzionalita' del programma, ho fatto la solita versione interattiva del comando che restituisce un messaggio invece che un parametro: JWAJQI (Work Active Jobs Query Interactive).

17-07-2015 --> JRLSJOB: Releases Jobs   

Rilascia tutti i lavori in coda dell'utente richiesto.

Il collega Marco Carletti ha inserito in una procedura complessa e poco maneggevole un mazzo di sottomissioni di job congelati che vanno rilasciati tutti insieme tardivamente.
Per eseguire il rilascio di tutti i lavori dell'utente richiesto ho creato questo utilizzo dell'outfile di JWUJ, già scritto in precedenza.
Una parametrizzazione piu' complessa per la scelta dei job da rilasciare non mi e' stata richiesta, e io non l'ho scritta.

JRLSJOB fa uso di JWUJ (Work User Jobs Outfile).