Condividere una cartella condivisa da AS400

Volevo appuntarmi questi comandi per condividere una porzione diIFS (Integrated File System) si AS400 da riga comando. Si può fare facilmente da iSeries Navigator:

  • iSeries Navigator > File Systems > Integrated File System
  • Tasto Destro Condivisione
  • Condivisione

Ma se come me non avete installato la parte di iSeries Access che serve e siete in remoto e non avete il setup in locale allora potete condividere da riga comando:

  • Creare la cartella con: MKDIR DIR(‘/miacartella’)
  • Condividerla con: CALL QZLSADFS PARM(miacartella ‘/nomeinrete’ x’00000010′ x’00000000′   ‘descrizione share’ x’00000002′ x’ffffffff’ x’00000000′)
  • Per terminare la condivisione: CALL QZLSRMS PARM(sputifazio x’00000000′)

Qui c’è una miniguida completa dei dettagli dei parametri di queste api.

VN:F [1.9.22_1171]
Rating: 8.0/10 (2 votes cast)
VN:F [1.9.22_1171]
Rating: 0 (from 0 votes)

Tool integrazione AS400/Office/PDF

Con piacere rendo pubblico il mio ultimo lavoro. Ho perfezionato una suite di comandi che permettono l’intgrazione tra AS400 e il mondo Office. In dettaglio cosa faccio:

  • Apertura interattiva da sessione 5250 di file di Database nativi in excel/openoffice. E’ possibile aprirli manualmente da riga comando/menu o da CLP.
  • Apertura interattiva da sessione 5250 di documenti .DOC .TXT .PDF da riga comando o da CLP
  • Apertura interattiva da sessione 5250 di file di spool generati nativamente da AS400 in un formato pdf con l’aggiunta di una intestazione con logo, piede e titolo personalizzabile al momento del lancio.
  • Importazione da riga comando o da CLP di file di excel (XLS) in tabelle native AS400
  • Esecuzione di report grafici (bolle/Fatture/stampe varie) da riga comando o da CLP visualizzabili interattivamente con i comandi precedenti.
  • Invio di mail da riga comando o da CLP di quanto precedentemente creato.

Il mio tool cosa fa in dettaglio:

Apertura interattiva da sessione 5250 di file di Database nativi in excel/openoffice.

Richiamando il comando §OPNXLS digito il nome file e la libreria mi apre il file excel nativo con l’intestazione delle colonne descrittiva e non con il nome del campo. Il file excel è in formato nativo quindi posso salvarlo o inviarlo o elaborarlo ulteriormente.

Apertura interattiva da sessione 5250 di documenti .DOC .TXT .PDF da riga comando o da CLP

Lanciando il comando §OPNDOC si apre interattivamente un documento di tipo PC (DOC, TXT, PDF o altro), se il documento non esiste viene creato da un template ed è quindi salvabile o elaborabile uleriormente. Faccio notare che tramite il percorso /QNTC posso aprire documenti residenti su una cartella di un server di rete che non è AS400!

Apertura Interattiva di spool nativi AS400 in pdf con l’inserimento di una testata con il titolo personalizzabile e un piede

Avendo uno spool nativo si può lanciare il comando §OPNPRTcon i dati dello spool da aprire

si ottiene:

Creazione ed apertura interattiva di report grafici ad hoc tipo Bolle fatture etichette liste varie

Il comando §RUNJASPER apre un report xml precedentemente creato con ireport successivamente salvato nell’ifs nella cartella conf:

si ottiene un report personalizzato a piacere con i dati riempiti a runtime da una istruzione SQL (select * from libreria/miofile). Questo file può anche essere un file precedentemente elborato da programmi rpg, il report estrarrà solo i record che hanno la chiave univoca (tipicamente il numero del lavoro).

Cosa c’è sotto?

Ho creato una serie di comandi che chiamano del codice RPG/ILE CLP e Java, il tutto è residente in modo nativo su iSeries senza appoggio di server esterni. Ecco i Comandi:

nell’ integrated file system c’è del codice java:

visto da AS400

Prerequisiti:

– il prodotto su licenza 5722-JV1 opzione 11 , è il supporto java a 32 bit che ibm rilascia gratuitamente.

– iSeries Access come l’emulatore 5250 per aprire interattivamente i documenti office generati (con altri emulatori posso generare i documenti lo stesso ma non aprirli interattivamente).

– Il tool del grande G.B. Perotti che ho esteso e adattato. Potete trovarlo al sito www.easy400.net

