Startseite
Startseite

Startseite / Vorlagenentwicklung / Formulare / Eingabekomponenten (deprecated) / TABLIST

CMS_INPUT_TABLISTVerfügbar ab FirstSpirit-Version 3.0Verfügbar bis FirstSpirit-Version 5.0

Inhaltsverzeichnis
zum Beispiel
zu den Methoden: List<Entity>

CMS_INPUT_TABLIST

Die Eingabekomponente CMS_INPUT_TABLIST wird nur innerhalb der Datenbank-Verwaltung (nur im CS2) eingesetzt. Sie stellt eine komfortable Möglichkeit zur Bearbeitung von Datensatz-Listen zur Verfügung.

Hierbei werden Attribute der Liste als Beschriftung für die Karteikarten angezeigt, während die Bearbeitung der Attribute innerhalb der Karteikarte geschieht. Diese Bearbeitungsmaske wird mittels einer Vorlage festgelegt. Die verknüpften Datensätze können über die Eingabekomponente bearbeitet und gespeichert werden.

ACHTUNG: Das Attribut, welches als Beschriftung der Karteikarte angezeigt werden soll, darf nur eine Verknüpfung von der Datenbanktabelle entfernt sein, deren Inhalt auf der Karteikarte angezeigt werden soll.

Access-API Anwendungsbeispiel
Die Beispiel-Implementierung TabListEditorValueExample veranschaulicht einige einfache Anwendungsfälle für den Lesenden-, Schreibenden-, Erstellenden-Zugriff auf das Daten-Objekt (TabListEditorValue) und dessen innerer Daten-Container (TargetReference) der Eingabekomponente anhand der FirstSpirit Access-API.

name
Designator
Pflichtparameter
table
TableTemplateReference
Pflichtparameter
allowChoose
YesNo
Optionaler Parameter
allowEdit
YesNo
Optionaler Parameter
allowEmpty
YesNo
Optionaler Parameter
allowNew
YesNo
Optionaler Parameter
convertEntities
ConvertEntity
Optionaler Parameter
delete
YesNo
Optionaler Parameter
hFill
YesNo
Optionaler Parameter
hidden
YesNo
Optionaler Parameter
noBreak
YesNo
Optionaler Parameter
preset
Preset
Optionaler Parameter
sortOrder
SortOrder
Optionaler Parameter
tabAttribute
String
Optionaler Parameter
useLanguages
YesNo
Optionaler Parameter
lang
LanguageAbbreviation
Pflichtparameter
description
String
Optionaler Parameter
expression
String
Optionaler Parameter
label
String
Optionaler Parameter

Parameter

Der nachfolgenden Tabelle können die Parameter der Eingabekomponente TABLIST entnommen werden.

ParameterPflichtparameterSeitTypStandardwert
name*Ja3.1DesignatorKeiner
table*Ja3.0TableTemplateReferenceKeiner
allowChooseNein3.0YesNoYES
allowEditNein3.0YesNoYES
allowEmptyNein3.0YesNoYES
allowNewNein4.0YesNoNO
convertEntitiesNein2.0ConvertEntityNONE
deleteNein3.0YesNoNO
hFillNein2.0YesNoNO
hiddenNein4.0.44YesNoNO
noBreakNein2.0YesNoNO
presetNein4.0PresetDEFAULT
sortOrderNein4.0.56SortOrderKEEP_ORDER
tabAttributeNein3.0StringKeiner
useLanguagesNein2.0YesNoYES

name

Das Attribut "name" ist der Variablenname einer Eingabekomponente, mit dem in den Vorlagen - mit Hilfe von $CMS_VALUE()$ - das Ergebnisobjekt der Eingabekomponente verwendet oder der Inhalt ausgegeben werden kann.

ParameterPflichtparameterSeitTypStandardwert
name*Ja3.1DesignatorKeiner

table

Mit dem Parameter table wird die Referenz zur Tabellenvorlage angegeben.

Als Wert ist der eindeutige Bezeichner der Tabellenvorlage anzugeben.

Die Angabe der Referenz wird dafür benötigt, um festzulegen aus welcher Tabelle ausgewählt werden kann und welche Eingabekomponenten dargestellt werden sollen.

ParameterPflichtparameterSeitTypStandardwert
table*Ja3.0TableTemplateReferenceKeiner

allowChoose

