neroni.it | Open Source As400 |
Tutto il materiale che può essere riutilizzato da me e da altri in versione sorgente su As400.
Sto pubblicando, una alla volta, tutte le utility As400 che ho scritto dal 1979 (sic!) ad oggi.
Colgo l'occasione per rimetterle al mio provvisorio meglio.
Gia' che ci sono scrivo anche cose nuove o aggiusto alla mia maniera cose altrui (poche).
Penso che, dopo trent'anni di minuta, sia l'ora della bella copia e, volendo arrivare al cecidit manus, non credo che saro' io a pulire solaio e cantina.
L'impresa e' lungi dall'essere compiuta.
Ricordo ai digiuni che per vedere un documento linkato occorre cliccare di sinistra sul link (sottolineato e cangiante al passaggio del mouse).
Per scaricare basta cliccare di destra sul link e scegliere salva. I link gia' aperti cambiano colore.
Ogni link riporta la data della propria nascita.
Tra i commenti al link sono indicati data e novita' di ogni nuova versione.
Ogni documento contiene al suo interno data e ora dell'ultima versione.
Il materiale As400 in formato txt contiene open source visionabile immediatamente, scaricabile sul PC,
ricaricabile sul proprio As400 e compilabile seguendo le istruzioni incorporate.
Qualcuna delle utility stesse serve ad eseguire carico e scarico delle utility in modo piu' veloce che seguendo dette istruzioni.
Da luglio 2013, dopo quattro anni come analista di procedure web ma in realta' come giovane d'ufficio sul portale Virgilio (durante i quali ho al massimo fatto stranezze su Excel con il Visual Basic For Application), sono tornato a fare il quattrocentista. Sopportate ancora le mie trappole!
Anche in Unione Fiduciaria faccio il giovane d'ufficio, eunuco nell'harem,
ma il primo di ottobre 2015 raggiungo la vecchiaia della pensione e ne attendo l'esito economico.
Essendo professionista, non sono costretto a licenziarmi e quindi continuero' per un po'.
Vediamo intanto se e' vero che l'italia parassitaria dei ladri restituisce ai contribuenti qualcosa del maltolto.
Poi, pensionato vero, penso che mi abbonero' all'ultimo release sulle macchine di Holger Scherer e che continuero' a produrre materiale
open source da pubblicare.
Poi, due giorni prima della pensione, mi hanno offerto di partecipare all'avvio di una nuova gestione sorgenti che prevedeva una analisi complessa degli oggetti e dei sorgenti in uso con individuazione dei problemi e generazione di strumenti per risolverli. Un milione di membri sorgente: tre giorni di elaborazione solo per il primo elenco. Ho riutilizzato, migliorato e ristrutturato un buon numero di miei tool preesistenti e ho congegnato un ambaradan che mi permette di segnalare le anomalie, sgravandomi dalle responsabilita' applicative ma riducendole al minimo indispensabile.
Ne segue che continuero' a tempo pieno almeno fino a fine 2016 facendo il sistemista sull'applicativo che mi piace piu' della programmazione applicativa all'altrui maniera.
Mi sono anche abbonato per un anno a poco meno di 350 euro a cinque giga di programmatore sul 7.2 di Holger Scherer, ma giusto per avere un'area di appoggio comoda per tutto il materiale e per avere un release piu' recente del tardivo 7.1 dell'ufficio. Ma se avessi solo quello mi sentirei castrato dall'impossibilita' di maneggiare quel poco di sistema che serve ad un applicativo ben fatto. Non sono manco riuscito a gestirmi un mio QAQQINI per i mille rifiuti nei quali ho sbattuto. Peccato che una macchina virtuale da QSECOFR costi dieci volte tanto.
Manuali in ITALIANO Scritti da me e da miei scagnozzi per aiutare chi inizia | |
NuovoCorso | Nuovo Corso As400 |
VecchioCorso | Corso RPG ILE As400 (Vecchio) |
RdiForDummy | Corso Rational Developer for i per principianti RDI ma esperti di SEU-PDM |
Save-Restore Salvataggio e ripristino su AS400 via PC | |
FTU | File Transfer Utility - Salva libreria da As400 a PC - Ripristina libreria da PC ad As400 |
Ifs & PC Tool scritti in dos per scambiare dati (soprattutto sorgente) tra PC e AS400 e viceversa | |
TOSOURCE | Quick copy from PC text to As400 source member |
FROMSOURCE | Quick copy from As400 source member to PC text |
TOPF | Quick copy from PC text to As400 physical file |
FROMPF | Quick copy from As400 physical file to PC text |
TOIFS | Copia un file da PC a un indirizzario IFS dell'As400 |
FROMIFS | Copia un file da un indirizzario IFS dell'As400 a PC |
EXCCMD | Execute As400 Command from PC via FTP |
ALLMBR | Quick copy from all As400 source file members into rebuilding stream |
ALLPF | Quick copy from all phisical members of As400 library into PC zip file |
Connection Miniguida per il trasporto di SAVF tra AS400 | |
TrasportoSavf | Trasporto di SAVF tra As400 usando Ftp |
Message-prerequisite Tool chiamato quando un mio comando incontra un errore imprevisto | |
JRSNMSG | Resend messages |
Copy-prerequisite Tool di creazione di database temporanei o di servizio | |
JCPYCLR | Copy Clear |
Api-prerequisite Interfacce di chiamata alle Api | |
JAI | API Interface |
Conversion-prerequisite Conversioni di formato dei campi utili nei programmi Control Language | |
JCV | Conversion |
JCHAPAK | From Character To Packed |
JDECCHA | From Decimal To Character |
JDECCHA53 | From Decimal To Character ANTE %ADDR |
Table-prerequisite Tabelle (tipo oggetto *TBL, non c'entra l'SQL!) per la conversione di caratteri nelle stringhe | |
JTBL | Tables |
Pdm Carica un'opzione precostituita nell'apposito file PDM di un utente | |
JPDMOPT | Pdm Option |
Retrieve Recuperi mancanti nel sistema operativo | |
JRTVFD | Retrieve File Description Recupera descrizione file |
JRTVENV | Retrieve Environment Var Recupera una variabile di ambiente |
Job Lavori | |
JACT | Job is active? Il lavoro e' attivo? (generico) |
JRJA | Retrieve job activity Il lavoro e' attivo? (mirato) |
JWUJ | Work User Jobs Outfile File di emissione per l'elenco dei lavori utente |
JWAJ | Work Active Job Outfile File di emissione per l'elenco dei lavori attivi |
JRLSJOB | Releases Jobs Rilascia tutti i lavori in coda dell'utente richiesto |
Job Log Log del lavoro | |
JLOG | Archives Log Archivia Log |
JOLDLOG | Archives OldLog Archivia un vecchio log stampato |
Group Job Lavori di gruppo | |
JGRP | Grouping Esemplifica l'uso dei lavori di gruppo preimpostati |
Time Data e ora | |
JTIME | Time Visualizza data corrente, giorno della settimana e ora. A richiesta, giorno della settimana di una data qualunque |
Date Calcoli sulle date | |
JDAT | Date calc Calcoli sulle date |
Cross Reference Riferimenti incrociati | |
JFDR | File Description & Relations Tracciato di un file fisico e chiavi dei logici soprastanti |
JREDKEY | Reduces Keys Analizza le chiavi ridondanti sui file fisici |
JREFDBF | Reference Database Crea il database da usare per esplosione ed implosione alla maniera di una distinta base |
JREFEXP | Reference Explode Esplode le chiamate di un programma alla maniera di una distinta base |
JREFIMP | Reference Implode Implode le chiamate di un programma alla maniera di una distinta base |
JMOD | List embedded modules Lista i moduli chiamati nei programmi |
JMRG | Merge Object Infoyyy Riporta le informazioni sui moduli nell'elenco oggetti |
JCMPLIB | Compare libraries Compara librerie |
JCTLLF | Control logical file pointing Controlla il puntamento dei file logici |
JSRCLST | Source member list Lista i membri sorgente |
JMBRLST | Data member list Lista i membri dati |
JFSS | Find Stream Support Elabora la stampa di Find Stream Pdm di un file sorgente rpg ile con specifiche F posizionali per ricavare "Where used" senza usare gli oggetti |
Spool Gestione di spoolfile | |
ConversioneSpool | Conversione di spoolfile As400 in file Pdf Appunti attivando il pacchetto Infoprint Server |
JWSF | Work Spool Files Outfile File di emissione per l'elenco dei file di spool |
JSPLCVT | Convert Spool File Converte uno spool file in PDF |
JSPOL | Work Spool Gestione personalizzata dell'elenco degli spoolfile |
JCLRSPL | Clear Spool Pulisce i vecchi spoolfile |
JSPLOWN | Change Spool Owner Modifica il proprietario degli spoolfile |
JSPLACT | Spool Action Esegue azioni di massa sugli spoolfile |
JLAST | Retrieve Last Spool Number Recupera il numero di spool file effettivo corrispondente a SPLNBR(*LAST) |
Msg Gestione messaggi | |
JHLDMSG | Held messages Neutralizza i messaggi pendenti nella coda del programma padre |
JMNGMSG | Manage Messages Gestisce i messaggi di interrogazione ricevuti da una coda scelta |
JBRKACT | Break Active Jobs Manda messaggi di interruzione ai soli lavori interattivi attivi |
JRQS | Proto Request Scrive in joblog un messaggio di richiesta inattivo ma duplicabile |
JRTVMSGQ | Retrieve Messages Queue Trascrive una coda messaggi in un file di data base |
Zip Compressione a bordo As400 | |
JZIP | Zip Zippa un indirizzario IFS in un file ".zip" |
Csv & Txt Carico e scarico di file csv e txt | |
JFROMCSV | Load CSV to Database Carica un file in formato CSV in un file di database |
JTOCSV | Unload Database to CSV Scarica un file in formato CSV da un file di database |
JFROMTXT | Load TXT to Database Carica un file in formato TXT in un file di database |
JTOTXT | Unload Database to TXT Scarica un file in formato TXT da un file di database |
JLINK | Display Link Genera su file di emissione l'elenco IFS dei file presenti in un indirizzario |
JLODTXT | Load Text Carica da IFS ad un solo file di database un gruppo di file di testo giacenti in un unico indirizzario |
JZONF | File Zoner Trasforma un file con campi impaccati e binari in un file vuoto con campi zonati |
JZONL | Library Zoner Trascrive i dati dei file di una libreria in un indirizzario IFS cambiando impaccati e binari in zonati |
JZONG | Group Zoner Trascrive un gruppo di librerie in IFS e Zippa IFS generato |
Cursor Gestione cursore video | |
CRSL | Locazione del cursore Legge e scrive il cursore video |
Number Gestione numeri | |
JXLTNBR | Translate number to letters Traduce numero in lettere in Italiano, Francese, Inglese, Tedesco, Spagnolo, Olandese |
JRANDOM | Random generator Genera numeri casuali |
Source Gestione sorgenti | |
JCLRRPG | Clear RPG source Pulisce i sorgenti RPG ed RPGLE non free da numerazioni e sigle varie |
JNSTRPG | Annida le istruzioni RPG e ne allinea i commenti Scrive sulle istruzioni RPG e RPGLE non free le etichette di annidamento come nella lista di compilazione |
JXYZ | Compare Physical File Member Permette di scegliere dalle liste PDM i membri da comparare con le opzioni X/Y/Z |
JSRCBKP | Source backup Copia un membro sorgente nel membro di un file di servizio da conservare con un nome progressivo e incorporando informazioni sul membro originale |
JNEW | Delta new Data una libreria sorgente vecchia e la stessa in versione piu' recente, genera una libreria delta new contenente tutti e soli i sorgenti nuovi |
JOLD | Delta old Data una libreria sorgente vecchia e la stessa in versione piu' recente, genera una libreria delta old contenente tutti e soli i sorgenti modificati ma in versione ante modifica |
JCLRPRTF | Clear Printer File Source Pulisce il sorgente di un Printer File dai commenti lasciati dall'RLU (Report Layout Utility) |
JCMPSF | Compare Source Files Dati due file sorgenti omonimi in librerie diverse, modifica il tipo seu dei membri del primo file aggiungendo "£" (o altro carattere) ai membri con contenuto uguale ai corrispondenti del secondo file |
JWEB | Web stream Crea la stringa per pubblicare un'utility sul web |
JHEXSRC | Hexadecimal on source Mette esadecimali su statement source |
JCLRHEX | Clear hex on source Pulisce source da caratteri esadecimali minori di x'40' |
JSPEC | Specifications Genera specifiche DS per CLP ed altre amenita' |
JPRTSRC | Print Source Stampa un membro sorgente senza contorni |
JDSPSRC | Display Source Visualizza un membro sorgente su subfile e lo gestisce |
JSRCDRV | Source Driver Costruisce un elenco di membri sorgente da più file senza doppioni conservando solo l'ultimo degli omonimi |
JCHG | Last changed files Elenca i file modificati di una libreria in ordine cronologico inverso |
Journal Gestione giornale | |
JDWLJRN | Download file from journal Scarica file da giornale |
Job Stream Gestione delle stringhe di lavoro a blocchi | |
JPAUSE | Pause Interroga una coda messaggi e attende una risposta |
JGOTO | Stream goto Salta l'esecuzione dei comandi successivi della stringa fino a trovare il comando JLABEL |
JLABEL | Stream label Punto di ripresa dell'esecuzione comandi dopo JGOTO |
JEXECJS | Execute Job Stream Esegue come comandi del lavoro corrente tutti i comandi contenuti in un sorgente in linguaggio di controllo |
Database Gestione di file di database | |
JWULK | Wait Unlock Record Attende lo sblocco di un record |
JRGZLIB | Reorganize library Riorganizza i membri dei file fisici di una libreria dotati di record cancellati |
JOPN | Open data files Apre nella libreria esaminata i membri di file dati a manutenzione immed e delay |
JFREF | Free file Libera file |
JDUPLF | Duplicate logical files Duplica i file logici di un fisico |
JDUPDB | Duplicate data base Duplica un file fisico e i suoi logici |
Sql Gestione structured query language | |
JRTVDDL | Retrieve Data Definition Language Recupera da un database preesistente le istruzioni DDL necessarie per ricrearlo |
Query Gestione query | |
JSIGN | Query Sign Trasforma il flag dare/avere nel moltiplicatore +1/-1 |
PuntoDecimale | Punto decimale nel Query Modifica al messaggio che contiene il valore di sistema |
Data Area Gestione aree dati | |
JDTAARA | Change data area Modifica un'area dati |
JARAPRT | Data area print Stampa il contenuto di un gruppo di aree dati |
Library List Gestione lista librerie | |
JLIBL | Library list from jobd Recupera la lista librerie da una descrizione lavoro e la usa come lista librerie corrente |
JNETLIBL | Library list from jod description addressed by file Recupera la lista librerie da una descrizione lavoro annotata su un file anagrafico |
JLLSAV | Library List Save Salva la lista librerie corrente su area dati |
JCHKLIBLE | Check Library List Entry Controlla la presenza di una libreria in lista librerie |
Data Structure Strutture dati | |
JPSDSS | Program status data structure Struttura dati esterna da dichiarare nei programmi RPG ed RPG ILE per leggere le informazioni sul programma |
JFIDSS | File information data structure Struttura dati esterna da dichiarare nei programmi RPG ed RPG ILE per leggere le informazioni su un file |
Program Programmi sui programmi | |
JCALLER | Retrieve caller Restituisce il nome del programma chiamante del programma che lo usa |
JRECURS | Monitor and report recursion Cerca programma in lista di chiamata |
JCMD | Command Chiama l'esecutore comandi QCMD con l'autorita' del proprietario |
JWWD | Work with Disconnection Contiene un esempio semplice di applicazione resistente alle cadute del terminale |
JCHKREF | Check Reference Controlla per i programmi della libreria esaminata la presenza in lista librerie degli oggetti referenziati |
JABSENT | Signal absence Segnala al video o alla joblog la propria mancanza |
JBISCMD | Bis Command Esegue i due comandi ricevuti in input |
JCHKHTM | Check Htm Controlla esistenza PGM e HTML omonimo |
JCHKNAM | Check Name Controlla la validita' formale del nome ricevuto |
Object Gestione oggetti | |
JDUP | Duplicate Duplica un oggetto tramite SAVOBJ (Save Object) e RSTOBJ (Restore Object) |
Debug Gestione debug | |
JDBG | Debug Set Width of Debug Display |
Multilingual Gestione multilingua | |
JLINGUA | Promemoria per display file multilingua File video e file messaggi per esemplificare la trasformazione multilingua delle costanti a video |
Function Gestione di una collezione di funzioni | |
JFNC | Function Gestione di una collezione di comandi pronti all'esecuzione |
Codice fiscale Controlla il codice fiscale | |
JCODFIS | Controlla Codice Fiscale Controlla il codice fiscale italiano |
JDISEGNI | Disegni |
Elementari Esempi di programmi | |
JSMP | Sample Esempio rpg, cobol e cl di visualizzazione file |
JSBS | Example Subsystem Esempio di creazione sottosistema |
JFT | Sample Ftp Trigger Esempio elementare di ftp tra due As400 su file triggerato |
Control Language Programming Programmazione in linguaggio di controllo | |
JCLSR | Control Language Subroutine Source Sorgenti di subroutine in linguaggio di controllo |
Cleaning Pulizie | |
JCLNPF | Cleanings Physical Files Pulisce file fisici |
Ospito qui poche altre cose per le quali non e' maturo l'uso di altre pagine.