Startseite / Vorlagenentwicklung / Vorlagensyntax / Datentypen / DatasetContainer

Datentyp DatasetContainerVerfügbar ab FirstSpirit-Version 4.2

Wertebereich des Datentyps DatasetContainer

Für die Bearbeitung von Werten, die strukturierte Daten aus der Datenquellen-Verwaltung von FirstSpirit repräsentieren, stellt FirstSpirit den Datentyp DatasetContainer zur Verfügung. Der Datentyp DatasetContainer stellt eine logische Gruppierung einer Entität (Datentyp Entity) aus einer Datenbank und der zugehörigen Tabellenvorlage aus einem FirstSpirit-Projekt dar.

Weitere Informationen zum Datentyp DatasetContainer siehe API-Dokumentation:

de.espirit.firstspirit.access.editor.value.DatasetContainer

Definition über die Standard-Eingabekomponenten

Über die Eingabekomponente FS_DATASET wird ein Datensatz aus der Datenquellen-Verwaltung referenziert. Diese Eingabekomponente liefert dann beim Zugriff auf den gespeicherten Wert mithilfe einer $CMS_VALUE(...)$-Anweisung den Datentyp DatasetContainer zurück.

DatasetContainer programmatisch erstellen

Um programmatisch ein neues DatasetContainer-Objekt zu erstellen, das eine bestimmte Entität enthält, können die Methoden des Unterobjekts Factory verwendet werden. Dieser neue DatasetContainer kann daraufhin als Wert einer FS_DATASET-Komponente zugewiesen werden.

Die Methoden des Factory-Objekts sind in der API-Dokumentation aufgeführt: de.espirit.firstspirit.access.editor.value.DatasetContainer.Factory

Zur Erstellung eines DatasetContainer wird zunächst ein neues Objekt vom Typ DatasetContainer.Factory instanziiert. Mittels der Methoden create(...) dieses Objekts können entweder ein Datensatz oder eine Entität und eine Tabellenvorlage sowie eine Projektsprache verwendet werden, um ein neues, mit diesen Elementen konfiguriertes DatasetContainer-Objekt zu erstellen, das schließlich dem Formular-Feld einer FS_DATASET-Eingabekomponente zugewiesen wird:

//!Beanshell

import de.espirit.firstspirit.access.store.Store;
import de.espirit.firstspirit.access.editor.value.DatasetContainer;
import de.espirit.firstspirit.access.editor.value.DatasetContainer.Factory;

// Setup
element = context.getElement();
userService = context.getUserService();
projectLanguage = context.getProject().getMasterLanguage();

// Obtain an entity from the Content Store
contentStoreRoot = userService.getStore(Store.Type.CONTENTSTORE);
dataSource = contentStoreRoot.getContent2ByName("myDataSourceUID");
tableTemplate = dataSource.getTemplate();
entity = dataSource.getData().get(0);

//
// Create new DatasetContainer object and assign it to an FS_DATASET input component
//

// Prepare the store element for editing and obtain form data
element.setLock(true, false);
formData = element.getFormData();
fsDatasetField = formData.get(projectLanguage, "fsDatasetComponentLabel");

// Use DatasetContainer.Factory to create a new DatasetContainer with the entity we've obtained earlier
DatasetContainer.Factory datasetContainerFactory = new DatasetContainer.Factory();
DatasetContainer newDatasetContainer = datasetContainerFactory.create(entity, tableTemplate, projectLanguage);

// Assign the new DatasetContainer to the FS_DATASET field and save the store element
fsDatasetField.set(newDatasetContainer);
element.setFormData(formData);
element.save();
element.setLock(false);
element.refresh();

Methoden auf DatasetContainer-Objekten

In der unten angegebenen Tabelle werden alle Methoden aufgelistet, die auf Objekten von Datentyp DatasetContainer aufgerufen werden können:

