01 - Programmazione01d - Rational RDi e altri Tools

Rational Developer for i – Rdi – Trucchi e FAQ (IT)

Last Updated on 12 Ottobre 2019 by Roberto De Pedrini

Introduzione

Questo articolo non vuole essere una vera guida a Rationl Developer for i – Rdi ma solo una raccolta di trucchi e trucchetti, cose curiose o poco note, da riguardarsi di tanto in tanto per utilizzare meglio questo ottimo IDE di sviluppo per ambiente RPG e Cobol.

Sono ben accetti suggerimenti da parte dei lettori nell’ottica di migliorare questa guida a vantaggio di tutti: utilizzate pure la parte commenti in fondo… il post sarà in continua evoluzione man mano che troviamo delle cose interessanti… se serve saranno creati degli appositi post di approfondimento di alcuni temi.

Rdi-Faq000: Dove scarico e quanto costa Rational Rdi?

C’è una ottima guida all’installazione di Rational Rdi al seguente link: http://www-01.ibm.com/support/docview.wss?uid=swg21667734

Per quanto riguarda invece costi e versioni è disponibile anche una apposita guida qui sul nostro blog “Guida alle licenze e costi di Rational Rdi”

Rdi-FAQ-001: Come aprire i sorgenti in “visualizzazione-sfoglia” per default?

La possibilità su Rational Rdi di aprire contemporaneamente diversi sorgenti e di tenerli aperti tutti in modalità “editing” è fantastica e uno sviluppatore RGP/Cobol evoluto non può che essere contento di questa possibilità. Spesso però, apriamo più sorgenti solo per vedere e copiare qualcosa, se fossimo con il vecchio SEU li apriremmo con la funzione 5 … possiamo farlo anche con Rdi con tasto destro – “sfoglia con” ma non è così comodo.

Apri in visualizzazione

Io, personalmente, preferisco impostare Rational Rdi per aprire sempre i sorgenti in modalità “visualizzazione”: preferenze- sistemi remoti – IBM i – Sottosistema oggetti e apposita spunta su “Apri l’origine in modalità visualizzazione”.

In questo modo ogni volta che apro il sorgente cliccandoci sopra da RSE viene aperto in modalità “sfoglia” e non è modificabile. Se invece so che devo modificare lo apro con il tasto destro “Apri con”.

Se mi serve editarlo quando sono in modalità visualizzazzione posso passare alla modalità edit con la compinazione Ctrl+Shift+G oppure da Origine “toggle label” … probabilmente funzione non tradotta in Italiano.

Rdi-Faq002: Come distribuire la configurazione Rational Rdi al team (Push (configuration) to Clients)

L’ambiente (workspace) di Rational Rdi contiene diverse impostazioni e settaggi che in una azienda dove si lavora in team potrebbe aver senso mettere a fattor comune. Templates, Frammenti, Connessioni, Filtri e altre impostazioni posso essere tutte salvate in una apposita directory di IBM i in modo che al primo collegamento di un nuovo client Rdi (o di un workspace vuoto) vengano “importate” e quindi distribuite.

C’è un apposito articolo del blog.faq400.com a questo link: https://blog.faq400.com/programmazione/rational-rdi-push-to-client

Rdi-FAQ-003: Posso convertire in Free anche le specifiche HFD (JCRCMDS!)?

La possibilità di convertire in RPG Free il codice Fixed è veramente interessante.. io, generalmente, la uso per convertire almeno la parte di codice che metto in manutenzione… mentre tutto il nuovo codice lo scrivo assolutamente in Free.

Il problema di questa funzione di conversione Fixed-Free è che funziona solo per le specifiche C … e spesso anche un po’ male … MOVE MOVEL DO *HIVAL e altre cose non riesce a convertirle in free anche se avendo la definizione delle variabili potrebbe fare qualcosa in più …. Comunque una parte del lavoro la fa … poi qualcosa è da convertire a mano. Ma per le specifiche H F e D Rdi non fa un bel niente… quindi o si fa a manina o si scarica un ottimo tool di Craig Rutledge (JCRCMDS), open souce, gratuito: l’utility JCRHFD parte da un sorgente Fixed e lo trasforma in uno Free per le specifiche H F D , facendo un lavoro veramente accurato! Grazie Craig!

Rdi-FAQ-004: Ho problemi con il Debug di Rdi

Capita alle volte che i nostri SEP (Service Entry Point – Punti di Ingresso di servizio del Debug) non si attivino nonostante utente e programma siano impostati correttamente. Spesso la cosa si risolve riavviando il server di Debug utilizzato da Rational Rdi:

  • Da riga comando con : ENDDBGSVR e poi STRDBGSVR
  • Da GUI di Rdi cliccando tasto destro del mouse sulla voce Oggetti di RSE Remote System Esporer, scegliere Server Remoti, Debug, Stop e Start

Rdi-FAQ-005: Code coverage … cos’è?

Quando attivi o modifichi un SEP (Service Entry Point – Punto di ingresso di servizio debug) avrai visto l’opzione Debug o Code Coverage: questa opzione di Code Coverage permette di analizzare il sorgente di un programma una volta messo in esecuzione. In pratica quello che si ottiene è un report di copertura del codice, le subroutine e procedure utilizzate, quelle non utilizzate, le righe di codice eseguite e quelle non eseguite: si possono vedere quindi le parte di codice più utilizzate e quelle non utilizzate … magari residui di vecchie procedure o sobroutine.

