Source list (JSRCLST)

Where allowed to run: All environments (*ALL)
Threadsafe: No
Parameters
Examples
Error messages

Cmd JSRCLST Source list > Elenca sorgenti

Crea e riempie un file di emissione con l'elenco dei membri sorgente di una libreria o di una lista di librerie.

Sono possibili run successivi per singole librerie sullo stesso file di emissione per arricchirlo con le informazioni di altre librerie o per rinfrescare le informazioni su librerie gia' estratte.

Quando invece si estrae da una lista librerie, il file di emissione viene sempre preliminarmente pulito.

L'elenco dei membri sorgente puo' essere poi interrogato col query chiamato dal comando:

JSRCLSTQ Source list query

Data la notevole durata dell'elaborazione quando si usa una lista librerie, e' assolutamente preferibile utilizzare il comando alternativo:

JSRCLSTL Source list by library list

cappello di chiamata ciclica del comando corrente che granularizza l'elaborazione libreria per libreria. Per maggiori dettagli, esamina l'help del comando JSRCLSTL.

Tale comando alternativo permette infatti un avvio piu' rapido del lavoro perche' risolve una libreria alla volta.

Inoltre, quando si estraggono le informazioni FROMLIBL(*ALL) su tutte le librerie o FROMLIBL(*ALLUSR) su tutte le librerie utente, il comando JSRCLSTL annota la libreria in elaborazione nel testo del file di emissione permettendo in tal modo un miglior controllo dell'avanzamento.

In virtu' di tali caratteristiche, il comando JSRCLSTL, richiamato con gli stessi parametri dopo una caduta con FROMLIBL(*ALL) o FROMLIBL(*ALLUSR), e' in grado di eseguire il completamento del precedente run senza richiedere la libreria di ripartenza che viene letta invece dal testo del file di emissione.

Top

Parameters

Keyword Description Choices Notes
FROMLIB From library Name, *USRLIBL, *LIBL, *ALLUSR, *ALL, *RGZ Required, Positional 1
OUTFILE Output file Qualified object name Optional, Positional 2
Qualifier 1: Output file Name, JSRCLSTT
Qualifier 2: Library Name, 'REF.......', REFALL
CRTLIB Create out library if missing *YES, *NO Optional, Positional 3
MBROPT Add, replace or check *ADD, *REPLACE, *CHECK Optional, Positional 4
TEXT Short text of output file Character value, *SAME, *FROMLIB, *FROMLIBADD Optional, Positional 5
REFPGM Reference program for messages Name, *CPP Optional, Positional 6
RQS Sends final message request *YES, *NO Optional, Positional 7
RGZ Reorganize output file *YES, *NO Optional, Positional 8
Top

From library (FROMLIB) > Dalla libreria

Nome della libreria o della lista librerie da indagare.

Il valore e' obbligatorio.

Valori permessi:

nome-libreria
La libreria da cui estrarre l'elenco dei membri sorgente.

Valori speciali:

*USRLIBL
Le librerie da cui estrarre l'elenco dei membri sorgente sono tutte quelle presenti nella parte utente della lista librerie corrente.
*LIBL
Le librerie da cui estrarre l'elenco dei membri sorgente sono tutte quelle presenti nella lista librerie corrente.
*ALLUSR
Le librerie da cui estrarre l'elenco dei membri sorgente sono tutte le librerie utente.
*ALL
Le librerie da cui estrarre l'elenco dei membri sorgente sono tutte quelle presenti sul sistema.
*RGZ
L'unica azione svolta sul file di emissione e' la riorganizzazione. Necessaria quando si congeda il file di emissione dopo numerose aggiunte o sostituzioni di dati di singole librerie, ad esempio come passo finale nel gia' menzionato comando JSRCLSTL. Richiesto anche RGZ(*YES).
Top

Output file (OUTFILE) - name > File di emissione - nome

Nome del file fisico ricevente l'elenco dei membri sorgente.

Se la libreria di emissione manca e corre CRTLIB(*YES), la libreria viene creata.

