Dizionario Database Manuale Programmatore

Dizionario Database – Manuale Programmatore
Dizionario Database
Manuale Programmatore
Pagina 1
Dizionario Database – Manuale Programmatore
SOMMARIO
1
A chi è destinato .................................................................................................................. 3
2
3
Introduzione concettuale..................................................................................................... 3
Contenuti ............................................................................................................................. 3
3.1
Manutenzione Record Configurazione Applicazione ........................................................................................ 3
3.2
Manutenzione Dizionario ........................................................................................................................... 4
3.2.1
3.3
Manutenzione Campi ........................................................................................................................... 4
Routines per controllo formale, ricerca e decodifica campi .............................................................................. 5
3.3.1
API definite dall‟utente per il trattamento dei campi in Dizionario. .............................................................. 5
3.3.2
UDF WUF_DEC ................................................................................................................................... 6
3.3.3
Sintassi ............................................................................................................................................. 6
3.3.4
Descrizione dei parametri..................................................................................................................... 6
3.3.5
3.4
Pagina 2
Esempio ............................................................................................................................................ 6
FILE DECOD ............................................................................................................................................ 7
Dizionario Database – Manuale Programmatore
1 A CHI È DESTINATO
Ai programmatori che desiderano implementare funzioni automatiche di documentazione, controllo, ricerca e decodifica di
campi di database.
2 INTRODUZIONE CONCETTUALE
Webgate400 gestisce un dizionario campi progettato per potenziare le funzionalità dell‟interfaccia in generale e dei vari
applicativi configurabili dal cliente. (query e database links).
Il dizionario permette :

La definizione dei singoli campi

La definizione dei programmi atti a decodificare e ricercare il contenuto degli stessi

