Prima di creare il proprio sito è preferibile leggere la documentazione:Prima di iniziare.
Questa funzione permette di gestire un insieme di elenchi di valori, dedicati ad un'applicazione XTEND, come completamento dei menù locali.
Un elenco di valori XTEND è associato a Token campo e funziona come un menù locale.
Ciascun elemento dell'elenco contiene:
Come per i menù locali, il valore è accessibile mediante il nome del Token campo e la descrizione aggiungendo il suffisso _DESCR al nome del campo.
Contrariamente ai menù locali, un elenco di valori è in grado di gestire dei dati gerarchici (struttura di categorie).
Il separatore delle categorie è il carattere /.
Gli elenchi di valori possono essere creati:
Gli elenchi di valori sono memorizzati nel file MEN.xml della directory che contiene il dizionario del sito XTEND (X_TEND/X_GEN/SITE/MEN.xml) tranne gli elenchi creati mediante elaborazioni batch che sono memorizzati in directory ben specifiche.
La parametrizzazione dipende dalla modalità di gestione dell'elenco.
Validare la scheda dopo averla registrata affinchè possa essere presa in considerazione dal server XTEND.
Forzare il ricaricamento del dizionario se i parametri "Verifica degli aggiornamenti" del sito non sono attivi.
Vedere la scheda Sito web.
L'elenco viene creato/modificato nel blocco grafico (DHTML) nela parte inferiore della videata.
Si crea il primo valore:
La cancellazione e modifica si effettuano mediante clic destro sul valore.
E' anche possibile costruire un elenco di valori partendo da un elenco esistente creato a partire da un messaggio X3, da una tabella diversa o da un elenco batch di cui si desidera modificare il contenuto.
In questo caso:
Si può in seguito modificare il contenuto come indicato qui sopra.
L'elenco manuale non è sincronizzato con l'elenco di origine.
Il riferimento all'elenco di origine (menù, tabella diversa...) si perde dopo aver passato il parametro gestione a Manuale.
Quando si aggiunge un valore, compare la seguente finestra.
Lo scopo di questa finestra è di inserire il valore e la descrizione dell'entrata.
Selezione della descrizione
Il programma di generazione del file MEN.xml, genera tante descrizioni quante sono le lingue che sono state definite per il sito.
Inserimento del valore
Valore: questo campo contiene di default l'indice del menù locale o il codice dell'entrata della tabella diversa utilizzata per la descrizione. Viene generalmente modificato per associare dei codici specifici quando si crea un nuovo elenco di valori.
Caso delle categorie gerarchiche
Il 'campo collegato' è vuoto di default. Contiene il campo dell'entità che corrisponde al livello di categoria al quale è collegato il valore, soltanto se è diverso da quello definito di default nel riquadro 'Campo di default (entità)'.
Vedere il paragrafo sulle categorie gerarchiche.
Tipo
Origine dell'elenco Messaggio o Tabella diversa
Capitolo
N° del capitolo
Tabella diversa
Codice della tabella diversa
Descrizione breve
Sì/No
Dipendenza
No per generare un elenco semplice.
Sì per generare un elenco gerarchico partendo dalle dipendenze tra tabelle diverse.
Il concatenamento delle dipendenze tra tabelle diverse è di tipo 'figli verso genitore', vale a dire che il parametro 'Tabella dipendenza' della scheda 'tabelle diverse' contiene il codice della tabella padre.
Per generare un elenco valore gerarchico partendo da una tabella diversa, è necessario partire dalla tabella padre.
Livello
Definisce la profondità della struttura, ovvero il numero di livelli di categorie autorizzate per l'elenco di valori.
L'elenco viene creato a partire da un programma batch.
Il formato del file creato mediante batch deve essere identico al formato del file dizionario MEN.xml.
Directory root
Directory root XTEND che contiene i file batch
Sono state definite quattro directory root per memorizzare dei file XTEND.
Le risorse (file, immagini...) di queste directory sono accessibili dal browser mediante i tokens 'immagine' o 'allegati'.
Design HTML e X_FILES possono trovarsi sul server X3 (default) oppure sul server di web services.
X_FILEAPP e X_TEND si trovano sempre sul server X3.
File
Percorso di accesso del file batch rispetto alla directory root.
Verifica aggiornamento
'Sì' per attivare la verifica periodica (ogni minuto) della data di ultima modifica del file batch.
I file batch sono ricaricati quando si ricarica il dizionario XTEND.
Come visto in precedenza, si creano degli elenchi di valori gerarchici, che vengono rappresentati sotto forma di struttura.
Si vedrà ora come gestire questa struttura di dati sotto forma di tokens nelle pagine HTML per gestire i menù di categorie gerarchiche.
Un menù di categorie gerarchiche è costituito da più ListBoxes visualizzati tramite un tag <select> i cui contenuti sono inter-dipendenti.
Si prendano come esempio le categorie seguenti, utilizzate per effettuare delle selezioni in un catalogo di autoveicoli:
Livello 1: Costruttore
Livello 2: Modello
Livello 3: Tipo SW o Berlina
Livello 4: Alimentazione Diesel o Benzina
I campi dell'entità autovettura che contengono i codici delle categorie dei livelli 1,2,3,4 sono rispettivamente CAT1,CAT2,CAT3 e CAT4.
La prima fase consiste nel creare l'elenco di valori che contene la struttura delle categorie:
Campo di default (Entità): elenco dei 'tokens campi' che contengono le informazioni sulla categoria.
Le entità XTEND che supporteranno questo sistema di categorie dovranno necessariamente includere i campi definiti nel riquadro 'Campi di default'.
Nell'esempio si inseriscono nell'ordine CAT1,CAT2,CAT3,CAT4 (Vedere paragrafo seguente).
Inserimento delle categorie: a ciascuna categoria viene associata una descrizione ed un codice categoria
N1 - Valore=REU - Descrizione=Renault
N2 - Valore=CLI - Descrizione=Clio
N3 - Valore=BRK - Descrizione=SW
N4 - Valore=DI - Descrizione=Diesel
N4 - Valore=ES - Descrizione=Benzina
N2 - Valeur=MEG - Descrizione=Megane
...
Il livello (1, 2, 3,4) della categoria corrisponde al range (1-N) nel riquadro 'Campo di default' e permette di accedere al nome del campo che contiene il valore.
Le entità XTEND (provenienti dai dati X3) che supportano le categorie gerarchiche devono includere dei campi che contengono le informazioni sulla categoria.
L'entità deve includere tanti campi categoria quanti sono i livelli di categorie (un campo per livello di categoria).
Nell'esempio l'entità AUTO deve includere quattro campi CAT1, CAT2, CAT3, CAT4 per memorizzare le categorie.
I campi categoria sono associati all'elenco di valori AUTOS che contiene la struttura delle categorie.
Questi campi devono essere definiti nel parametro riquadro 'Campo di default (Entità)' dell'elenco di valori.
Nell'esempio il riquadro contiene CAT1, CAT2, CAT3, CAT4.
Si è così definito un collegamento tra la struttura e l'entità XTEND tramite i campi categoria.
Per esprimere una categoria gerarchica si utilizza una sintassi di tipo path con il carattere / come separatore.
Per esempio /REU/CLI/BER, /PEU, /PEU/107.
Per memorizzare la categoria gerarchica nel formato path si utilizza un campo (di lavoro).
Questo campo di tipo testo è definito nel dizionario e gli si associa l'elenco di valori.
Il valore di tale campo è costruito da una funzione JavaScript in funzione dei criteri selezionati dall'utente poi inviato al server XTEND mediante un campo del form HTML.
Nell'esempio questo campo viene chiamato CATPATH.
Per effettuare la selezione sull'entità è necessario creare un token link dinamico ed aggiungere i criteri di selezione.
Si crea un criterio per campo categoria e si confronta il valore con quello del campo che contiene il 'path' della categoria.
Formula del token link dinamico:
CAT1 =web:CATPATH AND CAT2 =web:CATPATH AND CAT3 =web:CATPATH AND CAT4 =web:CATPATH
Per calcolare il valore del criterio il motore XTEND effettua il collegamento tra il livello del campo categoria (CAT1,CAT2...) e la posizione del valore nel 'path' della categoria.
Esempio per la categoria /REU/CLI/BER:
Al momento della valorizzazione dei criteri di selezione il motore XTEND effettua il seguente processo:
1. Lettura del valore del campo web CATPATH,
Questo campo contiene il path /REU/CLI/BER
2. Per ciascun criterio:
Il tutto si svolge come se il campo CATPATH contenesse un riquadro ordinato di categorie.
Questo paragrafo descrive come utilizzare nella pagina HTML:
I tokens XTEND permettono di elaborare queste due operazioni con poco codice JavaScript da sviluppare.
Qui di seguito, sono stati creati quatto box di selezione che corrispondono alle quattro categorie utilizzate per selezionare le autovetture.
HTML
<table>
<tr>
<td>
<select name="CATPATH1" adx="CATPATH:xlevel=1&xonchange=DLKSELECTAUTOS">
<option value="">Indifferente</option>
</select>
</td>
<td>
<select name="CATPATH2" adx="CATPATH:xlevel=2&xonchange=DLKSELECTAUTOS">
<option value="">Indifferente</option>
</select>
</td>
<td>
<select name="CATPATH3" adx="CATPATH:xlevel=3&xonchange=DLKSELECTAUTOS">
<option value="">IIndifferente</option>
</select>
</td>
<td>
<select name="CATPATH4" adx="CATPATH:xlevel=4&xonchange=DLKSELECTAUTOS">
<option value="">Indifferente</option>
</select>
</td>
</table>
Campo CATPATH: contiene il 'path' della categoria corrente (Es: REU/CLI per Renault/Clio)
'adx="CATPATH:xlevel=N': questa sintassi indica al motore XTEND che è necessario alimentare l'elenco delle opzioni con i valori della categoria corrispondenti al livello N di CATPATH:
Alla prima visualizzazione della pagina, CATPATH è vuoto ed è l'opzione 'Indifferente' ad essere visualizzata (value="").
'xonchange=DLKSELECTAUTOS': esegue il link dinamico DLKSELECTAUTOS non appena il valore del campo viene modificato.
Questo parametro evita di aggiungere un bottone <input type='button' adx="DLKSELECTAUTOS" value="Seleziona"> sul quale l'utente deve cliccare dopo aver modificato il criterio.
Le funzioni JavaScript qui di seguito permettono di calcolare il 'path' della categoria selezionata:
//-------------------------------------
//aObj è l'oggetto DOM (select) che è stato modificato
//--> nuova selezione
//Calcola il livello (wMaxLevel) della categoria in funzione del nome di aObj
//--> CATPATH1 fornisce il livello 1 - CATPATH2 fornisce il ivello 2 ...
//Calcola il path della categoria del livello 1 di wMaxLevel
//Reset dei campi di livello superiore a wMaxLevel
//Restituisce il path
function getCatCar(aObj)
{
var wCatPrefix="CATPATH";
var wCat="";
if (!aObj || !aObj.name) return wCat;
var wMaxLevel=parseInt(aObj.name.slice(wCatPrefix.length),10);
for( var i=0;i<wMaxLevel;i++)
{
var wVal=xtdGetFieldVal(wCatPrefix+(i+1));
if (wVal!="")
{
if (i>0) wCat+='/';
wCat+=wVal;
}
}
// Reset dei campi
for( var i=wMaxLevel;i<4;i++)
xtdSetField (wCatPrefix+(i+1),"");
return wCat;
}
//-------------------------------------
//xtdDoMyDlk è richiamato quando l'utente clicca su un link dinamico
function xtdDoMyDlk(aDomOut)
{
var wContinue=true;
//DLKSELECTAUTOS --> Modifica di un criterio di selezione
if (aDomOut.isClickedDynLink("DLKSELECTAUTOS"))
{
//Calcolo del path della categoria
var wCat=getCatCar(aDomOut.getDynLinkCtx().getHtmlElement());
//Aggiornamento del campo CATPATH che viene trasmesso al motore XTEND
//--> Vedere i criteri di selezione del link DLKSELECTAUTOS
xtdSetField("CATPATH",wCat);
}
return wContinue;
}
Non appena l'utente modifica una categoria, il link DLKSELECTAUTOS viene eseguito.
La funzione 'xtdDoMyDlk' permette di effettuare delle elaborazioni specifiche prima di sottoporre il form al server XTEND.
Questa funzione:
Al ritorno, il server avrà affettuato la nuova selezione e calcolato i nuovi valori dei criteri di selezione.
La funzione qui di seguito reinizializza i criteri di selezione e ricalcola la pagina.
<script>
function selAllCars(aObj)
{
xtdSelectSetVal("CATPATH1","");
xtdSelectSetVal("CATPATH2","");
xtdSelectSetVal("CATPATH3","");
xtdSelectSetVal("CATPATH4","");
xtdDoDlk(aObj,"DLKSELECTAUTOS");
}
</script>
<input type="button" value="Reset" onClick='javascript:selAllCars(this);'>
Campi
I seguenti campi sono presenti in questo folder :
Blocco numero 5
Blocco numero 1
| Codice dell'elenco di valori |
| Sito Web corrente. |
| Permette di definire una descrizione associata ad ogni scheda. |
|
Gestione automatica
| Metodo di lettura della descrizione: Messaggio: occorre indicare il capitolo ed il numero Tabella diversa: occorre indicare il codice della tabella diversa oltre ai campi supplementari. |
|
|   |
|
| Contrassegnare per visualizzare la descrizione breve. |
| No per generare un elenco semplice La struttura delle dipendenze tra tabelle diverse è di tipo 'figli verso genitore' vale a dire che il parametro 'Tabella dipendenza' della scheda 'tabella diverse' contiene il codice della tabella padre. Per generare un elenco valori gerarchico a partire da una tabella diversa bisogna partire dalla tabella padre. |
|
Gestione batch
|
|
|
Riquadro Campi di default (entità)
| Elenco dei 'token campi' che contengono le informazioni sulla categoria. L'ordine di inserimento corrisponde al livello di categoria. Ad esempio per le categorie di autovetture con i seguenti livelli di categorie: N1 - Marca (Campo CAT1) Si inseriscono i campi seguenti nel riquadro: CAT1 |
Riquadro Grafico riquadro
|   |
|   |
|
|
|
|
|
| Contrassegnare per visualizzare la descrizione breve. |
|   |
|
|
|   |
|   |
|   |
|   |
|   |
|   |
Chiudi
Funzioni accessibili tramite click destro sul riquadro
Chiudi
Questo bottone permette di copiare un elenco di valori |