Se il file di emissione manca, viene creato.

Se il file di emissione preesiste, tramite il level check viene controllato che si tratti di un file generato dal tool corrente.

Si nota che il nome richiesto viene usato per il file fisico di emissione; su tale fisico insiste un gruppo di logici il cui nome e' composto aggiungendo un carattere al nome del fisico di base. Per tale ragione il nome del fisico di base e' limitato a 9 caratteri.

Vengono rifiutati i nomi che iniziano con JSRCLST1, gli otto caratteri usati come nome del prototipo del file fisico di emissione.

Valori permessi:

nome-file-emissione
Il nome indicato viene usato per il file di emissione.

Valori speciali:

JSRCLSTT
Il file di emissione prende il nome di default.

Output file (OUTFILE) - library > File di emissione - libreria

Nome della libreria in cui risiede il file fisico ricevente l'elenco dei membri sorgente.

Valori permessi:

nome-libreria
Il file di emissione viene cercato o creato nella libreria richiesta.

Valori speciali:

REF......
Il file di emissione viene cercato o creato in libreria "REF......" . Questo specifico valore e' solo un promemoria per invitare all'uso di un nome che inizi con "REF" e, in realta', viene rifiutato dai controlli del command processing program.
REFALL
Nome della libreria candidata a contenere il file di emissione generato con un run FROMLIB(*ALL). Questo nome viene usato come default nel comando di interrogazione JSRCLSTQ.
Top

Create out library if missing (CRTLIB) > Crea libreria di emissione se manca

Opzione di creazione della libreria di emissione.

Valori permessi:

*YES
Crea la libreria se mancante.
*NO
Non crea la libreria mancante e, nel caso, abbandona l'esecuzione.
Top

Add, replace or check (MBROPT) > Aggiunta, sostituzione o controllo

Opzione di Aggiunta o Sostituzione totale delle informazioni. Il parametro e' usato anche per ricevere la richiesta di run di controllo degli altri parametri.

Valori permessi:

*REPLACE
Sostituisce tutte le informazioni presenti nell'elenco dei membri sorgente con le info ricavate nel run corrente. Opzione obbligatoria se richiesta una lista librerie.
*ADD
Aggiunge le info ricavate nel run corrente alle informazioni gia' presenti nell'elenco dei membri sorgente. Se una libreria viene rielaborata, le info relative alla libreria vengono sostituite.
*CHECK
Controlla gli altri parametri senza eseguire altro. Il corrente comando esegue una validazione dei propri parametri che ho ritenuto opportuno non duplicare anche nel comando facoltativo di cappello JSRCLSTL che chiama una lista librerie in maniera piu' efficace. Il valore permette di eseguire una chiamata ai controlli eseguiti dal presente comando e di condividerli con il chiamante che ne riceve i messaggi diagnostici.

Per informare il chiamante del buon esito del controllo viene paradossalmente usato un messaggio di rilascio (JSLFF01).

Top

Short text of output (TEXT) > Testo corto di emissione

Testo del file di emissione.

Valori permessi:

Testo descrittivo
Un testo a piacere da attribuire al file di Output per identificare il suo contenuto per un massimo di 42 caratteri.

Valori speciali:

*SAME - *FROMLIB - *FROMLIBADD
L'attribuzione del testo avviene valutando le condizioni qui sotto specificate nell'ordine in cui sono elencate:

Se corrono MBROPT(*REPLACE) e TEXT(*SAME), compone per il file di Output un testo di 50 caratteri riunendo la costante "SrcList:" con il contenuto del parametro FROMLIB.

Se corrono MBROPT(*ADD) e TEXT(*FROMLIBADD), accoda al testo gia' attribuito al file di Output un trattino seguito dal contenuto del parametro FROMLIB.

Se corre TEXT(*SAME), lascia inalterato il testo gia' attribuito al file di Output.

Se corre TEXT(*FROMLIB), compone per il file di Output un testo di 50 caratteri riunendo la costante "SrcList:" con il contenuto del parametro FROMLIB.