La definizione dei nomi “alias” utilizzati dalla applicazione in alternativa al nome principale del campo.
3 CONTENUTI
3.1 Manutenzione Record Configurazione Applicazione
È necessario codificare le applicazioni dell‟utente per associare i singoli campi del dizionario alla applicazione correlata.
I campi necessari sono quelli indicati nell‟esempio.
Codice : inserire un codice alfanumerico inferiore a 001 o superiore a 030 (quelli compresi tra questi due numeri sono
riservati).
Nome File Dizionario Campi : Indicare un nome file entro il quale verranno inseriti tutti i campi definiti per una specifica
applicazione utilizzando la apposita funzione di compilazione presente nel programma per la manutenzione del “Dizionario
Campi”.
Nome Libreria Files Originali : Inserire il nome della libreria entro la quale sarà posto il suddetto “File Dizionario Campi.
Lunghezza Nomi Campi : Inserire la lunghezza dei campi (usare 10 salvo l‟utilizzo di prefissi).
Confermando questo formato video, viene chiesta automaticamente la associazione della nuova applicazione ad uno o piu
progetti webgate400.
Pagina 3
Dizionario Database – Manuale Programmatore
3.2 Manutenzione Dizionario
Il dizionario campi è utile per unificare le nomenclature e le caratteristiche dei campi di database e/o utilizzati nei formati
video nonché per associare ai campi stessi alcune funzioni standard atte alla loro gestione.
Il presente elaborato consente, utilizzando il pulsante “Compila dizionario”, di ottenere un solo file contenente tutti i campi
utilizzati dalla applicazione.
Durante la creazione della dds per un file di database, è possibile :
-
accedere a queste definizioni utilizzando la keyword dds a livello di file REF per identificare il suddetto file di
dizionario.
-
nelle specifiche di campo, specificare il solo nome senza citare le altre caratteristiche che verranno importate dal
dizionario.
3.2.1 Manutenzione Campi
Per inserire un nuovo campo, è sufficiente porre il suo nome nel frame “Creazione Nuovo Campo” e premere ENTER.
Per ogni campo è possibile definire i campi visibili nell‟esempio di seguito.
-
Codice Applicazione
-
Nome Campo
-
Funzione (per la definizione principale, utilizzare il valore “D” (Definizione)).
-
Descrizione (Tradotta dal programma Compila Dizionario nella keyword dds TEXT)
-
Intestazione (Tradotta dal programma Compila Dizionario nella keyword dds COLHDG)
-
Tipo, Lunghezza, Posizioni Decimali
-
Nome Libreria e Programma Decodifica/Controllo (vedi il paragrafo relativo alle routines per il “Controllo
formale, ricerca e decodifica campi”).
-
Alias Inserire i nomi riferibili in termini di funzioni e contenuto al campo oggetto della definizione.
Pagina 4
Dizionario Database – Manuale Programmatore
3.3 Routines per controllo formale, ricerca e decodifica campi
3.3.1 API definite dall’utente per il trattamento dei campi in Dizionario.
Quando è necessario controllare, decodificare, ricercare un campo, WEBGATE400 richiama il programma indicato nel record
dizionario dello specifico campo (nell„esempio sopra RTXT01 nella libreria CLX). Questo accade per esempio nelle funzioni di
ricerca documenti via categorizzazione presente nella applicazione DATABASE LINKS oppure, utilizzando la funzione UDF
WUF_DEC utilizzabile nelle istruzioni SQL per decodificare i campi senza utilizzare Join.
Prossimamente le operazioni di controllo, decodifica e ricerca dei campi, saranno estese all‟uso dei filtri e oggetto di
specifiche funzioni che consentiranno di delegare al client webgate400 funzioni che ora sono sviluppate all‟interno del
programma RPG.
Di seguito si descrivono i parametri e le regole di funzionamento che i programmi definiti dall‟utente (come RTXT01)
devono seguire “esattamente” per garantire il comportamento previsto dalla applicazione webgate400.
3.3.1.1
Parametri
Nome
Lunghezza
Descrizione
P0XCODIN
20
Codice (Allineato a SX)
P0XDECOD
50
Decodifica (Allineato a SX)
P0XESITX
1
Esito controllo
E=Errore Decodifica
O
P0XSBJID
10
Identificatore Soggetto
(facoltativo) Si utilizza
quando una singola routine
dell‟utente tratta diversi
campi. E‟ utilizzata quindi per
diversificare i vari campi.
I
3.3.1.2
Valori Parametro
Input/Output
I/O
I/O!
Regole di funzionamento
La funzione di ricerca si attivata dalle seguenti condizioni :
1.
Se il campo P0XCODIN è in bianco ed il campo P0XDECOD non è in bianco oppure …
2.
Se il campo P0XCODIN contiene un ? (punto di domanda) alla prima posizione.
La funzione di decodifica e controllo è attivata dalla seguente condizione :
1.
Se il campo P0XCODIN non è in bianco.
Se P0XCODIN e P0XDECOD sono entrambi compilati, il campo P0XDECOD viene abblencato presumendo così la richiesta di
decodifica.
Se è richiesta la funzione di ricerca e questa ha avuto esito positivo, viene anche attivata la funzione di decodifica ed il
campo P0XDECOD viene quindi reso compilato.
Pagina 5
Dizionario Database – Manuale Programmatore
3.3.2 UDF WUF_DEC
Webgate400, dispone di alcune UDF (funzioni definite dall‟utente) che permettono di semplificare la sintassi delle istruzioni
SQL. Queste sono disponibili sia in ambiente webgate400 che in ambiente 5250 per qualunque istruzione sql eseguita.
NB L‟tilizzo delle UDF, qualora queste utilizzino archivi applicativi, prevede la corretta predisposizione della lista delle
librerie.
Per la decodifica dei campi descritti nel dizionari per i quali è definita la routine di controllo e decodifica è disponibile la UDF
descritta di seguito. Essa, rende un campo (colonna) contenente la decodifica del codice indicato.
3.3.3 Sintassi
WUF_DEC(CodiceApplicazione, Nome del campo nel dizionario, Campo Contenente il codice da decodificare).
3.3.4 Descrizione dei parametri
Codice Applicazione
Specificare il codice della applicazione (vedere codici applicazione nelle
funzioni gestionali di webgate)
Nome del campo nel dizionario
Specificar e il nome del campo da decodificare come descritto nel
dizionario campi.
Campo Contenente il codice da decodificare
Specificare il nome del campo che contiene il valore da decodificare.
3.3.5 Esempio
WUF_DEC(‘001’, ‘CODAR’, XCODAR)
Quindi la istruzione SQL descritta di seguito, renderebbe due colonne: Codice articolo e Decodifica articolo.
SELECT XCODAR, WUF_DEC(‘001’, ‘CODAR’, XCODAR) FROM CLBAS
Webgate400 a seguito di questa istruzione esegue i seguenti passi:
1.
aggancia il record di dizionario per il campo “CODAR”
2.
esegue il programma indicato (nel nostro caso RTXT01 passando nel parametro P0XCODIN il valore del campo
XCODAR
3.
riceve il valore ricavato dal parametro di output P0XDECOD descritto in precedenza.
Pagina 6
Dizionario Database – Manuale Programmatore
3.4 FILE DECOD
Il file DECOD contiene per ogni applicazione e per ogni campo che preveda una decodifica (per esempio un codice cliente, un
codice articolo, ecc.). tutti i valori possibili dello stesso e la relativa decodifica.
Questo file, la cui popolazione può essere effettuata a cura dell‟utente, è utilizzato dalla applicazione “Fast Query” e
“Database Links”.
Dalla applicazione Fast Query per esempio, è utilizzato sia per la decodifica automatica dei campi (senza gestire complicati
join con tabelle e database eterogenei) e per effettuare ricerche alfabetiche durante la valorizzazione dei campi utili per la
“Scelta Records”.
Formato Record
Nome
Campo
Descrizione
Tipo
Lunghezza
XNRR
Codice Applicazione (vedi paragrafo “Manutenzione Record Configurazione Applicazione“)
A
3
XDECAM
Nome Campo (vedi “Manutenzione Dizionario Campi / Pannelli”)
A
10
XDECOD
Codice
A
20
XDEDES
Decodifica
A
50
XDEHMO
Data-Ora Imm/Agg Record Decodifica Generale (formato HHMMSSGGMMAAAA)
P
14
Esempio contenuti file DECOD contenente codice e decodifica di vari campi.
XNRR
XDECAM
XDECOD
XDEDES
001
CAME1
07
PRODUTTORE ITALIA
1182006012006
001
CAME1
09
STAMPI C/TERZI ITALIA
1182006012006
001
CAME1
49
CLIENTI OCCASIONALI
1082006012006
001
CAUST
AA
CAUSALE DI PROVA AA
2142006022006
001
CAUST
RS
RIPARAZIONE STAMPO
2142006022006
001
CAUST
05
MENSA
2142006022006
001
CCL01
AAA
CLIENTE TOSTO 2
1102006012006
001
CCL01
002
CLASS. LIBERA CLIENTE 2
1082006012006
001
CCL02
001
CLASS. LIBERA 2 N.001
1082006012006
001
CCL02
002
CLASS. LIBERA 2 N.002
1082006012006
001
CCL03
002
CLAS .LIBERA 3 N. 002
1082006012006
001
CCL05
005
CLASS. LIBERA 5 N.005
1182006012006
001
CLASS
AD
MATERIE PER IMBALLAGGIO
1082006012006
001
CLASS
AF
DESCRIZIONE CLASSE AF
1082006012006
001
CLASS
AR
ARTICOLO FINITO
1082006012006
001
CODAN
C
A00001
CLIENTE DI PROVA MD
1082006012006
001
CODAN
C
000001
AVAGLIANO ANTONIO SRL.
2272008022008
001
CODAN
C
000002
TERMOSOL &SNC DI BOTTA
4172008042008
001
CODAR
A5
PRODOTTO MATERIA PRIMA A5
8022006082006
001
CODAR
A6
PRODOTTO MATERIA PRIMA A6
1132006012006
001
CODAR
A9
PRODOTTO MATERIA PRIMA
8222006082006
Pagina 7
XDEHMO