Post on 02-May-2015
11
Argomenti della GiornataArgomenti della Giornata
Nuova architettura di Webgate400Nuova architettura di Webgate400 Implementazioni “semplici” InterfacciaImplementazioni “semplici” Interfaccia Nuova “Configurazione Runtime”Nuova “Configurazione Runtime” Implementazioni “avanzate” Implementazioni “avanzate”
InterfacciaInterfaccia Alcune “facility” di Webgate400Alcune “facility” di Webgate400 ““Più avanti” nella ModernizzazionePiù avanti” nella Modernizzazione
Progetto Getra Graphic
22
Nuova architettura di Webgate400Nuova architettura di Webgate400A tempo di esecuzione, i DSPF convertiti diventano A tempo di esecuzione, i DSPF convertiti diventano
vere e proprie tabelle (PF) collocate in apposite vere e proprie tabelle (PF) collocate in apposite librerie di appoggio: default = librerie di appoggio: default = WGTDBL400WGTDBL400
Ogni tabella conterrà la definizione di un “formato Ogni tabella conterrà la definizione di un “formato record”.record”.
WG4SYSFD/WGTDBIDX WG4SYSFD/WGTDBIDX è l’indice di queste tabelle.è l’indice di queste tabelle. Ad ogni chiusura di programma vengono “svuotate” Ad ogni chiusura di programma vengono “svuotate”
le relative tabelle. le relative tabelle. Operazioni in IPL di ottimizzazione delle tabelle Operazioni in IPL di ottimizzazione delle tabelle
tramite l’utility tramite l’utility WGUIMGR -r WGUIMGR -r (anche controllo (anche controllo congruità)congruità)
Progetto Getra Graphic
33
Nuova architettura di Webgate400Nuova architettura di Webgate400Vantaggi:Vantaggi: Il peso nell’effettuare operazioni complesse viene Il peso nell’effettuare operazioni complesse viene
spostato dal Client al Serverspostato dal Client al Server Possibilità di “estendere” le tabelle da interfacciaPossibilità di “estendere” le tabelle da interfaccia Il Client non deve “vedere” tutti i record di Subfile Il Client non deve “vedere” tutti i record di Subfile
per Esportarli, Ordinarli, Gerarchizzarli, Filtrarli, ecc.per Esportarli, Ordinarli, Gerarchizzarli, Filtrarli, ecc. Parziale abbandono degli *USRIDX nel rapporto Parziale abbandono degli *USRIDX nel rapporto
Client/ServerClient/Server Non è richiesta nessuna ri-conversione dei Non è richiesta nessuna ri-conversione dei
programmi attualiprogrammi attuali
Progetto Getra Graphic
44
Nuova architettura di Webgate400Nuova architettura di Webgate400
Svantaggi:Svantaggi:
Questa pagina è stata intenzionalmente lasciata vuotaQuesta pagina è stata intenzionalmente lasciata vuota
Progetto Getra Graphic
55
Nuova architettura di Webgate400Nuova architettura di Webgate400Attivazione:Attivazione: Agendo sul file WG4SYSFD/ODAZI (record Agendo sul file WG4SYSFD/ODAZI (record
EDM/999999)EDM/999999)
Da Gestione Ambienti On DemandDa Gestione Ambienti On Demand
Progetto Getra Graphic
66
Implementazioni “semplici” Implementazioni “semplici” InterfacciaInterfaccia
Combinazione tasti ALT+R per simulare Combinazione tasti ALT+R per simulare tasto destro del mouse su incrocio subfiletasto destro del mouse su incrocio subfile
Combinazione tasti ALT+O per ordinare Combinazione tasti ALT+O per ordinare colonne subfilecolonne subfile
Modalità esposizione Tasti Funzione Modalità esposizione Tasti Funzione Modalità esposizione Opzioni SubfileModalità esposizione Opzioni Subfile Modalità visualizzazione Posizione CursoreModalità visualizzazione Posizione Cursore Modalità Rotella del Mouse (wheel mouse): Modalità Rotella del Mouse (wheel mouse):
Progetto Getra Graphic
77
Implementazioni “semplici” Implementazioni “semplici” InterfacciaInterfaccia
Marcatura Campi Input Subfile.Marcatura Campi Input Subfile.
Espansione Subfile in Windows : *fmtatr2193=R(1)Espansione Subfile in Windows : *fmtatr2193=R(1) SFLRCDNBR: (CURSOR *TOP)SFLRCDNBR: (CURSOR *TOP) Svuotamento Buffer Tastiera: non tipo CTRL 5250 Svuotamento Buffer Tastiera: non tipo CTRL 5250
(Ripristino) ma attivo/disattivo(Ripristino) ma attivo/disattivo Blocco colonne Subfile (impedire lo scorrimento Blocco colonne Subfile (impedire lo scorrimento
delle colonne oltre l'area di visualizzazione)delle colonne oltre l'area di visualizzazione)
Progetto Getra Graphic
88
Nuova “Configurazione Runtime”Nuova “Configurazione Runtime” Nuovo look interfaccia principaleNuovo look interfaccia principale Ripartite logicamente le “Gestioni”Ripartite logicamente le “Gestioni”
Più chiare (e immediate) le selezioniPiù chiare (e immediate) le selezioni
Personalizzabili chiamatePersonalizzabili chiamatefunzioni Sistemafunzioni Sistema
Progetto Getra Graphic
99
Implementazioni “avanzate” Implementazioni “avanzate” interfacciainterfaccia
Filtri SubfileFiltri Subfile Solo per Designer/Abilitati a FiltriSolo per Designer/Abilitati a Filtri Si attivano premendo ALT+F (cursore nel subfile)Si attivano premendo ALT+F (cursore nel subfile) Semplici o Composti (1 o più righe di filtro)Semplici o Composti (1 o più righe di filtro) Vengono applicati in Vengono applicati in
AND se applicati AND se applicati sulla stessa riga, in sulla stessa riga, in OR tra più righe)OR tra più righe)
Click su pulsante elencoClick su pulsante elencoper aprire il filtro guidatoper aprire il filtro guidato
Progetto Getra Graphic
1010
Implementazioni “avanzate” Implementazioni “avanzate” interfacciainterfaccia
Filtri SubfileFiltri Subfile Sintassi SQL (where). Sintassi SQL (where).
Esempio 1:Esempio 1:– Filtrare i clienti che hanno avuto movimenti Filtrare i clienti che hanno avuto movimenti
nell’anno xxxxnell’anno xxxxIN(IN(
SELECT jcdcan FROM jfcmv03l WHERE SELECT jcdcan FROM jfcmv03l WHERE jcdsoc='001' AND jcdsoc='001' AND jcdtan='C' AND jdtreg jcdtan='C' AND jdtreg BETWEEN 20070101 AND 20071231BETWEEN 20070101 AND 20071231
))
Progetto Getra Graphic
1111
Implementazioni “avanzate” Implementazioni “avanzate” interfacciainterfaccia
Filtri SubfileFiltri Subfile……continua Sintassi SQL (where). continua Sintassi SQL (where).
Esempio 2:Esempio 2:– Filtrare i clienti che hanno prodotto (in totale) più di Filtrare i clienti che hanno prodotto (in totale) più di
yyyyyyyyyyyy
IN(IN(
SELECT fmtccl FROM prd5000f SELECT fmtccl FROM prd5000f
GROUP BY fmtccl GROUP BY fmtccl
HAVING SUM(fmsnmt01)<3000HAVING SUM(fmsnmt01)<3000
))
Progetto Getra Graphic
1212
Implementazioni “avanzate” Implementazioni “avanzate” interfacciainterfaccia
Filtri SubfileFiltri Subfile……continua Sintassi SQL (where). continua Sintassi SQL (where).
Esempio 3:Esempio 3:– Filtrare solo i clienti di una provincia (campo non Filtrare solo i clienti di una provincia (campo non
presente nel subfile)presente nel subfile)
IN(IN(
SELECT jancan FROM jfana00f WHERE SELECT jancan FROM jfana00f WHERE
jansoc='001' and jansoc='001' and
jantan='C' and jantan='C' and
janprv='BS‘janprv='BS‘
))
Progetto Getra Graphic
1313
Implementazioni “avanzate” Implementazioni “avanzate” interfacciainterfaccia
Filtri SubfileFiltri Subfile……continua Sintassi SQL (where). continua Sintassi SQL (where).
Esempio 4:Esempio 4:– Filtrare solo i clienti che si chiamano “ROSSI”Filtrare solo i clienti che si chiamano “ROSSI”
LIKE ‘%ROSSI’LIKE ‘%ROSSI’
OppureOppure
LIKE ROSSILIKE ROSSI
Progetto Getra Graphic
1414
Implementazioni “avanzate” Implementazioni “avanzate” interfacciainterfaccia
Filtri SubfileFiltri Subfile……continua Sintassi SQL (where). continua Sintassi SQL (where).
Per i campi alfabetici gli apici (') non sono Per i campi alfabetici gli apici (') non sono obbligatoriobbligatori
Se non specificato nessun operatore si assume = Se non specificato nessun operatore si assume = (uguale)(uguale)
Per l’istruzione LIKE se non indicato viene assunto Per l’istruzione LIKE se non indicato viene assunto automaticamente in testa e in coda il simbolo % automaticamente in testa e in coda il simbolo % (percentuale)(percentuale)
Progetto Getra Graphic
1515
Implementazioni “avanzate” Implementazioni “avanzate” interfacciainterfaccia
Filtri SubfileFiltri SubfileSalvataggio Filtri con Estremi PersonalizzazioneSalvataggio Filtri con Estremi Personalizzazione
Progetto Getra Graphic
1616
Implementazioni “avanzate” Implementazioni “avanzate” interfacciainterfaccia
Filtri SubfileFiltri SubfileRichiamo filtri salvatiRichiamo filtri salvati
L’applicazione di un filtro L’applicazione di un filtro è percepibile perché l’intestazioneè percepibile perché l’intestazionedi colonna diventa Rossadi colonna diventa Rossa
Progetto Getra Graphic
1717
Implementazioni “avanzate” Implementazioni “avanzate” interfacciainterfaccia
Accesso non VedentiAccesso non VedentiE’ possibile attivare la “voce” a Webgate400, utile E’ possibile attivare la “voce” a Webgate400, utile
soprattutto per gli utenti non vedenti.soprattutto per gli utenti non vedenti.
Si attiva dal menù “?” attraverso la voce “Abilita Si attiva dal menù “?” attraverso la voce “Abilita Lettura”Lettura”
Vengono lette automaticamente le informazioni di Vengono lette automaticamente le informazioni di Login e ogni titolo Finestra (ALT+T per rileggerlo).Login e ogni titolo Finestra (ALT+T per rileggerlo).
Attraverso poi gli “Attributi Oggetti” è possibile Attraverso poi gli “Attributi Oggetti” è possibile impostare quali “etichette+valore campo” verranno impostare quali “etichette+valore campo” verranno letti.letti.
Progetto Getra Graphic
1818
Implementazioni “avanzate” Implementazioni “avanzate” interfacciainterfaccia
Aggiunta colonne subfileAggiunta colonne subfileTramite un apposita interfaccia Tramite un apposita interfaccia
(richiamabile dal menù Strumenti-(richiamabile dal menù Strumenti-Personalizzazioni-Aggiunta Colonne) Personalizzazioni-Aggiunta Colonne) sarà possibile aggiungere colonne ai subfile.sarà possibile aggiungere colonne ai subfile.
In generale, i campi/colonne recuperati nei formati In generale, i campi/colonne recuperati nei formati record presenti verranno descritti tramite la forma record presenti verranno descritti tramite la forma &nomeformato.nomecampo (oppure solo &nomeformato.nomecampo (oppure solo &nomecampo se il formato è lo stesso su cui viene &nomecampo se il formato è lo stesso su cui viene fatta la personalizzazione). fatta la personalizzazione).
Progetto Getra Graphic
1919
Implementazioni “avanzate” Implementazioni “avanzate” interfacciainterfaccia
Aggiunta colonne subfileAggiunta colonne subfileI campi che possono essere aggiunti possono essere I campi che possono essere aggiunti possono essere
valorizzati in quattro modalità diverse:valorizzati in quattro modalità diverse: DECODIFICHEDECODIFICHE EXIT PROGRAMEXIT PROGRAM FORMULE MATEMATICHEFORMULE MATEMATICHE ISTRUZIONI SQLISTRUZIONI SQL
Progetto Getra Graphic
2020
Implementazioni “avanzate” Implementazioni “avanzate” interfacciainterfaccia
Aggiunta colonne subfile: Parte comuneAggiunta colonne subfile: Parte comuneTutti i 4 tipi di aggiunta hanno in comune il primo Tutti i 4 tipi di aggiunta hanno in comune il primo
pannello di dati:pannello di dati:
Progetto Getra Graphic
2121
Implementazioni “avanzate” Implementazioni “avanzate” interfacciainterfaccia
Aggiunta colonne subfile: DecodificheAggiunta colonne subfile: Decodifiche
Nel dizionario di Webgate400 viene codificato per Nel dizionario di Webgate400 viene codificato per ogni campo che programma usare per ogni campo che programma usare per decodificarlo (tecnica usata anche in DBLink, decodificarlo (tecnica usata anche in DBLink, FastQuery, ecc.)FastQuery, ecc.)
Il programma chiamato ha una struttura di Il programma chiamato ha una struttura di parametri fissa, ma potrebbe essere usato un parametri fissa, ma potrebbe essere usato un pgm standard per le decodifiche utilizzata pgm standard per le decodifiche utilizzata attraverso il files DECODattraverso il files DECOD
Progetto Getra Graphic
2222
Implementazioni “avanzate” Implementazioni “avanzate” interfacciainterfaccia
Aggiunta colonne subfile: DecodificheAggiunta colonne subfile: DecodificheI parametri di questo programma di decodifica I parametri di questo programma di decodifica
saranno:saranno:
Per le decodifiche composte, è previsto il “campo Per le decodifiche composte, è previsto il “campo associato”associato”
Progetto Getra Graphic
2323
Implementazioni “avanzate” Implementazioni “avanzate” interfacciainterfaccia
Aggiunta colonne subfile: Exit ProgramAggiunta colonne subfile: Exit Program
Verrà richiamato il programma dichiarato passando due Verrà richiamato il programma dichiarato passando due particolari strutture di parametri: particolari strutture di parametri:
La prima è unica e identificherà quante strutture del La prima è unica e identificherà quante strutture del secondo tipo verranno passate, che dimensione secondo tipo verranno passate, che dimensione avranno e in quale struttura c’è il campo che si deve avranno e in quale struttura c’è il campo che si deve valorizzarevalorizzare
La seconda struttura verrà ripetuta “n” volte e La seconda struttura verrà ripetuta “n” volte e contiene l’intero elenco dei campi del formato record contiene l’intero elenco dei campi del formato record con le sue caratteristiche, compreso dove nel buffer con le sue caratteristiche, compreso dove nel buffer si trova il datosi trova il dato
Progetto Getra Graphic
2424
Implementazioni “avanzate” Implementazioni “avanzate” interfacciainterfaccia
Aggiunta colonne subfile: Exit ProgramAggiunta colonne subfile: Exit ProgramQueste sono le strutture: vedere esempio CWG009Queste sono le strutture: vedere esempio CWG009
Progetto Getra Graphic
2525
Implementazioni “avanzate” Implementazioni “avanzate” interfacciainterfaccia
Aggiunta colonne subfile: FormulaAggiunta colonne subfile: Formula
Valgono le () e sono ammessi i classici operatori Valgono le () e sono ammessi i classici operatori algebrici.algebrici.
Dovendo far riferimento ad un dato presente su un Dovendo far riferimento ad un dato presente su un altro formato (esposto): &nomeformato.nomecampoaltro formato (esposto): &nomeformato.nomecampo
Progetto Getra Graphic
2626
Implementazioni “avanzate” Implementazioni “avanzate” interfacciainterfaccia
Aggiunta colonne subfile: SQLAggiunta colonne subfile: SQL
Rispettando la sintassi dell’SQL, è possibile fare delle Rispettando la sintassi dell’SQL, è possibile fare delle “SELECT” utilizzando come WHERE I campi presenti “SELECT” utilizzando come WHERE I campi presenti a video (non necessariamente lo stesso formato).a video (non necessariamente lo stesso formato).
Per sfruttare il fatto che da una Select potremmo Per sfruttare il fatto che da una Select potremmo recuperare più campi, è stato introdotto il concetto recuperare più campi, è stato introdotto il concetto di campo “Master” e campo “Slave”. Quindi può di campo “Master” e campo “Slave”. Quindi può essere eseguita una sola Select che popola più essere eseguita una sola Select che popola più colonne aggiunte.colonne aggiunte.
Progetto Getra Graphic
2727
Implementazioni “avanzate” Implementazioni “avanzate” interfacciainterfaccia
Aggiunta colonne subfile: SQLAggiunta colonne subfile: SQL
Nel caso riportato sopra, la Select riguarda più campi: Nel caso riportato sopra, la Select riguarda più campi: JANIN1, JANIN2, JANLOC, JANPRVJANIN1, JANIN2, JANLOC, JANPRV
Se non diversamente specificato, il primo campo in Se non diversamente specificato, il primo campo in Select viene utilizzato per popolare questa colonna Select viene utilizzato per popolare questa colonna aggiunta. Il nome della nuova colonna sarà aggiunta. Il nome della nuova colonna sarà utilizzato come “Master” in modo da ripartire gli altri utilizzato come “Master” in modo da ripartire gli altri campi (JANIN2, JANLOC, JANPRV) su altrettanti campi (JANIN2, JANLOC, JANPRV) su altrettanti nuove colonne aggiunte.nuove colonne aggiunte.
Progetto Getra Graphic
2828
Implementazioni “avanzate” Implementazioni “avanzate” interfacciainterfaccia
Aggiunta colonne subfile: SQLAggiunta colonne subfile: SQL
Nel caso riportato sopra, la Select riguarda più campi: Nel caso riportato sopra, la Select riguarda più campi: JANIN1, JANIN2, JANLOC, JANPRVJANIN1, JANIN2, JANLOC, JANPRV
Se non diversamente specificato, il primo campo in Se non diversamente specificato, il primo campo in Select viene utilizzato per popolare questa colonna Select viene utilizzato per popolare questa colonna aggiunta. Il nome della nuova colonna sarà aggiunta. Il nome della nuova colonna sarà utilizzato come “Master” in modo da ripartire gli altri utilizzato come “Master” in modo da ripartire gli altri campi (JANIN2, JANLOC, JANPRV) su altrettanti campi (JANIN2, JANLOC, JANPRV) su altrettanti nuove colonne aggiunte.nuove colonne aggiunte.
Progetto Getra Graphic
2929
Implementazioni “avanzate” Implementazioni “avanzate” interfacciainterfacciaAggiunta colonne subfile: SQLAggiunta colonne subfile: SQL
Questo sarà quello che metteremo nel secondo Questo sarà quello che metteremo nel secondo campo aggiunto (il “Campo Riferimento” è campo aggiunto (il “Campo Riferimento” è utile se il nome del campo aggiunto è diverso utile se il nome del campo aggiunto è diverso da quello utilizzato nel comporre lo statement da quello utilizzato nel comporre lo statement Sql sul campo Master)Sql sul campo Master)
E così via…..E così via…..
Progetto Getra Graphic
3030
Implementazioni “avanzate” Implementazioni “avanzate” interfacciainterfacciaI ColoriI Colori
La gestione dei colori avviene La gestione dei colori avviene tramite il menù Strumenti + tramite il menù Strumenti + Gestione Colori.Gestione Colori.
Un utente Designer puòUn utente Designer puòmemorizzare i colori scelti.memorizzare i colori scelti.
Le impostazioni Company/Utente vengono Le impostazioni Company/Utente vengono salvate su IFS nella cartella /webgate400/styles salvate su IFS nella cartella /webgate400/styles (crearla se assente). Le impostazioni di default (crearla se assente). Le impostazioni di default devono essere create da un Client e poi copiate devono essere create da un Client e poi copiate dalla cartella di cache /IndirizzoIP/Styles alla dalla cartella di cache /IndirizzoIP/Styles alla cartella /webgate400/styles, chiamando l’XML: cartella /webgate400/styles, chiamando l’XML: default.xmldefault.xml
Progetto Getra Graphic
3131
Alcune “facility” di Webgate400Alcune “facility” di Webgate400Le Tabs e gli attributi di formato:Le Tabs e gli attributi di formato:Sono SQL con cui possiamo “arricchire” un video Sono SQL con cui possiamo “arricchire” un video
direttamente da interfaccia.direttamente da interfaccia.Possono essere:Possono essere: Statiche (la “where” è fissa)Statiche (la “where” è fissa) Dinamiche (la “where” è legata a qualche altro Dinamiche (la “where” è legata a qualche altro
campo presente a video (sia parte fissa che subfile)campo presente a video (sia parte fissa che subfile)Non dobbiamo dimenticare che all’interno delle Tabs, Non dobbiamo dimenticare che all’interno delle Tabs,
possiamo utilizzare i “Format Attribute” di possiamo utilizzare i “Format Attribute” di Webgate400 per creare Gerarchizzazioni (con Webgate400 per creare Gerarchizzazioni (con Riepiloghi) e possiamo anche introdurre le chiavi Riepiloghi) e possiamo anche introdurre le chiavi per poter generare un grafico.per poter generare un grafico.
Progetto Getra Graphic
3232
Alcune “facility” di Webgate400Alcune “facility” di Webgate400Le Tabs e gli attributi di formato:Le Tabs e gli attributi di formato:Il programma CWG002 altro non è che un video vuoto Il programma CWG002 altro non è che un video vuoto
(lato codice, solo EXFMT), e attraverso questa Tabs(lato codice, solo EXFMT), e attraverso questa Tabs
diventa qualcosa di fruibilediventa qualcosa di fruibile
Progetto Getra Graphic
3333
Alcune “facility” di Webgate400Alcune “facility” di Webgate400Le Tabs e gli attributi di formato:Le Tabs e gli attributi di formato:Addirittura in grado, premendo l’apposito pulstante Addirittura in grado, premendo l’apposito pulstante
di produrre immediatamente un grafico.di produrre immediatamente un grafico.
Progetto Getra Graphic
3434
Alcune “facility” di Webgate400Alcune “facility” di Webgate400Immagini e Button Image:Immagini e Button Image:Facilmente vengono messe nei form Immagini, Facilmente vengono messe nei form Immagini,
Text Icons e Extended Icons (per I Button Text Icons e Extended Icons (per I Button Image).Image).
E’ utile ricordare che è possibile utilizzare E’ utile ricordare che è possibile utilizzare proprie immagini (soprattutto .ico), magari proprie immagini (soprattutto .ico), magari mettendole in una sottocartella della mettendole in una sottocartella della /WGPublic./WGPublic.
Sia per le Text Icons che per le Extended Icons Sia per le Text Icons che per le Extended Icons è utile ricordare che per “standardizzare” le è utile ricordare che per “standardizzare” le descrizioni associate è possibile codificale nel descrizioni associate è possibile codificale nel file XFIMG della propria libreria oggetti (anche file XFIMG della propria libreria oggetti (anche quando hanno associato un comando)quando hanno associato un comando)
Progetto Getra Graphic
3535
Alcune “facility” di Webgate400Alcune “facility” di Webgate400Keyword “poco” conosciute:Keyword “poco” conosciute: <w>*hide</w>: utilizzata sui campi Hidden, <w>*hide</w>: utilizzata sui campi Hidden,
impedisce che un informazione non utile in impedisce che un informazione non utile in grafica venga passata dal Server al Client.grafica venga passata dal Server al Client.
<w>*cpyright</w>: <w>*cpyright</w>: abbinata a un campo abbinata a un campo del formato video, ne sposta il contenuto al del formato video, ne sposta il contenuto al posto della dicitura ‘Powered by IBM ISeries’ posto della dicitura ‘Powered by IBM ISeries’ (se questa dicitura è disabilitata a livello di (se questa dicitura è disabilitata a livello di configurazione runtime)… configurazione runtime)…
<w>*fit</w>: adatta le immagini alla <w>*fit</w>: adatta le immagini alla dimensione reale del campo.dimensione reale del campo.
Progetto Getra Graphic
3636
Alcune “facility” di Webgate400Alcune “facility” di Webgate400Keyword “poco” conosciute:Keyword “poco” conosciute: <w><h>intestazione_colonna</h></w>: <w><h>intestazione_colonna</h></w>:
– Semplice: una sola descrizioneSemplice: una sola descrizione– Condivise: si raggruppano diverse intestazioni tramite una Condivise: si raggruppano diverse intestazioni tramite una
parte comune: se contigue l’effetto è:parte comune: se contigue l’effetto è:– Variabile: <h>nomeFormato.nomevariabile</h>Variabile: <h>nomeFormato.nomevariabile</h>– File Messaggi: <h>&filemessaggi.mic</h> File Messaggi: <h>&filemessaggi.mic</h>
In tutti I casi, se presente anche costante/variabile a video, è In tutti I casi, se presente anche costante/variabile a video, è necessario attribuirle la keyword (<w>*ignore</w>)necessario attribuirle la keyword (<w>*ignore</w>)
Progetto Getra Graphic
3737
Più avanti nella ModernizzazionePiù avanti nella Modernizzazione%Bif:%Bif:E’ possibile utilizzare le %Bif (Build in E’ possibile utilizzare le %Bif (Build in
Function) anche quando riguardano le Function) anche quando riguardano le operazioni di I/O con il DSPF: operazioni di I/O con il DSPF: Chain Subfile Chain Subfile If %Found(Subfile); ReadC Subfile If %Found(Subfile); ReadC Subfile
If %Eof(Subfile) If %Eof(Subfile)L’unico prerequisito è che dopo la %Bif sia sempre L’unico prerequisito è che dopo la %Bif sia sempre
dichiarato il nome del formato record utilizzato.dichiarato il nome del formato record utilizzato.
Rpg/free:Rpg/free:E’ possibile utilizzare l’RPG/Free anche per le E’ possibile utilizzare l’RPG/Free anche per le
parti di gestione del DSPF.parti di gestione del DSPF.
Progetto Getra Graphic
3838
Più avanti nella ModernizzazionePiù avanti nella ModernizzazioneDrag & Drop:Drag & Drop:L’effetto del Drag & Drop avviene tramite un L’effetto del Drag & Drop avviene tramite un
particolare tipo di Service Command.particolare tipo di Service Command.
Viene invocato il Service Command quando uno o più Viene invocato il Service Command quando uno o più elementi a video specifici vengono “draggati”. Il elementi a video specifici vengono “draggati”. Il Comando può già autonomamente chiamare dei Comando può già autonomamente chiamare dei componenti di “Gestione dell’oggetto” componenti di “Gestione dell’oggetto” (Interrogazione, Modifica, Cancellazione, Stampa), (Interrogazione, Modifica, Cancellazione, Stampa), oppure compiere un azione che un altro oppure compiere un azione che un altro programma, attraverso un artificio (non esistono programma, attraverso un artificio (non esistono eventi in RPG!), può intercettare.eventi in RPG!), può intercettare.
Progetto Getra Graphic
3939
Più avanti nella ModernizzazionePiù avanti nella ModernizzazioneDrag & Drop:Drag & Drop:Gli esempi CWG004 e CWG005 sono stati predisposti Gli esempi CWG004 e CWG005 sono stati predisposti
proprio per dimostrarne l’effetto.proprio per dimostrarne l’effetto.
Dal pgm Origine (CWG004) sarà possibile “draggare” Dal pgm Origine (CWG004) sarà possibile “draggare” uno o più Codici Cliente nel pgm Destinazione uno o più Codici Cliente nel pgm Destinazione (CWG005)(CWG005)
Progetto Getra Graphic
4040
Più avanti nella ModernizzazionePiù avanti nella ModernizzazioneDrag & Drop:Drag & Drop:Il Service Command è stato realizzato in questo modo: Il Service Command è stato realizzato in questo modo:
da notare il 1° parametro ‘*DS’ e 6° che è ‘&5’ e da notare il 1° parametro ‘*DS’ e 6° che è ‘&5’ e non ‘%5’non ‘%5’
Progetto Getra Graphic
4141
Più avanti nella ModernizzazionePiù avanti nella ModernizzazioneLOBS: LOBS: Gestione di oggetti complessi all'interno di applicazioni Gestione di oggetti complessi all'interno di applicazioni
5250 convertite Webgate400.5250 convertite Webgate400.Obiettivo: poter gestire oggetti esterni come fossero Obiettivo: poter gestire oggetti esterni come fossero
dati nativi delle applicazioni, utilizzando una tecnica dati nativi delle applicazioni, utilizzando una tecnica simile a quella utilizzata per la gestione dei simile a quella utilizzata per la gestione dei CLOB/BLOB dal DB/2, ma semplificata dal punto di CLOB/BLOB dal DB/2, ma semplificata dal punto di vista della programmazione.vista della programmazione.
L’utilizzo richiede conoscenza delle tecniche di L’utilizzo richiede conoscenza delle tecniche di realizzazione e gestione degli oggetti CLOB realizzazione e gestione degli oggetti CLOB (Character Large Object) o BLOB (Binary Large (Character Large Object) o BLOB (Binary Large Object):Object):
No!!No!!
Progetto Getra Graphic
4242
Più avanti nella ModernizzazionePiù avanti nella ModernizzazioneLOBS: LOBS: Alla data sono gestiti due tipi di oggetti LOB: Txt e MhtAlla data sono gestiti due tipi di oggetti LOB: Txt e MhtL’esempio CWG003 dimostra l’utilizzo di entrambe i L’esempio CWG003 dimostra l’utilizzo di entrambe i
controlli.controlli.I campi lob devono avere il nome con il prefisso WLOB_ I campi lob devono avere il nome con il prefisso WLOB_
e devono necessariamente essere lunghi 18Char. e devono necessariamente essere lunghi 18Char. Devono avere la TEXT <lob> … </lob>, qualificante Devono avere la TEXT <lob> … </lob>, qualificante
come negli esempi seguenti:come negli esempi seguenti:<w><lob>txt h:10 w:80 s:F1 d:F4 l:F5 </lob></w><w><lob>txt h:10 w:80 s:F1 d:F4 l:F5 </lob></w><w><lob>mht h:10 w:80 s:F1 d:F4 l:F5</lob></w><w><lob>mht h:10 w:80 s:F1 d:F4 l:F5</lob></w>
Le key s: (tasto save), d: (tasto delete), l: (tasto lose Le key s: (tasto save), d: (tasto delete), l: (tasto lose change)change)
Progetto Getra Graphic
4343
Più avanti nella ModernizzazionePiù avanti nella ModernizzazioneLOBS: LOBS: Il programmatore deve fondamentalmente occuparsi Il programmatore deve fondamentalmente occuparsi
di salvare sui suoi normali archivi il campo lungo di salvare sui suoi normali archivi il campo lungo 18Char!18Char!
Vengono archiviati su IFS in un particolare percorso:Vengono archiviati su IFS in un particolare percorso:/WGPublic/Lobs/lobstore_subdir/annomese/UNIDE.xx/WGPublic/Lobs/lobstore_subdir/annomese/UNIDE.xxxx
I Lobs possono essere trasportati da un sistema I Lobs possono essere trasportati da un sistema all’altro semplicemente salvando e ripristinando la all’altro semplicemente salvando e ripristinando la directory IFS che li contiene (non va mai salvato il directory IFS che li contiene (non va mai salvato il loro indice).loro indice).
Hanno una serie di Api per automatizzare alcune Hanno una serie di Api per automatizzare alcune funzioni: Copia, Rebuild index, Delete, ecc.funzioni: Copia, Rebuild index, Delete, ecc.
Progetto Getra Graphic
4444
Più avanti nella ModernizzazionePiù avanti nella ModernizzazioneLOBS: LOBS: Il Lobs “Txt” è un oggetto che permette di gestire a Il Lobs “Txt” è un oggetto che permette di gestire a
video un editor avanzato (anche se solo testuale) e video un editor avanzato (anche se solo testuale) e permette di creare/modificare/stampare testi permette di creare/modificare/stampare testi direttamente dai pgm. direttamente dai pgm.
Progetto Getra Graphic
4545
Più avanti nella ModernizzazionePiù avanti nella ModernizzazioneLOBS: LOBS: Il Lobs “Mht” è un oggetto che permette di gestire a Il Lobs “Mht” è un oggetto che permette di gestire a
video un editor avanzato (quello di Outlook Express) video un editor avanzato (quello di Outlook Express) e permette di creare/modificare documenti e permette di creare/modificare documenti direttamente dai pgm. direttamente dai pgm.
Progetto Getra Graphic
4646
Più avanti nella ModernizzazionePiù avanti nella ModernizzazioneScript e WGEXEIOUT: Script e WGEXEIOUT: Alcuni applicativi creano/gestiscono documenti Alcuni applicativi creano/gestiscono documenti
(tipo .pdf, .doc, .xls, .html, .xml) e hanno la (tipo .pdf, .doc, .xls, .html, .xml) e hanno la necessità di aprirli da un programma.necessità di aprirli da un programma.
L’utilizzo dell’STRPCCMD (anche emulato da L’utilizzo dell’STRPCCMD (anche emulato da Webgate400) funziona se il documento è già sul PC Webgate400) funziona se il documento è già sul PC (o in un percorso di rete).(o in un percorso di rete).
Se invece l’oggetto è su IFS (non condiviso) è possibile Se invece l’oggetto è su IFS (non condiviso) è possibile usare il componente WGEXEIOUT per aprire il usare il componente WGEXEIOUT per aprire il documento da programma.documento da programma.
Progetto Getra Graphic
4747
Più avanti nella ModernizzazionePiù avanti nella ModernizzazioneScript e WGEXEIOUT: Script e WGEXEIOUT: L’esempio CWG008 dimostra come sia possibile creare L’esempio CWG008 dimostra come sia possibile creare
un semplice files HTML su IFS per poi aprirlo un semplice files HTML su IFS per poi aprirlo direttamente.direttamente.
La stessa cosa può essere utilizzata tramite Link La stessa cosa può essere utilizzata tramite Link (exei://) richiamando un programma RPG: Il Print (exei://) richiamando un programma RPG: Il Print Box di Webgate400, fondamentalmente fa questo.Box di Webgate400, fondamentalmente fa questo.
Progetto Getra Graphic
4848
…….fine…..fine….
Grazie a tutti dell’attenzione!Grazie a tutti dell’attenzione!
Progetto Getra Graphic