In tutti gli altri casi, compone per il file di Output un testo di 50 caratteri riunendo la costante "SrcList:" con il contenuto del parametro TEXT.

Top

Reference program for messages (REFPGM) > Programma riferimento messaggi

Nei tool complessi a piu' livelli, il presente parametro compare in tutti i comandi di interfaccia dal primo all'ultimo dei chiamati in cascata e permette di condividere il programma di riferimento al cui chiamante verranno spediti i messaggi emessi da tutti i tool coinvolti.

Il programma di riferimento e' il command processing program del tool di cappello che, direttamente o indirettamente, chiama tutti gli altri. Il cappello, dopo aver riempito con il proprio nome il parametro "programma di riferimento", lo passa anche ai tool chiamati che lo utilizzano per spedire i propri messaggi.

Valori permessi:

nome-di-un-programma-in-lista-di-chiamata
Il nome di un programma presente nella lista di chiamata del lavoro corrente.

I messaggi emessi dal programma corrente saranno indirizzati al chiamante del programma di riferimento, preferibilmete un video comandi.

Utile quando il comando corrente e' chiamato da un altro comando con il quale condivide il presente parametro.

Valori speciali:

*CPP
Il valore *CPP viene sostituito con il nome del programma corrente.

I comandi da questo chiamati (e che prevedono lo stesso parametro) faranno riferimento al programma corrente e i messaggi emessi da tali programmi saranno indirizzati al chiamante del programma corrente.

Utile quando il comando corrente e' il primo chiamante da un video comandi e a sua volta chiama altri tool condividendo il presente parametro.

*PRV
Il valore *PRV viene sostituito con il nome del programma chiamante del programma corrente.

ATTENZIONE: Il valore *PRV e' previsto solo in qualche comando di ultimo livello allo scopo di renderne comoda la chiamata in un contesto non strutturato come detto sopra. Per sapere se uno specifico comando utilizza il valore *PRV, consultare l'elenco dei valori permessi premendo F4 sul parametro REFPGM.

Top

Sends final message request (RQS) > Manda messaggio finale richiesta

Opzione di Invio/NonInvio di messaggi finali di richiesta in joblog.

Valori permessi:

*YES
Alla fine dell'esecuzione vengono spediti in joblog uno o piu' messaggi di richiesta non eseguibili ma duplicabili da video comandi o da riga comandi. Tali messaggi sono solitamente comandi pronti ad uso di indagine sul risultato elaborativo o adatti a richiamare un passo successivo dell'elaborazione
*NO
Alla fine dell'esecuzione NON viene spedito in joblog nessun messaggio di richiesta. Questa scelta evita di sporcare la joblog quando il comando viene richiamato consecutivamente molte volte, ad esempio da:

JSRCLSTL Source list by library list

Top

Reorganize output file (RGZ) > Riorganizza file emissione

Riorganizza il file di emissione.

Valori permessi:

*YES
Alla fine dell'esecuzione viene riorganizzato il file di emissione.
*NO
Alla fine dell'esecuzione NON viene riorganizzato il file di emissione. Questa scelta evita di caricare continue riorganizzazioni quando il comando viene richiamato consecutivamente molte volte, ad esempio da:

JSRCLSTL Source list by library list

Top

Esempi d'uso del comando

Esempio 1: Esegue l'estrazione dell'elenco dei membri sorgente dalla libreria NERONI1 nel file di default nella libreria REFNN1

> JSRCLST FROMLIB(NERONI1) OUTFILE(REFNN1/JSRCLSTT)
    TEXT(*FROMLIB)
  JSRCLST FROMLIB(NERONI1) OUTSRCLST(REFNN1/JSRCLSTT)
    CRTLIB(*YES) MBROPT(*ADD) TEXT(*FROMLIB)
    REFPGM(JSRCLSTC) RQS(*YES) RGZ(*YES)
  Elencati 42 src in REFNN1/JSRCLSTT da lib NERONI1.
    Totale 42
