Reference. Help (JREF)

Where allowed to run: All environments (*ALL)
Threadsafe: No

Cmd JREF Reference. Help > Riferimenti. Aiuto

http://www.neroni.it/NERONI2/JREF.NERONI2.HTML

Testo d'aiuto per la procedura di esplorazione delle chiamate tra programmi tramite l'uso dei riferimenti ricavabili dai programmi e dai file.

Scopo della procedura

1)Costruire preliminarmente un database di documentazione unificato di programmi e file.

2)A partire da un programma a richiesta, documentare tutte le chiamate che questo esegue ad altri programmi e a file andando in cascata ed elencando programmi, file e aree dati man mano raggiunti.

3)A partire da un programma, un file o un'area dati a richiesta, documentare tutti i chiamanti che lo utilizzano andando in risalita ed elencando file e programmi man mano raggiunti.

Descrizione dell'algoritmo di esplorazione

La procedura nasce grazie all'applicazione degli algoritmi tipici della programmazione in ambito aziende di produzione riguardo alle distinte base. L'esplosione elenca i semilavorati che compongono il prodotto finito e per ogni semilavorato gli assiemi fino a raggiungere tutti i componenti elementari.

L'algoritmo di esplosione utilizza per ogni padre (programma chiamante) tanti record di collegamento quanti sono i figli (programmi e file chiamati). L'algoritmo percorre l'elenco dei figli trattando ciascun figlio come un padre di altri figli. Ogni volta che un figlio e' anche padre, si passa a sviluppare il nuovo elenco di figli. Ogni volta che un figlio non ha figli suoi, l'algoritmo ritorna a sviluppare il livello precedentemente interrotto grazie al mantenimento dinamico di una lista di chiamata che annota per ogni livello sospeso il nome del padre e il progressivo della lista di sviluppo dell'elenco dei figli.

L'algoritmo di implosione e' derivato da quello di esplosione mediante il semplice rovesciamento delle funzioni svolte da padre e figli.

L'algoritmo inciampa in una tipologia di collegamento che deriva dai programmi che ne chiamano altri facendo uso non di nomi cablati ma di variabili di programma. Il problema si presenta soprattutto per i programmi di servizio e i tool che usano variabili per indirizzare solitamente i file. In questo caso il Display Program Reference produce un collegamento non al programma ma alla variabile del programma che non puo' quindi essere percorso durante l'esplosione.

Per superare questa difficolta' occorrerebbe aggiungere manualmente dei collegamenti uguali a quelli impercorribili sostituendo la variabile con i suoi valori possibili, tanti collegamenti quanti i valori possibili. Se necessario si potra' provvedere una integrazione in tal senso.

Elenco dei comandi della procedura

Note: Collegamenti ai testi d'aiuto dei comandi qui

Il corrente comando JREF (Reference. Help) visualizza il corrente testo di aiuto.

Il comando JREFDBF(Reference database)

http://www.neroni.it/NERONI2/JREFDBF.NERONI2.HTML costruisce preliminarmente il file dei collegamenti padre-figli JREFDBF9 sul quale lavorano poi i comandi di esplosione e implosione. Il comando va eseguito periodicamente per evitare di usare informazioni che non tengano conto di nuovi programmi o di nuove versioni di vecchi programmi.

Il comando JREFEXP(Reference explode)

http://www.neroni.it/NERONI2/JREFEXP.NERONI2.HTML esplode un singolo programma dell'ambiente sul quale e' stato costruito il database di riferimento. Genera una stampa parametrica e un file di emissione.

Il comando JREFIMP(Reference implode)

http://www.neroni.it/NERONI2/JREFIMP.NERONI2.HTML implode un singolo programma, file o area dati dell'ambiente sul quale e' stato costruito il database di riferimento. Genera, per ora, solo una stampa parametrica.