1 Argomenti della Giornata Nuova architettura di Webgate400 Nuova architettura di Webgate400...

48
1 Argomenti della Giornata Argomenti della Giornata Nuova architettura di Webgate400 Nuova architettura di Webgate400 Implementazioni “semplici” Implementazioni “semplici” Interfaccia Interfaccia Nuova “Configurazione Runtime” Nuova “Configurazione Runtime” Implementazioni “avanzate” Implementazioni “avanzate” Interfaccia Interfaccia Alcune “facility” di Webgate400 Alcune “facility” di Webgate400 Più avanti” nella Modernizzazione Più avanti” nella Modernizzazione Progetto Getra Graphic

Transcript of 1 Argomenti della Giornata Nuova architettura di Webgate400 Nuova architettura di Webgate400...

Page 1: 1 Argomenti della Giornata Nuova architettura di Webgate400 Nuova architettura di Webgate400 Implementazioni semplici Interfaccia Implementazioni semplici.

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

Page 2: 1 Argomenti della Giornata Nuova architettura di Webgate400 Nuova architettura di Webgate400 Implementazioni semplici Interfaccia Implementazioni semplici.

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

Page 3: 1 Argomenti della Giornata Nuova architettura di Webgate400 Nuova architettura di Webgate400 Implementazioni semplici Interfaccia Implementazioni semplici.

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

Page 4: 1 Argomenti della Giornata Nuova architettura di Webgate400 Nuova architettura di Webgate400 Implementazioni semplici Interfaccia Implementazioni semplici.

44

Nuova architettura di Webgate400Nuova architettura di Webgate400

Svantaggi:Svantaggi:

Questa pagina è stata intenzionalmente lasciata vuotaQuesta pagina è stata intenzionalmente lasciata vuota

Progetto Getra Graphic

Page 5: 1 Argomenti della Giornata Nuova architettura di Webgate400 Nuova architettura di Webgate400 Implementazioni semplici Interfaccia Implementazioni semplici.

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

Page 6: 1 Argomenti della Giornata Nuova architettura di Webgate400 Nuova architettura di Webgate400 Implementazioni semplici Interfaccia Implementazioni semplici.

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

Page 7: 1 Argomenti della Giornata Nuova architettura di Webgate400 Nuova architettura di Webgate400 Implementazioni semplici Interfaccia Implementazioni semplici.

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

Page 8: 1 Argomenti della Giornata Nuova architettura di Webgate400 Nuova architettura di Webgate400 Implementazioni semplici Interfaccia Implementazioni semplici.

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

Page 9: 1 Argomenti della Giornata Nuova architettura di Webgate400 Nuova architettura di Webgate400 Implementazioni semplici Interfaccia Implementazioni semplici.

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

Page 10: 1 Argomenti della Giornata Nuova architettura di Webgate400 Nuova architettura di Webgate400 Implementazioni semplici Interfaccia Implementazioni semplici.

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

Page 11: 1 Argomenti della Giornata Nuova architettura di Webgate400 Nuova architettura di Webgate400 Implementazioni semplici Interfaccia Implementazioni semplici.

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

Page 12: 1 Argomenti della Giornata Nuova architettura di Webgate400 Nuova architettura di Webgate400 Implementazioni semplici Interfaccia Implementazioni semplici.

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

Page 13: 1 Argomenti della Giornata Nuova architettura di Webgate400 Nuova architettura di Webgate400 Implementazioni semplici Interfaccia Implementazioni semplici.

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

Page 14: 1 Argomenti della Giornata Nuova architettura di Webgate400 Nuova architettura di Webgate400 Implementazioni semplici Interfaccia Implementazioni semplici.

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

Page 15: 1 Argomenti della Giornata Nuova architettura di Webgate400 Nuova architettura di Webgate400 Implementazioni semplici Interfaccia Implementazioni semplici.

1515

Implementazioni “avanzate” Implementazioni “avanzate” interfacciainterfaccia

Filtri SubfileFiltri SubfileSalvataggio Filtri con Estremi PersonalizzazioneSalvataggio Filtri con Estremi Personalizzazione

Progetto Getra Graphic

Page 16: 1 Argomenti della Giornata Nuova architettura di Webgate400 Nuova architettura di Webgate400 Implementazioni semplici Interfaccia Implementazioni semplici.

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

Page 17: 1 Argomenti della Giornata Nuova architettura di Webgate400 Nuova architettura di Webgate400 Implementazioni semplici Interfaccia Implementazioni semplici.

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

Page 18: 1 Argomenti della Giornata Nuova architettura di Webgate400 Nuova architettura di Webgate400 Implementazioni semplici Interfaccia Implementazioni semplici.

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

Page 19: 1 Argomenti della Giornata Nuova architettura di Webgate400 Nuova architettura di Webgate400 Implementazioni semplici Interfaccia Implementazioni semplici.

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

Page 20: 1 Argomenti della Giornata Nuova architettura di Webgate400 Nuova architettura di Webgate400 Implementazioni semplici Interfaccia Implementazioni semplici.

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

Page 21: 1 Argomenti della Giornata Nuova architettura di Webgate400 Nuova architettura di Webgate400 Implementazioni semplici Interfaccia Implementazioni semplici.

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