Approfondimenti sulla funzione Code Coverage in questo post di ITJungle: “Guru: How Thorough Was Your Last Test? RDi Code Coverage Can Tell You”.

Rdi-FAQ-006: Perdita del collegamento Rdi Remote System Explorer RSE con IBM i

Può succedere che a alcuni firewall abbiamo un idle-time fissato ad un certo numero di minuti … se non vedo traffico entro quel tempo eseguono una disconnessione … Per default il Keep-Alive time di IBM i è fissato a 120 Minuti … ma se quello del firewall è più basso (e generalmente è così) conviene ridurre il tempo in minuti del “keep alive”… ad esempio in questo caso vado a fissarlo a 15 minuti:

 CHGTCPA TCPKEEPALV(15) 

Rdi-FAQ-007: Quali porte TCP/UDP utilizza Rational Rdi?

Le porte obbligatorie per Rdi sono :

 8470, 8475, 8476, 446, 449  

Poi ci sono altre porte per Debug, IFS ecc:

8473, 8472, 4300, 3825

Documentazione ufficiale qui: Rdi Port Information

Rdi-FAQ-008: Ricreare Workspace Rdi (in caso di problemi)

Può capitare di avere dei problemi con un Workspace Rdi che, per qualche strana ragione, si guasta e crea strani problemi a Rdi (errori nell’apertura dei sorgenti e comportamenti anomali in generale): in questi casi la prima cosa da provare è creare un nuovo workspace pulito e verificare se i problemi si risolvono …

Se il problema viene risolto bisogna “ripopolare” il nuovo workspace con connessioni, modelli template, frammenti e altre impostazioni… ecco come fare:

  • Creare un nuovo workspace (File, Passa allo spazio di lavoro, Altro …. creare a questo punto un nuovo workspace on un nome)
  • Tornare al workspace precedente
  • Per esportare i modelli template (se li utilizzate) andare nelle preferenze Rdi… modelli ed esportare i modelli
  • Per esportare i frammenti (se li utilizzate), tasto destro del mouse, Personalizza … ed esportare le cartelle di frammenti-snippets
  • Chiudere Rational Rdi
  • Copiare i file PRF.* che trovate nella cartella [Old_Workspace_Path]\.metadata\.plugins\org.eclipse.rse.core\profiles\ e incollateli nella stessa cartella del nuovo workspace
  • Aprire Rdi nel nuovo workspace ed importare modelli e frammenti con l’operazione opposta a quella di esportazione vista sopra

Riferimenti: “How to transfer existing workspace customizations to a new workspace

Rdi-FAQ-009: Debug con Rdi: non funzionano più i Break Point!

E’ capitato proprio al sottoscritto: Debug e Rational Rdi, imposto un Entry Point (SEP), lancio il programma che correttamente mi imposta Rdi in prospettiva di debug, imposto i miei break point, faccio ripartire il programma e non si ferma ai break point impostati! Ci ho perso anche parecchio tempo prima di capire che con il mouse o con la combinazione di tasti CTRL-ALT-B ho distrattamente attivato la funzione “Ignora tutti i break point”: funzione ben poco visibile dalla prospettiva di debug nella vista Punti di Interruzione (Breakpoint).

Rdi-FAQ-010: Rdi 9.6.0 and Mac OSX Catalina

Passando alla nuova versione di OSX Catalina non funziona più Rational Rdi segnalando un problema di Java Runtime Versione 6… è una cosa dovuta alla versione di Eclipse su cui si appoggia Rdi …. c’è un workaround indicato al seguente link:

Issues with Rational Developer for i V9.6.0.x and macOS Catalina (version 10.15)

Related Posts
DB2 for i SQL – Stringhe – POSSTR-LOCATE-LOCATE_IN_STRING (IT)

Introduzione Spesso, nelle nostre applicazioni, abbiamo la necessità di lavorare con le stringhe di testo e l'SQL del DB2 può Read more

DB2 for i & SQL – FAQ & Howto (Part. 1) (IT)

Database DB2 e SQL ... forse lo strumento più potente e completo che abbiamo sulla piattaforma IBM i: ecco una Read more

Annuncio IBM i 7.4

Arriva direttamente con l'uovo di Pasqua questo annuncio IBM per le novità della versione IBM i 7.4, versione iNext secondo Read more

Generated Always Columns – Approfondimenti (IT)

Introduzione "Generated Always Column": sono colonne, campi, di una tabella il cui contenuto è controllato direttamente dal sistema ... e Read more

--- Roberto De Pedrini Faq400.com
About author

Founder di Faq400 Srl, IBM Champion, ideatore del sito Faq400.com e del Blog blog.faq400.com. Sviluppatore RPG da quando avevo i pantaloni corti, forte sostenitore della piattaforma IBM i (ex AS400), ho sempre cercato di convididere le mie conoscenze con gli altri tramite forum, eventi e corsi. Oggi, tramite Faq400 Srl, cerchiamo di aiutare le aziende a sfruttare al meglio questa fantastica piattaforma IBM i.

Lascia un commento

Il tuo indirizzo email non sarà pubblicato. I campi obbligatori sono contrassegnati *