– Per inviare via mail i docuenti generati ho usato il mio tool che trovate qui

– iReport designer per disegnare i report grafici, questo tool è gratuito e scaricabile dal sito http://community.jaspersoft.com/project/ireport-designer

– un minimo di praticità con Cartelle di rete, comandi sql e rpg.

Se siete interessati a usarlo o a farlo usare a vostri clienti rivendendo come valore aggiunto l’inegrazione con gli ERP esistenti contattatemi.

 

 

VN:F [1.9.22_1171]
Rating: 0.0/10 (0 votes cast)
VN:F [1.9.22_1171]
Rating: +1 (from 1 vote)

AS400 Aprire da un CLP un file che risiede in rete

Allego un pezzo di codice (CLP) che serve per accedere ad un file che risiede su una cartella condivisa su una macchina in rete (windows o samba):

DCL        VAR(&PATH_AS) TYPE(*CHAR) LEN(512) VALUE(‘ ‘)
DCL        VAR(&PATH_PC) TYPE(*CHAR) LEN(512) VALUE(‘ ‘)
DCL        VAR(&LIB) TYPE(*CHAR) LEN(10) VALUE(‘<LIBRERIA_DATI>’)
MD DIR(‘/QNTC/<IP_MACCHINA_IN_RETE>’)
MONMSG MSGID(CPF0000)
CHGVAR     VAR(&PATH_PC) VALUE(‘/QNTC/<IP_MACCHINA_IN_RETE>/<NOME_SHARE>’)
CHGVAR     VAR(&PATH_AS) VALUE(‘/QSYS.LIB/’ *TCAT <LIBRERIA_DATI> *TCAT ‘.LIB/<NOMEFILEAS>.FILE/<NOMEFILEAS>.MBR’)
CPYTOSTMF  FROMMBR(&PATH_AS) TOSTMF(&PATH_PC) STMFOPT(*REPLACE) STMFCODPAG(*PCASCII)

A questo punto nella libreria <LIBRERIA_DATI> troveremo un file che si chiama <NOMEFILEAS> leggibile da qualunque programma nativo AS400.

Attenzione:

1) Il file in rete deve essere di tipo testo, se è un doc xls, odf o altro necessita di una conversione

2) le credenziali per accedere alla macchina in rete sono user e paassword dell’utente del lavoro attivo su AS400.

VN:F [1.9.22_1171]
Rating: 10.0/10 (1 vote cast)
VN:F [1.9.22_1171]
Rating: 0 (from 0 votes)

Spegnere la luce di attenzione operatore su AS400

Capita che si accende la famosa luce arancione per motivi futili come per esempio se si scollega la console, oppure dopo un guasto più serio ma la lucina rimane accessa. Per spegnerla bisogna:

  • Loggarsi come QSECOFR
  • STRSST
  • Digitare 1 –> Start a service tool / Avvio di un programma di manutenzione
  • Digitare 7 –> Selezionare Hardware Service manager / Programma di manutenzione hardware
  • Digitare 6 –> Selezionare Work with service action log / Gestione delle registrazioni
    delle azioni di assistenza
  • Impostare le date per selezionare le registrazioni da selezionare
  • Controllare che gli errori siano EFFETTIVAMENTE TUTTI corretti
  • Premere F6 = Acknowledge All Errors / Ricezione di tutti gli errori
  • Rimuovere tutti gli errori presenti , uno alla volta, utilizzando l’opzione 8 di Close (Chiusura) e poi 9 di Delete (Cancellazione). Se non ci sono errori nella pagina ma è presente la funzione F6 fare comunque l’acknowledge per spegnere la luce.
  • Se richiesto premere F10=Conferma
  • Controllare se la luce ora è spenta
VN:F [1.9.22_1171]
Rating: 8.8/10 (4 votes cast)
VN:F [1.9.22_1171]
Rating: +5 (from 5 votes)

Emulatore AS400 per mac

Due dritte per risparmiare un po’ di tempo per configurare al meglio TN5250j su mac:

– Scaricare l’emulatore da qui.

-Espandere la cartella in Applicazioni/tn5250j (o dove volete) sul mac

– Provare L’applicazione da Terminale–> “cd /Applications/tn5250j” e poi “java -jar tn5250j.jar”

– Per creare il link: Lanciare Automator e scegliere applicazione poi esegui applescript

– incollare questo codice:
tell application “Terminal”
activate
do script “cd /Applications/tn5250j/; java -jar tn5250j.jar”
end tell
– Registra con nome –>AS400 –> Tipo Applicazione (allego il mio già pronto AS400.app )