Mit dem Parameter allowChoose kann festgelegt werden, ob in der Eingabekomponente bestehende Datensätze ausgewählt werden dürfen oder nicht.

Standardmäßig ist die Auswahl von Datensätzen möglich.

Wird allowChoose mit NO (allowChoose="NO") angegeben, so ist eine Auswahl nicht mehr möglich. Datensätze in der Eingabekomponente können dann nur über das Anlegen von neuen Datensätzen hinzugefügt werden.

Wichtig Wird allowChoose mit NO und allowNew (siehe unten) nicht angegeben, können neue Einträge angelegt werden.

ParameterPflichtparameterSeitTypStandardwert
allowChooseNein3.0YesNoYES

allowEdit

Mit dem Parameter allowEdit kann in der Eingabekomponente das Bearbeiten von Einträgen erlaubt oder aber unterbunden werden.

Wird der Parameter nicht angegeben, so können die Einträge bearbeitet werden.

Das Bearbeiten von Einträgen ist mit der Angabe NO (...allowEdit="NO"...) nicht möglich.

ParameterPflichtparameterSeitTypStandardwert
allowEditNein3.0YesNoYES

allowEmpty

Mit dem Parameter "allowEmpty" wird festgelegt, ob für eine Eingabekomponente ein Wert angegeben werden muss oder nicht.

Bei der Angabe von allowEmpty="YES" ist eine Eingabe nicht zwingend, bei allowEmpty="NO" jedoch schon.

Eingabekomponenten mit allowEmpty="NO" werden auch als Pflichteingabekomponenten bezeichnet.

Der Standardwert für allowEmpty ist YES.

ParameterPflichtparameterSeitTypStandardwert
allowEmptyNein3.0YesNoYES

allowNew

Mit dem Parameter allowNew kann das Anlegen von neuen Einträgen erlaubt oder aber unterbunden werden.

Wird der Parameter nicht angegeben, so können keine neuen Einträge angelegt werden.

Bei der Angabe von YES (...allowNew="YES"...) können neue Einträge angelegt werden.

Wichtig Wird allowNew nicht und allowChoose (siehe oben) mit NO angegeben, können neue Einträge angelegt werden.

ParameterPflichtparameterSeitTypStandardwert
allowNewNein4.0YesNoNO

convertEntities

Mit dem Attribut "convertEntities" werden Sonderzeichen, die in die Eingabekomponenten eingeben wurden, bei der Ausgabe in HTML-Zeichen umgewandelt.

Es gibt hier drei Ausprägungen:

  • convertEntities="NONE" (Standard)
  • convertEntities="STANDARD"
  • convertEntities="QUOTE"

Bei NONE werden keinerlei Konvertierungsregeln angewendet.

Wird STANDARD angegeben, so werden die Konvertierungsregeln angewendet, die im Bereich "convert" der ausgewählten Konvertierungsregel des Präsentationskanales stehen.

Die Angabe QUOTE schließt STANDARD explizit mit ein. Es wird jedoch zusätzlich der Bereich "quote" der Konvertierungsregel angewendet.

ParameterPflichtparameterSeitTypStandardwert
convertEntitiesNein2.0ConvertEntityNONE

delete

Durch den Parameter delete wird festgelegt, ob beim Löschen eines Datensatzes, die durch die entsprechende Eingabekomponente verknüpften Datensätze anderer Tabellen mit gelöscht werden oder nicht (Abhängiges Löschen).

Standardmäßig ist diese Funktionalität deaktiviert. Mit der Angabe von YES für den Parameter (delete="YES") lässt sich die Funktionalität aktivieren.

Wichtig Es ist darauf zu achten, dass beim Erstellen des Datenbankschemas in den Optionen der entsprechenden Fremdschlüsselbeziehungen das Abhängige Löschen aktiviert wurde. Ansonsten hat delete keine Auswirkungen.

ParameterPflichtparameterSeitTypStandardwert
deleteNein3.0YesNoNO

hFill

Die Anzeige einer Eingabekomponente erfolgt immer mit einer vordefinierten Breite.

Ist es aber gewünscht, dass die Eingabekomponente die volle zur Verfügung stehende Anzeigebreite nutzt, ist der Parameter hFill mit dem Wert YES anzugeben.

ParameterPflichtparameterSeitTypStandardwert
hFillNein2.0YesNoNO

hidden