Objekt wird von folgenden Formular-Objekten erzeugt:
FS_DATASET
Methodenname Rückgabetyp Kurzbeschreibung Verfügbar seit
equals(Object) boolean
getClass Class Klasse des aufrufenden Objektes
getDataset Dataset The stored dataset - may be null 4.2
getGid UUID The gid of the entity 5.0.307
getKey KeyValue The key value of the entity. 4.2
getLanguage Language The language for which this value is stored. 4.2
getTemplateUid String The uid of the template. 4.2
isCase(Object) boolean
isEmpty boolean Shortcut for getDataset() == null. 4.2
isNull boolean Prüft, ob ein Ausdruck Null ist
print void
set(String, Object) Object
toJSON String Convert to a JSON-compatible string representation including necessary quotes and escaping for immediate use. Handles Maps, Collections, Arrays, Numbers, Strings, Boolean, Date, and JsonElement. A date instance will be converted to an ISO-8601 formatted date string. Any object other than above will be converted using its 'toString()' value. 5.2.11
toString String
type String

equals(Object)

Methodenname Rückgabetyp Verfügbar seit
equals(Object) boolean

getClass

Die Methode .getClass() (in Bean-Syntax: .class) liefert die Klasse des aufrufendes Objektes zurück (vgl. java.lang.Class).

Aufruf:

$CMS_VALUE(myString.class)$
$CMS_VALUE(myString.getClass())$

Ausgabe:

java.lang.String
Methodenname Rückgabetyp Verfügbar seit
getClass Class

getDataset

The stored dataset - may be null
Methodenname Rückgabetyp Verfügbar seit
getDataset Dataset 4.2

getGid

The gid of the entity
Methodenname Rückgabetyp Verfügbar seit
getGid UUID 5.0.307

getKey

The key value of the entity.
Methodenname Rückgabetyp Verfügbar seit
getKey KeyValue 4.2

getLanguage

The language for which this value is stored.
Methodenname Rückgabetyp Verfügbar seit
getLanguage Language 4.2

getTemplateUid

The uid of the template.
Methodenname Rückgabetyp Verfügbar seit
getTemplateUid String 4.2

isCase(Object)

Methodenname Rückgabetyp Verfügbar seit
isCase(Object) boolean

isEmpty

Shortcut for getDataset() == null.
Methodenname Rückgabetyp Verfügbar seit
isEmpty boolean 4.2

isNull

Die Methode .isNull() (in Bean-Syntax: .isNull) prüft, ob ein Ausdruck bzw. Objekt Null ist, z. B. storeElement.isNull(). Bei Objekten mit komplexen Werten oder Objekten entscheidet das Objekt, wann es null ist. Der Datentyp DomElement enthält beispielsweise immer ein leeres Dokument, ist also nie null. Die Prüfung einer leeren DOM-Editor-Eingabekomponente mit der Methode .isNull() liefert daher den Wert false, während die Prüfung der Komponente auf .isEmpty() den Wert true liefern würde.

Die Methode .isNull() gibt einen booleschen Wert als Ergebnis der Prüfung zurück. true (=wahr) ist die Prüfung, wenn der Ausdruck bzw. das Objekt Null ist und false (=unwahr) wenn nicht.

Methodenname Rückgabetyp Verfügbar seit
isNull boolean

print

Methodenname Rückgabetyp Verfügbar seit
print void

set(String, Object)

Methodenname Rückgabetyp Verfügbar seit
set(String, Object) Object

toJSON

Convert to a JSON-compatible string representation including necessary quotes and escaping for immediate use. Handles Maps, Collections, Arrays, Numbers, Strings, Boolean, Date, and JsonElement. A date instance will be converted to an ISO-8601 formatted date string. Any object other than above will be converted using its 'toString()' value.
Methodenname Rückgabetyp Verfügbar seit
toJSON String 5.2.11

toString

Methodenname Rückgabetyp Verfügbar seit
toString String

type

Methodenname Rückgabetyp Verfügbar seit
type String

© 2005 - 2024 Crownpeak Technology GmbH | Alle Rechte vorbehalten. | FirstSpirit 2024.2 | Datenschutz