– Se volete aggiungetela al doc.

– Dall’emulatore con tasto destro mappare i tasti corretti.

– Probabilmente per utilizzare al meglio i tasti F1-F24 sarà comodo impostare da preferenze di sistema –> tastiera “Utilizza i tasti F1, F2 come tasti di funzione standard”

VN:F [1.9.22_1171]
Rating: 8.3/10 (4 votes cast)
VN:F [1.9.22_1171]
Rating: +1 (from 1 vote)

Stampe grafiche gratis su AS400 (e non solo)

Chiunque ha lavorato su AS400 sa che la reportistica non è il massimo. O si usano i printer file o ci si appoggia a prodotti esterni che attingono i dati dalle stampe prodotte o da archivi appositamente prodotti. Fino ad ora ho trovato sltanto prodotti che oltre ad avere dei costi hanno una certa complessità e necessitano spesso e volentieri di server esterni. Ho implementato in azienda un sistema molto pulito ed efficente basato su Jasper Report / iReport. A chi non conosce questi prodotti suggerisco di perderci un po’ di tempo per un eventuale utilizzo ma anche per prendere atto di come si possano sviluppare applicazioni pulite ed intelligenti. Tecnicamente si creano dei file xml contenenti il report da generare usando ireport, un tool grafico che permette di disegnare tipo word o openoffice, e poi si usano con delle classi java opensource fornite da jasper che eseguono un una queri su un database e fanno un merge dei dati ottenuti con la grafica creata con iReport ottenento pdf, word excel html xml. A lavoro ultmato si avrà una classettina java che istanzia jasper un xml con la definizione del’output voluto e basta. Come sapete la classe java è richiamabile tranquillamente da un menu, quindi rieplogando a lavoro ultimato avremo:
Un xml e una classe java che metteremo nell’if del nostro as400. Un CLP che lancia la nostra classe (che crea per esempio un pdf) e che prende questo file generato e lo apre lo spedisce lo archivia etc. il tutto in modo semplice e a costo zero.
Alcuni riferimenti:
http://jasperforge.org/projects/ireport
http://jasperforge.org/index.php?q=project/jasperreports

VN:F [1.9.22_1171]
Rating: 10.0/10 (3 votes cast)
VN:F [1.9.22_1171]
Rating: 0 (from 2 votes)

Problemi di edit code su AS400

Oggi mi è successo uno strano problema, ho ricompilato dei PRTF (printer file) per fare degli aggiornamenti su AS400 e provando a stampare uscivano degli strani caratteri stampando valute e numeri. Dopo aver fatto un po’ di diagnostica ho capito qual’era il problema e voglio scrivere un appunto come promemoria, dunque:
Nei printer si possono editare i numeri con dei codici di editazione  (per esempio EDTCDE(2)) da qui si guida il programma a stampare con la virgola per i decimali o stampando il meno con il carattere ‘-‘. I codici da 1 a 4 sono gestiti dal sistema, i codici da 5 a 9 sono a disposizione dell’utente, nel mio caso usavo EDTCDE(5) come spesso viene usato dalle ACG di IBM.
Il comportamento di queste maschere è descritto in oggetti di tipo *EDTD in QSYS, e qui vengo al dunque, qualche tempo fa ho fatto un cambio macchina e questi oggetti in QSYS sono stati cambiati dalla release si OS dalla 5.3 alla 5.4. Non avendo mai ricompilato nessun printer fino ad ora con i codici di editazione variati non ho mai cambiato il comportamento in stampa ma oggi ricompilando in massa vari printer avevo un sacco di errori. Ho risolto il problema rieditando questi codici e ripersonalizzarli con il comando WRKEDTD EDTD(*ALL). Raccomando a tutti di controllare questi oggetti in caso di cambio macchina o aggiornamento di release.

VN:F [1.9.22_1171]
Rating: 10.0/10 (1 vote cast)
VN:F [1.9.22_1171]
Rating: 0 (from 0 votes)

Utilizzo i cookie per essere sicuro che tu possa avere la migliore esperienza sul mio sito. Se continui ad utilizzare questo sito assumo che tu ne sia felice.. maggiori informazioni

Questo sito utilizza i cookie per fonire la migliore esperienza di navigazione possibile. Continuando a utilizzare questo sito senza modificare le impostazioni dei cookie o clicchi su "Accetta" permetti al loro utilizzo.

Chiudi