Mit dem Parameter "hidden" kann eine Eingabekomponente für den Redakteur ausgeblendet werden.

Bei der Angabe von hidden="YES" wird die Eingabekomponente ausgeblendet, bei hidden="NO" nicht.

Der Standardwert für hidden ist NO, so dass Eingabekomponenten standardmäßig für den Redakteur sichtbar sind.

ParameterPflichtparameterSeitTypStandardwert
hiddenNein4.0.44YesNoNO

noBreak

Mit dem Parameter noBreak kann der automatische Zeilenumbruch nach einer Eingabekomponente unterdrückt werden.

Um den automatischen Zeilenumbruch zu unterdrücken, ist der Parameter noBreak mit dem Wert "YES" anzugeben (noBreak="YES").

ParameterPflichtparameterSeitTypStandardwert
noBreakNein2.0YesNoNO

preset

Mit dem Attribut preset kann festgelegt werden, wie Vorgabewerte in einer Eingabekomponente behandelt werden (vgl. dazu auch Kapitel Vorgabewerte). Wird preset="default" gesetzt, wird der im Formular definierte Rückgriffwert verwendet. Nachträgliche Änderungen im Formular an diesem Wert wirken sich auf alle Verwendungen in den vom Redakteur gepflegten Eingabekomponenten aus, solange bis ein manueller Wert in die Eingabekomponente gesetzt wird. Dies ist die Standardeinstellung. Wird preset="copy" gesetzt, wird der durch den Redakteur gewählte Wert "hart" in der Eingabekomponente gespeichert. Nachträgliche Änderungen am Vorgabewert im Formular wirken sich nicht aus.

ParameterPflichtparameterSeitTypStandardwert
presetNein4.0PresetDEFAULT

sortOrder

Mit dem Parameter sortOrder kann die Sortierreihenfolge der Einträge in der Eingabekomponente beeinflusst werden.

Für den Parameter können drei Schlüsselbegriffe verwendet werden:

  • sortOrder="KEEP_ORDER" (Standard)
  • sortOrder="ASCENDING"
  • sortOrder="DESCENDING"

Bei KEEP_ORDER wird die angegebene Reihenfolge der Einträge beibehalten.

Mit dem Wert ASCENDING werden die Einträge aufsteigend und bei DESCENDING absteigend alphabetisch sortiert.

ParameterPflichtparameterSeitTypStandardwert
sortOrderNein4.0.56SortOrderKEEP_ORDER

tabAttribute

Standardmäßig (ohne Angabe von tabAttribute und/oder expression) werden die Karteikarten der Eingabekomponente CMS_INPUT_TABLIST mit der ID des jeweiligen Datensatzes beschriftet. Mit tabAttribute können Attribute der über table definierten Tabelle für die Beschriftung herangezogen werden. tabAttribute erwartet als Wert dabei den Spaltennamen, wie er im Datenbank-Schema-Editor angegeben wurde und beispielsweise auf dem Register "Mapping" der jeweiligen Tabellenvorlage in den sprachabhängigen Spalten (DE, EN etc.) angezeigt wird, z. B. ...tabAttribute="name_DE"..., oder eine Fremdschlüsselbezeichnung.

Es ist keine sprachabhängige Beschriftung möglich: das in einer Sprache gewählte Attribut wird auch für alle anderen Sprachen angezeigt. Daher empfiehlt sich die Verwendung dieses Parameters in erster Linie bei sprachunabhängigen Einträgen. Für eine sprachabhängige Beschriftung sollte der Parameter expression verwendet werden (siehe unten).

Wichtig Es ist darauf zu achten, dass der Spaltenname korrekt angegeben wird und die Spalten auch tatsächlich in der angegebenen Tabelle vorhanden ist, da sonst ? als Beschriftung angezeigt wird. Ist für einen Datensatz die entsprechende Spalte nicht ausgefüllt, wird keine Beschriftung angezeigt.
Wichtig Wird tabAttribute angegeben, wird der Parameter expression (siehe unten) nicht ausgewertet.

ParameterPflichtparameterSeitTypStandardwert
tabAttributeNein3.0StringKeiner

useLanguages

Mit dem Parameter useLanguages kann festgelegt werden, ob eine Eingabekomponente für verschiedene Sprachen unterschiedliche bzw. abweichende Werte speichern soll oder nicht (mehrsprachige Pflege).

