Title: Argomenti della Giornata
1Argomenti della Giornata
Progetto Getra Graphic
- Nuova architettura di Webgate400
- Implementazioni semplici Interfaccia
- Nuova Configurazione Runtime
- Implementazioni avanzate Interfaccia
- Alcune facility di Webgate400
- Più avanti nella Modernizzazione
2Nuova architettura di Webgate400
Progetto Getra Graphic
- A tempo di esecuzione, i DSPF convertiti
diventano vere e proprie tabelle (PF) collocate
in apposite librerie di appoggio default
WGTDBL400 - Ogni tabella conterrà la definizione di un
formato record. - WG4SYSFD/WGTDBIDX è lindice di queste tabelle.
- Ad ogni chiusura di programma vengono svuotate
le relative tabelle. - Operazioni in IPL di ottimizzazione delle tabelle
tramite lutility WGUIMGR -r (anche controllo
congruità)
3Nuova architettura di Webgate400
Progetto Getra Graphic
- Vantaggi
- Il peso nelleffettuare operazioni complesse
viene spostato dal Client al Server - Possibilità di estendere le tabelle da
interfaccia - Il Client non deve vedere tutti i record di
Subfile per Esportarli, Ordinarli,
Gerarchizzarli, Filtrarli, ecc. - Parziale abbandono degli USRIDX nel rapporto
Client/Server - Non è richiesta nessuna ri-conversione dei
programmi attuali
4Nuova architettura di Webgate400
Progetto Getra Graphic
- Svantaggi
- Questa pagina è stata intenzionalmente lasciata
vuota
5Nuova architettura di Webgate400
Progetto Getra Graphic
- Attivazione
- Agendo sul file WG4SYSFD/ODAZI (record
EDM/999999) - Da Gestione Ambienti On Demand
6Implementazioni semplici Interfaccia
Progetto Getra Graphic
- Combinazione tasti ALTR per simulare tasto
destro del mouse su incrocio subfile - Combinazione tasti ALTO per ordinare colonne
subfile - Modalità esposizione Tasti Funzione
- Modalità esposizione Opzioni Subfile
- Modalità visualizzazione Posizione Cursore
- Modalità Rotella del Mouse (wheel mouse)
7Implementazioni semplici Interfaccia
Progetto Getra Graphic
- Marcatura Campi Input Subfile.
- Espansione Subfile in Windows fmtatr2193R(1)
- SFLRCDNBR (CURSOR TOP)
- Svuotamento Buffer Tastiera non tipo CTRL 5250
(Ripristino) ma attivo/disattivo - Blocco colonne Subfile (impedire lo scorrimento
delle colonne oltre l'area di visualizzazione)
8Nuova Configurazione Runtime
Progetto Getra Graphic
- Nuovo look interfaccia principale
- Ripartite logicamente le Gestioni
- Più chiare (e immediate) le selezioni
- Personalizzabili chiamatefunzioni Sistema
9Implementazioni avanzate interfaccia
Progetto Getra Graphic
- Filtri Subfile
- Solo per Designer/Abilitati a Filtri
- Si attivano premendo ALTF (cursore nel subfile)
- Semplici o Composti (1 o più righe di filtro)
- Vengono applicati in AND se applicati sulla
stessa riga, in OR tra più righe) - Click su pulsante elencoper aprire il filtro
guidato
10Implementazioni avanzate interfaccia
Progetto Getra Graphic
- Filtri Subfile
- Sintassi SQL (where).
- Esempio 1
- Filtrare i clienti che hanno avuto movimenti
nellanno xxxx - IN(
- SELECT jcdcan FROM jfcmv03l WHERE
- jcdsoc'001' AND
- jcdtan'C' AND jdtreg
- BETWEEN 20070101 AND 20071231
- )
11Implementazioni avanzate interfaccia
Progetto Getra Graphic
- Filtri Subfile
- continua Sintassi SQL (where).
- Esempio 2
- Filtrare i clienti che hanno prodotto (in
totale) più di yyyyyy - IN(
- SELECT fmtccl FROM prd5000f
- GROUP BY fmtccl
- HAVING SUM(fmsnmt01)lt3000
- )
12Implementazioni avanzate interfaccia
Progetto Getra Graphic
- Filtri Subfile
- continua Sintassi SQL (where).
- Esempio 3
- Filtrare solo i clienti di una provincia (campo
non presente nel subfile) - IN(
- SELECT jancan FROM jfana00f WHERE
- jansoc'001' and
- jantan'C' and
- janprv'BS
- )
13Implementazioni avanzate interfaccia
Progetto Getra Graphic
- Filtri Subfile
- continua Sintassi SQL (where).
- Esempio 4
- Filtrare solo i clienti che si chiamano ROSSI
- LIKE ROSSI
- Oppure
- LIKE ROSSI
14Implementazioni avanzate interfaccia
Progetto Getra Graphic
- Filtri Subfile
- continua Sintassi SQL (where).
-
- Per i campi alfabetici gli apici (') non sono
obbligatori - Se non specificato nessun operatore si assume
(uguale) - Per listruzione LIKE se non indicato viene
assunto automaticamente in testa e in coda il
simbolo (percentuale)
15Implementazioni avanzate interfaccia
Progetto Getra Graphic
- Filtri Subfile
- Salvataggio Filtri con Estremi Personalizzazione
16Implementazioni avanzate interfaccia
Progetto Getra Graphic
- Filtri Subfile
- Richiamo filtri salvati
- Lapplicazione di un filtro è percepibile perché
lintestazionedi colonna diventa Rossa
17Implementazioni avanzate interfaccia
Progetto Getra Graphic
- Accesso non Vedenti
- E possibile attivare la voce a Webgate400,
utile soprattutto per gli utenti non vedenti. - Si attiva dal menù ? attraverso la voce
Abilita Lettura - Vengono lette automaticamente le informazioni di
Login e ogni titolo Finestra (ALTT per
rileggerlo). - Attraverso poi gli Attributi Oggetti è
possibile impostare quali etichettevalore
campo verranno letti.
18Implementazioni avanzate interfaccia
Progetto Getra Graphic
- Aggiunta colonne subfile
- Tramite un apposita interfaccia (richiamabile
dal menù Strumenti-Personalizzazioni-Aggiunta
Colonne) sarà possibile aggiungere colonne ai
subfile. - In generale, i campi/colonne recuperati nei
formati record presenti verranno descritti
tramite la forma nomeformato.nomecampo (oppure
solo nomecampo se il formato è lo stesso su cui
viene fatta la personalizzazione).
19Implementazioni avanzate interfaccia
Progetto Getra Graphic
- Aggiunta colonne subfile
- I campi che possono essere aggiunti possono
essere valorizzati in quattro modalità diverse - DECODIFICHE
- EXIT PROGRAM
- FORMULE MATEMATICHE
- ISTRUZIONI SQL
20Implementazioni avanzate interfaccia
Progetto Getra Graphic
- Aggiunta colonne subfile Parte comune
- Tutti i 4 tipi di aggiunta hanno in comune il
primo pannello di dati
21Implementazioni avanzate interfaccia
Progetto Getra Graphic
- Aggiunta colonne subfile Decodifiche
- Nel dizionario di Webgate400 viene codificato per
ogni campo che programma usare per decodificarlo
(tecnica usata anche in DBLink, FastQuery, ecc.) - Il programma chiamato ha una struttura di
parametri fissa, ma potrebbe essere usato un pgm
standard per le decodifiche utilizzata attraverso
il files DECOD
22Implementazioni avanzate interfaccia
Progetto Getra Graphic
- Aggiunta colonne subfile Decodifiche
- I parametri di questo programma di decodifica
saranno - Per le decodifiche composte, è previsto il campo
associato
23Implementazioni avanzate interfaccia
Progetto Getra Graphic
- Aggiunta colonne subfile Exit Program
- Verrà richiamato il programma dichiarato passando
due particolari strutture di parametri - La prima è unica e identificherà quante strutture
del secondo tipo verranno passate, che dimensione
avranno e in quale struttura cè il campo che si
deve valorizzare - La seconda struttura verrà ripetuta n volte e
contiene lintero elenco dei campi del formato
record con le sue caratteristiche, compreso dove
nel buffer si trova il dato
24Implementazioni avanzate interfaccia
Progetto Getra Graphic
- Aggiunta colonne subfile Exit Program
- Queste sono le strutture vedere esempio CWG009
25Implementazioni avanzate interfaccia
Progetto Getra Graphic
- Aggiunta colonne subfile Formula
- Valgono le () e sono ammessi i classici operatori
algebrici. - Dovendo far riferimento ad un dato presente su un
altro formato (esposto) nomeformato.nomecampo
26Implementazioni avanzate interfaccia
Progetto Getra Graphic
- Aggiunta colonne subfile SQL
- Rispettando la sintassi dellSQL, è possibile
fare delle SELECT utilizzando come WHERE I
campi presenti a video (non necessariamente lo
stesso formato). - Per sfruttare il fatto che da una Select potremmo
recuperare più campi, è stato introdotto il
concetto di campo Master e campo Slave.
Quindi può essere eseguita una sola Select che
popola più colonne aggiunte.
27Implementazioni avanzate interfaccia
Progetto Getra Graphic
- Aggiunta colonne subfile SQL
- Nel caso riportato sopra, la Select riguarda più
campi JANIN1, JANIN2, JANLOC, JANPRV - Se non diversamente specificato, il primo campo
in Select viene utilizzato per popolare questa
colonna aggiunta. Il nome della nuova colonna
sarà utilizzato come Master in modo da
ripartire gli altri campi (JANIN2, JANLOC,
JANPRV) su altrettanti nuove colonne aggiunte.
28Implementazioni avanzate interfaccia
Progetto Getra Graphic
- Aggiunta colonne subfile SQL
- Nel caso riportato sopra, la Select riguarda più
campi JANIN1, JANIN2, JANLOC, JANPRV - Se non diversamente specificato, il primo campo
in Select viene utilizzato per popolare questa
colonna aggiunta. Il nome della nuova colonna
sarà utilizzato come Master in modo da
ripartire gli altri campi (JANIN2, JANLOC,
JANPRV) su altrettanti nuove colonne aggiunte.
29Implementazioni avanzate interfaccia
Progetto Getra Graphic
- Aggiunta colonne subfile SQL
- Questo sarà quello che metteremo nel secondo
campo aggiunto (il Campo Riferimento è utile se
il nome del campo aggiunto è diverso da quello
utilizzato nel comporre lo statement Sql sul
campo Master) - E così via..
30Implementazioni avanzate interfaccia
Progetto Getra Graphic
- I Colori
- La gestione dei colori avviene tramite il menù
Strumenti Gestione Colori. - Un utente Designer puòmemorizzare i colori
scelti. - Le impostazioni Company/Utente vengono salvate su
IFS nella cartella /webgate400/styles (crearla
se assente). Le impostazioni di default devono
essere create da un Client e poi copiate dalla
cartella di cache /IndirizzoIP/Styles alla
cartella /webgate400/styles, chiamando lXML
default.xml
31Alcune facility di Webgate400
Progetto Getra Graphic
- Le Tabs e gli attributi di formato
- Sono SQL con cui possiamo arricchire un video
direttamente da interfaccia. - Possono essere
- Statiche (la where è fissa)
- Dinamiche (la where è legata a qualche altro
campo presente a video (sia parte fissa che
subfile) - Non dobbiamo dimenticare che allinterno delle
Tabs, possiamo utilizzare i Format Attribute di
Webgate400 per creare Gerarchizzazioni (con
Riepiloghi) e possiamo anche introdurre le chiavi
per poter generare un grafico.
32Alcune facility di Webgate400
Progetto Getra Graphic
- Le Tabs e gli attributi di formato
- Il programma CWG002 altro non è che un video
vuoto (lato codice, solo EXFMT), e attraverso
questa Tabs - diventa qualcosa di fruibile
33Alcune facility di Webgate400
Progetto Getra Graphic
- Le Tabs e gli attributi di formato
- Addirittura in grado, premendo lapposito
pulstante di produrre immediatamente un
grafico.
34Alcune facility di Webgate400
Progetto Getra Graphic
- Immagini e Button Image
- Facilmente vengono messe nei form Immagini, Text
Icons e Extended Icons (per I Button Image). - E utile ricordare che è possibile utilizzare
proprie immagini (soprattutto .ico), magari
mettendole in una sottocartella della /WGPublic. - Sia per le Text Icons che per le Extended Icons è
utile ricordare che per standardizzare le
descrizioni associate è possibile codificale nel
file XFIMG della propria libreria oggetti (anche
quando hanno associato un comando)
35Alcune facility di Webgate400
Progetto Getra Graphic
- Keyword poco conosciute
- ltwgthidelt/wgt utilizzata sui campi Hidden,
impedisce che un informazione non utile in
grafica venga passata dal Server al Client. - ltwgtcpyrightlt/wgt abbinata a un campo del formato
video, ne sposta il contenuto al posto della
dicitura Powered by IBM ISeries (se questa
dicitura è disabilitata a livello di
configurazione runtime) - ltwgtfitlt/wgt adatta le immagini alla dimensione
reale del campo.
36Alcune facility di Webgate400
Progetto Getra Graphic
- Keyword poco conosciute
- ltwgtlthgtintestazione_colonnalt/hgtlt/wgt
- Semplice una sola descrizione
- Condivise si raggruppano diverse intestazioni
tramite una parte comune se contigue leffetto
è - Variabile lthgtnomeFormato.nomevariabilelt/hgt
- File Messaggi lthgtfilemessaggi.miclt/hgt
- In tutti I casi, se presente anche
costante/variabile a video, è necessario
attribuirle la keyword (ltwgtignorelt/wgt)
37Più avanti nella Modernizzazione
Progetto Getra Graphic
- Bif
- E possibile utilizzare le Bif (Build in
Function) anche quando riguardano le operazioni
di I/O con il DSPF - Chain Subfile ? If Found(Subfile) ReadC Subfile
? If Eof(Subfile) - Lunico prerequisito è che dopo la Bif sia
sempre dichiarato il nome del formato record
utilizzato. - Rpg/free
- E possibile utilizzare lRPG/Free anche per le
parti di gestione del DSPF.
38Più avanti nella Modernizzazione
Progetto Getra Graphic
- Drag Drop
- Leffetto del Drag Drop avviene tramite un
particolare tipo di Service Command. - Viene invocato il Service Command quando uno o
più elementi a video specifici vengono
draggati. Il Comando può già autonomamente
chiamare dei componenti di Gestione
delloggetto (Interrogazione, Modifica,
Cancellazione, Stampa), oppure compiere un azione
che un altro programma, attraverso un artificio
(non esistono eventi in RPG!), può intercettare.
39Più avanti nella Modernizzazione
Progetto Getra Graphic
- Drag Drop
- Gli esempi CWG004 e CWG005 sono stati predisposti
proprio per dimostrarne leffetto. - Dal pgm Origine (CWG004) sarà possibile
draggare uno o più Codici Cliente nel pgm
Destinazione (CWG005)
40Più avanti nella Modernizzazione
Progetto Getra Graphic
- Drag Drop
- Il Service Command è stato realizzato in questo
modo da notare il 1 parametro DS e 6 che è
5 e non 5
41Più avanti nella Modernizzazione
Progetto Getra Graphic
- LOBS
- Gestione di oggetti complessi all'interno di
applicazioni 5250 convertite Webgate400. - Obiettivo poter gestire oggetti esterni come
fossero dati nativi delle applicazioni,
utilizzando una tecnica simile a quella
utilizzata per la gestione dei CLOB/BLOB dal
DB/2, ma semplificata dal punto di vista della
programmazione. - Lutilizzo richiede conoscenza delle tecniche di
realizzazione e gestione degli oggetti CLOB
(Character Large Object) o BLOB (Binary Large
Object) - No!!
42Più avanti nella Modernizzazione
Progetto Getra Graphic
- LOBS
- Alla data sono gestiti due tipi di oggetti LOB
Txt e Mht - Lesempio CWG003 dimostra lutilizzo di entrambe
i controlli. - I campi lob devono avere il nome con il prefisso
WLOB_ e devono necessariamente essere lunghi
18Char. - Devono avere la TEXT ltlobgt lt/lobgt, qualificante
come negli esempi seguenti - ltwgtltlobgttxt h10 w80 sF1 dF4 lF5 lt/lobgtlt/wgt
- ltwgtltlobgtmht h10 w80 sF1 dF4 lF5lt/lobgtlt/wgt
- Le key s (tasto save), d (tasto delete), l
(tasto lose change)
43Più avanti nella Modernizzazione
Progetto Getra Graphic
- LOBS
- Il programmatore deve fondamentalmente occuparsi
di salvare sui suoi normali archivi il campo
lungo 18Char! - Vengono archiviati su IFS in un particolare
percorso/WGPublic/Lobs/lobstore_subdir/annomese/
UNIDE.xxx - I Lobs possono essere trasportati da un sistema
allaltro semplicemente salvando e ripristinando
la directory IFS che li contiene (non va mai
salvato il loro indice). - Hanno una serie di Api per automatizzare alcune
funzioni Copia, Rebuild index, Delete, ecc.
44Più avanti nella Modernizzazione
Progetto Getra Graphic
- LOBS
- Il Lobs Txt è un oggetto che permette di
gestire a video un editor avanzato (anche se solo
testuale) e permette di creare/modificare/stampare
testi direttamente dai pgm.
45Più avanti nella Modernizzazione
Progetto Getra Graphic
- LOBS
- Il Lobs Mht è un oggetto che permette di
gestire a video un editor avanzato (quello di
Outlook Express) e permette di creare/modificare
documenti direttamente dai pgm.
46Più avanti nella Modernizzazione
Progetto Getra Graphic
- Script e WGEXEIOUT
- Alcuni applicativi creano/gestiscono documenti
(tipo .pdf, .doc, .xls, .html, .xml) e hanno la
necessità di aprirli da un programma. - Lutilizzo dellSTRPCCMD (anche emulato da
Webgate400) funziona se il documento è già sul PC
(o in un percorso di rete). - Se invece loggetto è su IFS (non condiviso) è
possibile usare il componente WGEXEIOUT per
aprire il documento da programma.
47Più avanti nella Modernizzazione
Progetto Getra Graphic
- Script e WGEXEIOUT
- Lesempio CWG008 dimostra come sia possibile
creare un semplice files HTML su IFS per poi
aprirlo direttamente. - La stessa cosa può essere utilizzata tramite Link
(exei//) richiamando un programma RPG Il Print
Box di Webgate400, fondamentalmente fa questo.
48.fine.
Progetto Getra Graphic
- Grazie a tutti dellattenzione!