Page 22: 1 Argomenti della Giornata Nuova architettura di Webgate400 Nuova architettura di Webgate400 Implementazioni semplici Interfaccia Implementazioni semplici.

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

Page 23: 1 Argomenti della Giornata Nuova architettura di Webgate400 Nuova architettura di Webgate400 Implementazioni semplici Interfaccia Implementazioni semplici.

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

Page 24: 1 Argomenti della Giornata Nuova architettura di Webgate400 Nuova architettura di Webgate400 Implementazioni semplici Interfaccia Implementazioni semplici.

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

Page 25: 1 Argomenti della Giornata Nuova architettura di Webgate400 Nuova architettura di Webgate400 Implementazioni semplici Interfaccia Implementazioni semplici.

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

Page 26: 1 Argomenti della Giornata Nuova architettura di Webgate400 Nuova architettura di Webgate400 Implementazioni semplici Interfaccia Implementazioni semplici.

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

Page 27: 1 Argomenti della Giornata Nuova architettura di Webgate400 Nuova architettura di Webgate400 Implementazioni semplici Interfaccia Implementazioni semplici.

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

Page 28: 1 Argomenti della Giornata Nuova architettura di Webgate400 Nuova architettura di Webgate400 Implementazioni semplici Interfaccia Implementazioni semplici.

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

Page 29: 1 Argomenti della Giornata Nuova architettura di Webgate400 Nuova architettura di Webgate400 Implementazioni semplici Interfaccia Implementazioni semplici.

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

Page 30: 1 Argomenti della Giornata Nuova architettura di Webgate400 Nuova architettura di Webgate400 Implementazioni semplici Interfaccia Implementazioni semplici.

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

Page 31: 1 Argomenti della Giornata Nuova architettura di Webgate400 Nuova architettura di Webgate400 Implementazioni semplici Interfaccia Implementazioni semplici.

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

Page 32: 1 Argomenti della Giornata Nuova architettura di Webgate400 Nuova architettura di Webgate400 Implementazioni semplici Interfaccia Implementazioni semplici.

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

Page 33: 1 Argomenti della Giornata Nuova architettura di Webgate400 Nuova architettura di Webgate400 Implementazioni semplici Interfaccia Implementazioni semplici.

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

Page 34: 1 Argomenti della Giornata Nuova architettura di Webgate400 Nuova architettura di Webgate400 Implementazioni semplici Interfaccia Implementazioni semplici.

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

Page 35: 1 Argomenti della Giornata Nuova architettura di Webgate400 Nuova architettura di Webgate400 Implementazioni semplici Interfaccia Implementazioni semplici.

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

Page 36: 1 Argomenti della Giornata Nuova architettura di Webgate400 Nuova architettura di Webgate400 Implementazioni semplici Interfaccia Implementazioni semplici.

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

Page 37: 1 Argomenti della Giornata Nuova architettura di Webgate400 Nuova architettura di Webgate400 Implementazioni semplici Interfaccia Implementazioni semplici.

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

Page 38: 1 Argomenti della Giornata Nuova architettura di Webgate400 Nuova architettura di Webgate400 Implementazioni semplici Interfaccia Implementazioni semplici.

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

Page 39: 1 Argomenti della Giornata Nuova architettura di Webgate400 Nuova architettura di Webgate400 Implementazioni semplici Interfaccia Implementazioni semplici.

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

Page 40: 1 Argomenti della Giornata Nuova architettura di Webgate400 Nuova architettura di Webgate400 Implementazioni semplici Interfaccia Implementazioni semplici.

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

Page 41: 1 Argomenti della Giornata Nuova architettura di Webgate400 Nuova architettura di Webgate400 Implementazioni semplici Interfaccia Implementazioni semplici.

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

Page 42: 1 Argomenti della Giornata Nuova architettura di Webgate400 Nuova architettura di Webgate400 Implementazioni semplici Interfaccia Implementazioni semplici.

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

Page 43: 1 Argomenti della Giornata Nuova architettura di Webgate400 Nuova architettura di Webgate400 Implementazioni semplici Interfaccia Implementazioni semplici.

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

Page 44: 1 Argomenti della Giornata Nuova architettura di Webgate400 Nuova architettura di Webgate400 Implementazioni semplici Interfaccia Implementazioni semplici.

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

Page 45: 1 Argomenti della Giornata Nuova architettura di Webgate400 Nuova architettura di Webgate400 Implementazioni semplici Interfaccia Implementazioni semplici.

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

Page 46: 1 Argomenti della Giornata Nuova architettura di Webgate400 Nuova architettura di Webgate400 Implementazioni semplici Interfaccia Implementazioni semplici.

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

Page 47: 1 Argomenti della Giornata Nuova architettura di Webgate400 Nuova architettura di Webgate400 Implementazioni semplici Interfaccia Implementazioni semplici.

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

Page 48: 1 Argomenti della Giornata Nuova architettura di Webgate400 Nuova architettura di Webgate400 Implementazioni semplici Interfaccia Implementazioni semplici.

4848

…….fine…..fine….

Grazie a tutti dell’attenzione!Grazie a tutti dell’attenzione!

Progetto Getra Graphic