> /**/JSRCLSTQ SEARCH(' ') SRCLST(REFNN1/JSRCLSTT)

Questo comando esegue l'esame della libreria NERONI1 creando e utilizzando il file JSRCLSTT nella libreria REFNN1.

Si osservino: la loggatura del comando completo di tutti i parametri, il messaggio di esito e l'invito a interrogare il risultato. Il testo del file di emissione vale:SrcList: NERONI1

Esempio 2: Accoda l'estrazione dell'elenco dei membri sorgente dalla libreria QGPL nel file generato nell'Esempio 1

> JSRCLST FROMLIB(QGPL) OUTFILE(REFNN1/JSRCLSTT)
    MBROPT(*ADD) TEXT(*FROMLIBADD)
  JSRCLST FROMLIB(QGPL) OUTSRCLST(REFNN1/JSRCLSTT)
    CRTLIB(*YES) MBROPT(*ADD) TEXT(*FROMLIBADD)
    REFPGM(JSRCLSTC) RQS(*YES) RGZ(*YES)
  Elencati 20 src in REFNN1/JSRCLSTT da lib QGPL. Totale 62
> /**/JSRCLSTQ SEARCH(' ') SRCLST(REFNN1/JSRCLSTT)

Questo comando esegue l'esame della libreria QGPL accodando l'elenco dei membri sorgente al file JSRCLSTT nella libreria REFNN1.

Si osservino: la loggatura del comando completo di tutti i parametri, il messaggio di esito e l'invito a interrogare il risultato. Il testo del file di emissione vale ora:SrcList: NERONI1-QGPL

Esempio 3: Riesegue l'estrazione dell'elenco dei membri sorgente dalla libreria NERONI1 nel file ottenuto in precedenza dai comandi eseguiti nell'Esempio 1 e nell'Esempio 2

> JSRCLST FROMLIB(NERONI1) OUTFILE(REFNN1/JSRCLSTT)
  JSRCLST FROMLIB(NERONI1) OUTSRCLST(REFNN1/JSRCLSTT)
    CRTLIB(*YES) MBROPT(*ADD) TEXT(*SAME) REFPGM(JSRCLSTC)
    RQS(*YES) RGZ(*YES)
  Elencati 50 src in REFNN1/JSRCLSTT da lib NERONI1.
    Totale 70
> /**/JSRCLSTQ SEARCH(' ') SRCLST(REFNN1/JSRCLSTT)

Questo comando aggiorna l'elenco dei membri sorgente ottenuti nell'Esempio 1 con i dati attuali senza toccare i dati relativi alla libreria QGPL estratti nell'Esempio 2.

Si osservi la variazione del numero sorgenti di competenza della libreria NERONI1. Il testo del file di emissione resta inalterato.

Top

Messaggi informativi e di completamento

Messaggi *INFO e *COMP

JSLA001
JSRCLST FROMLIB(&1) OUTSRCLST(&2/&3) CRTLIB(&4) MBROPT(&5) TEXT(&6) REFPGM(&7) RQS(&8) RGZ(&9)
JSL0190
Elencati &4 src in &1/&2 da lib &3. Totale &5

Messaggi di errore

Messaggi *DIAG seguiti da *ESCAPE CPF0001

JSL0103
Se CRTLIB(*NO) OutLib &1 deve preesistere.
JSL0104
Non esiste la libreria da documentare &1
JSL0105
Richiesta lista librerie senza sostituzione dati
JSL0106
Promemoria "REF......." non permesso come nome libreria di emissione
JSL0107
Non e' permesso &1 come nome del file di emissione
JSL0109
File di emissione &1/&2 preesiste ma ha level check sbagliato
JSL0110
Valore FROMLIB(*RGZ) richiede obbligatoriamente RGZ(*YES)

Messaggi *DIAG NON seguiti da *ESCAPE CPF0001

JSL0108
Nella libreria da documentare &1 non esistono file fisici

Messaggi di servizio

Messaggi *ESCAPE di risposta

JSLFF01
Rilascio emesso se richiesto check e parametri ok
Top