Riceviamo e pubblichiamo ben volentieri questo “tip & trick” di Patrick Rizzi che presenta una tecnica che permette di intervenire (modificare e compilare) eventuali file video (DSPF) in uso. Sappiamo tutti che se un Display File è in uso da uno o più utenti non possiamo ricompilarlo perché risulta “bloccato”.
Con questa tecnica presentata da Patrick possiamo tranquillamente modificare e ricompilare un DSPF anche con l’applicazione aperta in running. A tutti gli effetti il programma RPG lavora con il DSPF in QTEMP e continua a lavora con la “vecchia versione” fino al suo riavvio.
Se pensiamo ad alcuni programmi usati da decine o centinaia di utenti oppure a programmi che per loro natura sono attivi tutto il giorno questa tecnica ci può essere veramente di aiuto.
Ecco i consigli di Patrick Rizzi:
Index
Quanti di voi hanno mai incontrato il fastidioso problema di un file video bloccato su IBM i, impedendo così la sua compilazione? Questo inconveniente può rallentare significativamente il processo di sviluppo e manutenzione delle applicazioni.
Una soluzione pratica e efficace consiste nell’utilizzare una combinazione di tecniche RPG e CL per gestire attivamente il ciclo di vita dei file video nella QTEMP.
Ecco come procedere:
Vantaggi di questa soluzione:
● Flessibilità: Ti permette di controllare completamente il ciclo di vita del file video.
● Efficienza: Evita blocchi e conflitti, garantendo una ricompilazione rapida e senza intoppi.
● Scalabilità: Si adatta facilmente a diversi scenari e ambienti.
Esempio di codice RPG:
dcl-pr dupdspftmp extpgm('DUPDSPFTMP');
lib char(10) const;
file char(10) const;
end-pr;
dcl-f mydspfile workstn usropn;
dupdspftmp('*LIBL':’MYDSPFILE’);
open mydspfile;
Esempio di programma CL (DUPDSPFTMP):
PGM PARM(&LIB &DSPF)
DCL VAR(&LIB) TYPE(*CHAR) LEN(10)
DCL VAR(&dspf) TYPE(*CHAR) LEN(10)
DLTOBJ OBJ(QTEMP/&DSPF) OBJTYPE(*FILE)
MONMSG MSGID(CPF2105)
CRTDUPOBJ OBJ(&DSPF) FROMLIB(&LIB) OBJTYPE(*FILE) TOLIB(QTEMP)
ENDPGM
Ringraziamo Patrick Rizzi per aver condiviso con la Community questa tecnica e invitiamo altri lettori del Blog.Faq400 a fare altrettanto con materiale e/o tecniche che possono essere condivise.
Grazie Patrick.
Roberto
--- Roberto De Pedrini Faq400.comL’estensione “RPG IV to Free Format Conversion” sviluppata da Bob Cozzi (Cozzi Research) è pensata per semplificare la conversione di…
Ciao a tutti, oggi voglio segnalarvi un altro interessante contributo di Massimo Duca, parte della sua ormai nota serie IBM…
Incuriosito da alcuni messaggi di Cristian Larsen su Linkedin (New Release - Display File DDS Edit v.0.10.1) ho voluto scaricare…
Ciao a tutti,oggi voglio segnalarvi un annuncio che potrebbe segnare una svolta per lo sviluppo applicativo su ambienti IBM: Project…
Voglio segnalarvi un nuovo articolo molto interessante di Massimo Duca nella serie IBM i & SQL Tips. In questo sesto…
Ciao a tutti, voglio segnalarvi un post molto utile di Marco Riva sul suo sito Markonetools, in cui spiega in…
View Comments
Buonasera, ottimo suggerimento, solo una nota tecnica, a volte presso i clienti può succedere
che non vogliono avere la QTEMP in lista di librerie, (lo so che ha poco senso, ma presso
una azienda cliente mi è capitato di vederlo) in tal caso credo che l'unica soluzione sia di
fare una OVRDSPF del file video (dopo averlo duplicato in QTEMP) facendogli puntare
all'oggetto in QTEMP questo dovrebbe coprire anche questa (strana) casistica .......
Saluti
Francesco