Wird der Parameter nicht angegeben so werden standardmäßig abweichende Werte für die verschiedenen Sprachen gespeichert.

Bei der Angabe von NO (...useLanguages="NO") wird ein Wert für alle Sprachen gespeichert.

ParameterPflichtparameterSeitTypStandardwert
useLanguagesNein2.0YesNoYES

LANGINFOSVerfügbar ab FirstSpirit-Version 4.0

Über das Tag LANGINFOS können für jede Eingabekomponente sprachabhängige Angaben definiert werden, z. B. wie die Eingabekomponente in den unterschiedlichen Projektsprachen betitelt sein soll (Parameter label), welcher Tooltip angezeigt werden soll (Parameter description) usw. Aus Gründen der Übersichtlichkeit werden dabei Definitionen, die in mehreren Sprachen identisch sind, zusammengefasst. So wird z. B. aus

 <LANGINFOS> 
<LANGINFO lang="*" label="Date" format="dd.MM.yy"/>
<LANGINFO lang="DE" label="Date" format="dd.MM.yy"/>
<LANGINFO lang="EN" label="Date" format="MM/dd/yy"/>
</LANGINFOS>

beim Speichern

 <LANGINFOS> 
<LANGINFO lang="*" label="Date" format="dd.MM.yy"/>
<LANGINFO lang="EN" label="Date" format="MM/dd/yy"/>
</LANGINFOS>

Die Definition für den Rückfallwert (*) bleibt dabei immer erhalten, von Definitionen für Sprachen mit gleichen Werten bleibt immer die oberste erhalten.

Ab FirstSpirit-Version 4.2R4 kann der Rückfallwert weggelassen werden. Dann wird beim Speichern automatisch die zuerst definierte Sprache als Rückfallwert verwendet, z. B. wird aus

<LANGINFOS>
<LANGINFO lang="EN" label="Date"/>
<LANGINFO lang="DE" label="Datum"/>
</LANGINFOS>

beim Speichern

 <LANGINFOS> 
<LANGINFO lang="*" label="Date"/>
<LANGINFO lang="DE" label="Datum"/>
</LANGINFOS>

LANGINFO

Mit dem Tag LANGINFO werden Werte oder Attribute für eine Sprache oder aber für die Verwendung als Rückfallwerte angegeben.

Um Werte bzw. Attribute für eine Sprache anzugeben ist im Parameter lang die Abkürzung der Projektsprache anzugeben:

...
<LANGINFO lang="DE".../>
...

Rückfallwerte werden mit dem speziellen Sprachkürzel * ("für alle Sprachen") angegeben:

...
<LANGINFO lang="*".../>
...

Bei dem Parameter lang handelt es sich um einen Pflichtparameter.

ParameterPflichtparameterSeitTypStandardwert
lang*Ja3.1LanguageAbbreviationKeiner
descriptionNein3.1StringKeiner
expressionNein4.0StringKeiner
labelNein3.1StringKeiner

lang

Mit dem Parameter lang wird das Sprachkürzel, das in den Servereigenschaften im Feld Abkürzung eingetragen ist (siehe Dokument ansehen FirstSpirit Handbuch für Administratoren, Kapitel "Sprach-Vorlagen"), angegeben, um festzulegen für welche Projektsprachen die Definitionen gelten sollen, z.B. DE für Deutsch, EN für Englisch, FR für Französisch usw. Folgende Zeichen können dabei beliebig oft angegeben werden: -, _, 0-9 und A-Z. Kleinbuchstaben werden nach dem Speichern der Vorlage automatisch in Großbuchstaben umgewandelt. Alternativ kann * für Rückfallwerte verwendet werden.

ParameterPflichtparameterSeitTypStandardwert
lang*Ja3.1LanguageAbbreviationKeiner

description

Mit dem Parameter description kann eine Beschreibung angegeben werden, die zur Anzeige eines Tooltipps (Mouse-Over) genutzt wird.

ParameterPflichtparameterSeitTypStandardwert
descriptionNein3.1StringKeiner

expression

Standardmäßig (ohne Angabe der Parameter tabAttribute und/oder expression) werden die Karteikarten der Eingabekomponente CMS_INPUT_TABLIST mit der ID des jeweiligen Datensatzes beschriftet. Mit expression können Werte aus der über table definierten Tabelle für eine dynamische Beschriftung herangezogen werden. Zusätzlich können über diesen Parameter in der Spaltenübersicht Werte einer Spalte aus einer Tabelle ausgegeben werden, die über einen Fremdschlüssel mit der Datenquelle verbunden ist.

