Es empfiehlt sich, vor Anlage einer Site folgende Dokumentation zu konsultieren:Was vor Ausführung der Funktion zu beachten ist.
Mit dieser Funktion kann eine Reihe von Wertelisten verwaltet werden, die zusätzlich zu den Lokalen Menüs für eine XTEND-Applikation bestimmt sind.
XTEND-Wertelisten sind Field-Tokens zugeordnet und funktionieren wie Lokale Menüs.
Jedes Listenelement umfasst:
Analog zu den Lokalen Menüs ist der Wert über den Namen des Field-Tokens und die Bezeichnung zugänglich, wobei dem Feldnamen als Suffix _DESCR hinzugefügt wird.
Im Unterschied zu Lokalen Menüs können mit einer Werteliste hierarchisch strukturierte Daten verwaltet werden (Kategoriebaum).
Das Trennzeichen zwischen den Kategorien ist das Zeichen /.
Erfassung von Wertelisten:
Die Wertelisten werden in der Datei MEN.xml gespeichert, die im Verzeichnis des Dictionarys der XTEND-Site liegt (X_TEND/X_GEN/SITE/MEN.xml). Die einzige Ausnahme bilden die von der Batchverarbeitung angelegten Listen, die in ganz bestimmten anderen Verzeichnissen gespeichert werden.
Die Parameter richten sich nach dem Verarbeitungsmodus der Liste.
Damit das Datenblatt vom XTEND-Server berücksichtigt werden kann, muss es nach dem Speichern freigegeben werden.
Wenn die Parameter 'Prüfung der Aktualisierungen' der Site nicht aktiviert sind, muss das erneute Laden des Dictionarys erzwungen werden.
Siehe Datenblatt Website.
Die Liste wird im Grafikblock (DHTML) im unteren Maskenbereich angelegt / geändert.
Anlage des ersten Wertes:
Löschen und Änderungen per Rechtsklick auf den Wert
Eine Werteliste kann auf Basis einer bereits vorhandenen, ausgehend von einer X3-Meldung, einer Sonstigen Tabelle oder einer Batchliste angelegten Liste aufgebaut werden, deren Inhalt geändert werden soll.
In diesem Fall:
Im Anschluss daran können Sie den Listeninhalt wie oben beschrieben verändern.
Die manuelle Liste und die ursprüngliche Liste werden nicht synchronisiert.
Nachdem der Verwaltungsparameter auf Manuell gesetzt wurde, geht die Referenz auf die ursprüngliche Liste (Menü, Sonstige Tabelle etc.) verloren.
Beim Hinzufügen von Werten öffnet sich das folgende Fenster,
in dem der Wert sowie die Bezeichnung des Eintrags festgelegt werden können.
Bezeichnungsauswahl
Die Anzahl der von der Generierungsverarbeitung der Datei MEN.xml generierten Bezeichnungen entspricht der Anzahl von Sprachen, die für die Site definiert sind.
Werterfassung
Wert: Standardmäßig enthält dieses Feld den Index des Lokalen Menüs oder den Bezeichnungscode des Eintrags der Sonstigen Tabelle. Bei Anlage einer neuen Werteliste wird dieser Code im Allgemeinen geändert.
Fall: hierarchische Kategorien
Das 'verbundene Feld' ist standardmäßig leer. Es enthält das Feld derEntität der entsprechenden Kategorie. Diesem Feld wird der Wert nur dann zugeordnet, wenn er sich von dem in der Tabelle 'Standardfeld (Entität)' definierten Wert unterscheidet.
Siehe Absatz zu hierarchischen Kategorien.
Typ
Ursprung der Liste: Meldung oder Sonstige Tabelle
Kapitel
Kapitelnummer
Sonstige Tabelle
Code Sonstige Tabelle
Kurzbezeichnung
Ja / Nein
Abhängigkeit
Nein zur Generierung einer einfachen Liste
Ja zur Generierung einer hierarchischen Liste auf Basis der Abhängigkeiten zwischen den Sonstigen Tabellen
Die Verankerung der Abhängigkeiten zwischen den Sonstigen Tabellen ist vom Typ 'von den untergeordneten zur übergeordneten Tabelle' , d. h. der Parameter 'Abhängigkeitstabelle' des Datenblatts 'Sonstige Tabellen' enthält den Code der übergeordneten Tabelle.
Zur Generierung einer hierarchischen Werteliste auf Basis einer Sonstigen Tabelle ist von der übergeordneten Tabelle auszugehen.
Ebene
Tiefe der Baumstruktur, d. h. Anzahl der für die Werteliste zulässigen Kategorieebenen
Die Liste wird ausgehend von einer Batchverarbeitung angelegt.
Das Format der von dem Batch angelegten Datei muss dem Format der Dictionary-Datei MEN.xml entsprechen.
Wurzelverzeichnis
XTEND-Wurzelverzeichnis, in dem die Batchdateien liegen.
Zur Speicherung von XTEND-Dateien sind vier Wurzelverzeichnisse definiert.
Auf die Ressourcen (Dateien, Bilder etc.) dieser Verzeichnisse kann im Browser über die Tokens 'Bild' und 'Anlagen' zugegriffen werden.
HTML-Design und X-FILES können sich auf dem X3-Server (Standard) oder auf dem Webservice-Server befinden.
X_FILEAPP und X_TEND befinden sich immer auf dem X3-Server.
Datei
Zugriffspfad der Batchdatei relativ zum Wurzelverzeichnis
Aktualisierung prüfen
'Ja' zur Aktivierung der regelmäßigen Prüfung (minütlich) des letzten Änderungsdatums der Batchdatei.
Die Batchdateien werden beim erneuten Laden des XTEND-Dictionarys erneut geladen.
Wie zuvor beschrieben können hierarchische Wertelisten angelegt werden, die in Form von Baumdiagrammen dargestellt werden.
Im Folgenden wird nun gezeigt, wie eine solche Datenstruktur in Form von Tokens auf den HTML-Seiten zur Verwaltung hierarchischer Kategoriemenüs verwendet werden kann.
Hierarchische Kategoriemenüs bestehen aus mehreren ListBoxes mit voneinander abhängigen Inhalten. Diese ListBoxes werden über ein <select>-Tag angezeigt.
Als Beispiel können die folgenden zur Ausführung von Selektionen in einem Wagenkatalog verwendeten Kategorien dienen:
Ebene 1: Konstruktor
Ebene 2: Vorlage
Ebene 3: Typ Kombi oder Limousine
Ebene 4: Antrieb: Diesel oder Benziner
Die Felder der Entität AUTO, die die Kategoriecodes der Ebenen 1, 2, 3 und 3 enthalten sind jeweils CAT1, CAT2, CAT3 und CAT4.
Der erste Schritt ist das Anlegen einer Werteliste, die die Baumstruktur der Kategorien enthält:
Standardfeld (Entität): Liste der 'Field-Tokens', die die Kategoriedaten enthalten.
Die XTEND-Entitäten, die dieses Kategoriesystem unterstützen, müssen die in der Tabelle 'Standardfeld' definierten Felder enthalten.
In unserem Beispiel wird die Erfassung in der Reihenfolge CAT1, CAT2, CAT3, CAT4 vorgenommen (siehe folgender Absatz).
Kategorieerfassung: Jeder Kategorie werden eine Bezeichnung und ein Kategoriecode zugeordnet.
N1 - Wert = REU - Bezeichnung = Renault
N2 - Wert = CLI - Bezeichnung = Clio
N3 - Wert = BRK - Bezeichnung = Kombi
N4 - Wert = DI - Bezeichnung = Diesel
N4 - Wert = ES - Bezeichnung = Benziner
N2 - Wert = MEG - Bezeichnung = Megane
...
Die Ebene (1, 2, 3, 4) der Kategorie entspricht dem Rang (1-N) in der Tabelle 'Standardfeld' und ermöglicht es, auf den Namen des Feldes zuzugreifen, das den Wert enthält.
Die XTEND- Entitäten (aus den X3-Daten), die die hierarchischen Kategorien unterstützen, müssen Felder für die Kategoriedaten umfassen.
Die Anzahl von Kategoriefeldern in der Entität muss der Anzahl von Kategorieebenen entsprechen (ein Feld pro Kategorieebene).
In unserem Beispiel muss die Entität AUTO die vier Felder CAT1, CAT2, CAT3, CAT4 für die Kategorien enthalten.
Die Kategoriefelder sind der Werteliste AUTOS zugeordnet, in der die Baumstruktur der Kategorien enthalten ist.
Die Kategoriefelder müssen im Tabellenparameter 'Standardfeld (Entität)' der Werteliste definiert sein.
In unserem Beispiel enthält die Tabelle die Felder CAT1, CAT2, CAT3 und CAT4.
Auf diese Art wurde über die Kategoriefelder eine Beziehung zwischen der Baumstruktur und der XTEND-Entität definiert.
Zur Beschreibung einer hierarchischen Kategorie wird eine Syntax vom Typ path verwendet, wobei das Zeichen / als Trennzeichen dient.
Beispiel: /REU/CLI/BER, /PEU, /PEU/107.
Die hierarchische Kategorie im Format path wird in einem (Arbeits)feld gespeichert.
Dieses Feld vom Typ Text ist im Dictionary definiert, und es wird ihm die Werteliste zugeordnet.
Der Wert dieses Felds wird mit einer JavaScript-Funktion in Abhängigkeit der vom Benutzer gewählten Auswahlkriterien aufgebaut und dann über ein HTML-Formularfeld an den XTEND-Server gesendet.
In unserem Beispiel lautet der Name dieses Feldes CATPATH.
Um eine Auswahl aus der Entität treffen zu können, müssen ein Token des Typs dynamischer Link angelegt und die Auswahlkriterien hinzugefügt werden.
Pro Kategoriefeld wird ein Kriterium angelegt. Der Wert wird mit dem Wert des Feldes verglichen, das den 'Path' der Kategorie enthält.
Formel für das Token vom Typ dynamischer Link:
CAT1 =web:CATPATH und CAT2 =web:CATPATH und CAT3 =web:CATPATH und CAT4 =web:CATPATH
Um den Kriterienwert zu berechnen, stellt die XTEND-Engine die Beziehung zwischen dem Level des Feldes Kategorie (CAT1, CAT2, etc.) und der Position des Wertes im 'Path' der Kategorie her.
Hier ein Beispiel für die Kategorie /REU/CLI/BER:
Bei der Belegung der Auswahlkriterien führt die XTEND-Engine die folgenden Schritte aus:
1. Lesen des Wertes des Web-Feldes CATPATH,
das den Path /REU/CLI/BER enthält
2. Für jedes Kriterium:
Es wird so verfahren, als enthielte das Feld CATPATH eine sortierte Kategorietabelle.
In diesem Absatz wird beschrieben, wie dies in der HTML-Seite umzusetzen ist:
Mit den XTEND-Tokens können diese beiden Vorgänge mit einem minimalen Aufwand an zu programmierenden JavaScript-Code erledigt werden.
Nachstehend haben wir vier Auswahlboxen angelegt, die den zur Auswahl der Autos verwendeten vier Kategorien entsprechen.
HTML
<table>
<tr>
<td>
<select name="CATPATH1" adx="CATPATH:xlevel=1&xonchange=DLKSELECTAUTOS">
<option value="">Indifférent</option>
</select>
</td>
<td>
<select name="CATPATH2" adx="CATPATH:xlevel=2&xonchange=DLKSELECTAUTOS">
<option value="">Indifférent</option>
</select>
</td>
<td>
<select name="CATPATH3" adx="CATPATH:xlevel=3&xonchange=DLKSELECTAUTOS">
<option value="">Indifférent</option>
</select>
</td>
<td>
<select name="CATPATH4" adx="CATPATH:xlevel=4&xonchange=DLKSELECTAUTOS">
<option value="">Indifférent</option>
</select>
</td>
</table>
Feld CATPATH: enthält den PATH der aktuellen Kategorie (z. B.: REU/CLI für Renault/Clio)
'adx="CATPATH:xlevel=N': Mit dieser Syntax wird der XTEND-Engine gemeldet, dass die Optionsliste mit den Werten der Kategorie gefüllt werden muss, die CATHPATH, Level N, entsprechen:
Bei der ersten Anzeige der Seite ist CATPATH leer, und die Option 'Indifferent" wird angezeigt (Wert = "").
'xonchange=DLKSELECTAUTOS': führt den dynamischen Link DLKSELECTAUTOS aus, wenn der Feldwert geändert wird.
Mit diesem Parameter kann es vermieden werden, den Button <input type='button' adx="DLKSELECTAUTOS" value="Auswahl"> hinzuzufügen, auf den der Benutzer nach Änderung des Kriteriums klicken muss.
Mit nachstehenden JavaScript-Funktionen wird der 'Path' der gewählten Kategorie berechnet:
//-------------------------------------
//aObj ist das geänderte DOM-Objekt (select)
//--> neue Auswahl
//Berechnung des Levels (wMaxLevel) der Kategorie in Abhängigkeit des Namens von aObj
//--> CATPATH1 gibt das Level 1 zurück - CATPATH2 gibt das Level 2 zurück etc.
//Berechnung des Path der Kategorie des Levels 1 bis xMaxLevel
//Zurücksetzen der Felder mit höherem Level auf xMaxLevel
//Gibt den Path zurück
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;
}
}
// Zurücksetzen der Felder
for( var i=wMaxLevel;i<4;i++)
xtdSetField (wCatPrefix+(i+1),"");
return wCat;
}
//-------------------------------------
//xtdDoMyDlk wird aufgerufen, wenn der Benutzer auf den dynamischen Link klickt.
function xtdDoMyDlk(aDomOut)
{
var wContinue=true;
//DLKSELECTAUTOS --> Änderung eines Auswahlkriteriums
if (aDomOut.isClickedDynLink("DLKSELECTAUTOS"))
{
//Berechnung des Path der Kategorie
var wCat=getCatCar(aDomOut.getDynLinkCtx().getHtmlElement());
//Aktualisierung des Feldes CATPATH, das an die XTEND-Engine übertragen wird
//--> siehe Auswahlkriterien des Links DLKSELECTAUTOS
xtdSetField("CATPATH",wCat);
}
return wContinue;
}
Sobald der Benutzer eine Kategorie ändert, wird der Link DLKSELECTAUTOS ausgeführt.
Mit der Funktion 'xtdDoMyDlk' werden Sonderverarbeitungen ausgeführt, bevor das Formular dem XTEND-Server vorgelegt wird.
Diese Funktion:
Auf dem Server werden dann die neue Auswahl vorgenommen und die neuen Auswahlkriterien berechnet.
Nachstehende Funktion initialisiert die Auswahlkriterien neu und führt eine Neuberechnung der Seite aus.
<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);'>
Felder
In diesem Register befinden sich die folgenden Felder :
Blocknummer 5
Blocknummer 1
| Code der Werteliste |
| Aktuelle Website. |
| Ermöglicht die Definition einer Bezeichnung für jeden Datensatz. |
| Erfassung von Wertelisten:
|
Automatische Verwaltung
| Leseverfahren der Bezeichnung: Nachricht: das Kapitel und die Nummer müssen angegeben werden Sonstige Tabelle: der Code der sonstigen Tabelle und die zusätzlichen Felder müssen angegeben werden. |
| Kapitelnummer |
|   |
| Code Sonstige Tabelle |
| Auswählen, um die Kurzbezeichnung anzuzeigen. |
| Nein zur Generierung einer einfachen Liste Die Verankerung der Abhängigkeiten zwischen den Sonstigen Tabellen ist vom Typ 'von den untergeordneten zur übergeordneten Tabelle' , d. h. der Parameter 'Abhängigkeitstabelle' des Datenblatts 'Sonstige Tabellen' enthält den Code der übergeordneten Tabelle. Zur Generierung einer hierarchischen Werteliste auf Basis einer Sonstigen Tabelle ist von der übergeordneten Tabelle auszugehen. |
| Tiefe der Baumstruktur, d. h. Anzahl der für die Werteliste zulässigen Kategorieebenen |
Verwaltung Batch
| Wurzelverzeichnis, das die Batchdateien enthält, die aus den XTEND-Standardverzeichnissen ausgewählt werden müssen (Siehe Dokumentation der Funktion). |
| Zugriffspfad der Batchdatei relativ zum Wurzelverzeichnis |
| Ja zur Aktivierung der regelmäßigen Prüfung (minütlich) des letzten Änderungsdatums der Batchdatei. Die Batchdateien werden beim erneuten Laden des XTEND-Dictionarys erneut geladen. |
Tabelle Standardfeld
| Liste der 'Feld-Tokens', die die Kategorieinformationen enthalten. Die Erfassungsreihenfolge entspricht der Kategorieebene. Zum Beispiel für die Automobilkategorien mit den folgenden Kategorieebenen: N1 - Hersteller (Feld KAT1) Die folgenden Felder werden in der Tabelle erfasst: KAT1 |
Tabelle Grafik
|   |
|   |
| Lesemethode der Bezeichnung |
| Bezeichnungsdaten (Kapitelcode) |
| Bezeichnungs-Daten (Nr.) |
| Bezeichnungs-Daten. Code Sonstige Tabelle. |
| Bezeichnungs-Daten |
| Auswählen, um die Kurzbezeichnung anzuzeigen. |
|   |
| Standardmäßig enthält dieses Feld den Index des Lokalen Menüs oder den Bezeichnungscode des Eintrags der Sonstigen Tabelle. Bei Anlage einer neuen Werteliste wird dieser Code im Allgemeinen geändert. |
| Standardmäßig leer Es enthält das Feld der Entität der entsprechenden Kategorie. Diesem Feld wird der Wert nur dann zugeordnet, wenn er sich von dem in der Tabelle 'Standardfeld (Entität)' definierten Wert unterscheidet. Siehe § Hierarchiekategorien Zum Beispiel für die Automobilkategorien mit den folgenden Kategorieebenen: N1 - Hersteller (Feld KAT1) Für ein Fahrzeugmodell, das nur einen Typ hat (wie ein Twingo von Renault), entspricht die Ebene 3 der Kategorie 'Energie' (Ebene 4 für Standardfahrzeuge). In diesem Fall wird KAT4 im Feld 'Verknüpftes Feld' und 'ES' (Benzin) im Wert erfasst. |
|   |
|   |
|   |
|   |
|   |
|   |
Schließen
Symbol Aktionen
Schließen
Mit diesem Button kann eine Werteliste kopiert werden. |