Dazu stehen die Systemobjekte #item und #row zur Verfügung. Diese repräsentieren z. B. die anzuzeigende Datenbankzeile der über das den Parameter table definierten Tabellenvorlage. Eine Spalte der Datenbankzeile kann durch einen Punkt getrennt für die Beschriftung verwendet werden, wie z. B. im Beispiel #item.Headline_EN.

Weiterhin werden über den Ausdrucksmechanismus sprachspezifische Endungen automatisch gesetzt, sollten sie vorhanden sein, d. h. folgende Definition ist möglich:

<CMS_INPUT_TABLIST name="st_tablist" table="Products.jobs">
<LANGINFOS>
<LANGINFO lang="*" label="Land" expression="#item.JobTitle_EN"/>
</LANGINFOS>
</CMS_INPUT_TABLIST>
Wichtig Es ist darauf zu achten, dass der Spaltenname korrekt angegeben wird und die Spalten auch tatsächlich in der angegebenen Tabelle vorhanden ist, da sonst kein Wert in der Datenquellen-Übersicht angezeigt wird.

ParameterPflichtparameterSeitTypStandardwert
expressionNein4.0StringKeiner

label

Mit dem Parameter label wird die Oberflächenbeschriftung für Eingabe- und Visualisierungkomponenten angegeben.

ParameterPflichtparameterSeitTypStandardwert
labelNein3.1StringKeiner
Legende

TableTemplateReference

Eindeutiger Name einer Tabellenvorlage, darf nur die Zeichen "A-Z", "a-z", "0-9" und "_" enthalten, z.B. "fr_st_varName"

LanguageAbbreviation

Sprachkürzel, z.B. DE, EN, FR oder * für Rückfallwerte

YesNo

Schalter, um ein Attribut anzuwenden oder nicht

NOVerfügbar ab FirstSpirit-Version 2.0

Attribut nicht anwenden

YESVerfügbar ab FirstSpirit-Version 2.0

Attribut anwenden

String

Eine beliebige Zeichenkette

SortOrder

Schalter, um die Sortierreihenfolge der Einträge festzulegen

KEEP_ORDERVerfügbar ab FirstSpirit-Version 3.0

Sortierreihenfolge der Einträge beibehalten

ASCENDINGVerfügbar ab FirstSpirit-Version 3.0

Einträge aufsteigend alphabetisch sortieren

DESCENDINGVerfügbar ab FirstSpirit-Version 3.0

Einträge absteigend alphabetisch sortieren

Preset

Define the general preset modes.

DefaultVerfügbar ab FirstSpirit-Version 4.0

Retrieve default from definition, if no value is set.

CopyVerfügbar ab FirstSpirit-Version 4.0

Copy default from definition and save automatically.

ConvertEntity

Schalter, um die Konvertierungsregel festzulegen

NONEVerfügbar ab FirstSpirit-Version 2.0

Keine Konvertierungsregeln anwenden

STANDARDVerfügbar ab FirstSpirit-Version 2.0

Konvertierungsregeln des "convert"-Bereichs anwenden

QUOTEVerfügbar ab FirstSpirit-Version 2.1

Konvertierungsregeln des "convert"- und "quote"-Bereichs anwenden

Designator

Eindeutiger Bezeichner variabler Länge; muss mit einem Buchstaben oder Unterstrich beginnen und darf nur die Zeichen "A-Z", "a-z", "0-9" und "_" enthalten, z.B. "fr_st_varName"

Beispiel

Ein Beispiel für die Eingabekomponente "CMS_INPUT_TABLIST":

<CMS_INPUT_TABLIST useLanguages="NO" table="TABELLENVORLAGE" hFill="YES" name="BEZEICHNER">
<LANGINFOS>
<LANGINFO lang="*" label="TEXT" description="TEXT"/>
<LANGINFO lang="DE" label="TEXT" description="TEXT"/>
<LANGINFO lang="EN" label="TEXT" description="TEXT"/>
</LANGINFOS>
</CMS_INPUT_TABLIST>

© 2005 - 2014 e-Spirit AG | Alle Rechte vorbehalten. | Letzte Änderung: 2013-05-24